Welcome to the PR triage page! This page is perfect if you intend to look for pull request which seem to have stalled.
Feedback on designing this page or further information to include is very welcome.
These are triage-oriented views, not the main review queue. Updating a PR may remove it from one of these lists, but does not remove it from the review queue unless the PR's status changes out of awaiting review.
| 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 |
594-18051 1 year ago |
643-82853 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 |
594-18050 1 year ago |
834-7946 834 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 |
594-18049 1 year ago |
868-69946 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 |
594-18049 1 year ago |
648-34557 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 |
594-18048 1 year ago |
866-4048 866 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 |
580-11593 1 year ago |
706-20430 706 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-60838 1 year ago |
639-50424 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-60697 1 year ago |
703-77638 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-60596 1 year ago |
661-70580 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-81750 1 year ago |
610-1572 610 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-84024 1 year ago |
691-75652 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 |
533-32689 1 year ago |
533-32689 533 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 |
496-28155 1 year ago |
496-28155 496 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 |
476-4910 1 year ago |
476-4910 476 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-67387 1 year ago |
473-67387 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 |
462-33056 1 year ago |
462-33056 462 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-49230 1 year ago |
434-49230 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-80262 1 year ago |
427-80262 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-67292 1 year ago |
425-67292 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 |
413-5149 1 year ago |
413-5149 413 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-77570 1 year ago |
376-77570 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-48997 1 year ago |
372-48997 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-48729 1 year ago |
551-14679 551 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 |
365-13425 1 year ago |
365-13425 365 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-85972 11 months ago |
341-85973 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-85970 11 months ago |
341-85972 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 |
336-24536 11 months ago |
336-24538 336 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-55829 11 months ago |
584-7759 584 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-55605 11 months ago |
540-8752 540 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 |
329-12446 10 months ago |
342-23087 342 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-75621 10 months ago |
326-75623 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-64318 10 months ago |
326-64319 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-47868 10 months ago |
318-47870 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-80850 10 months ago |
323-57883 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-71068 9 months ago |
293-71070 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 |
283-7495 9 months ago |
283-7497 283 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-85636 8 months ago |
502-83535 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-85634 8 months ago |
502-85178 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-85633 8 months ago |
502-85820 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-67924 8 months ago |
506-7740 506 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 |
255-32584 8 months ago |
255-32584 255 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 |
255-32338 8 months ago |
255-32339 255 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 |
255-32026 8 months ago |
255-32026 255 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-83855 8 months ago |
253-83856 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 |
252-13404 8 months ago |
252-13404 252 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 |
225-10666 7 months ago |
255-32335 255 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-48019 7 months ago |
223-48019 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-80522 7 months ago |
217-80523 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-80151 7 months ago |
217-80152 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 |
216-8375 7 months ago |
216-8376 216 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-49571 7 months ago |
215-49571 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-53051 6 months ago |
209-53052 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-82177 6 months ago |
207-82178 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 |
207-1848 6 months ago |
336-16853 336 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-49493 6 months ago |
206-49494 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 |
206-28813 6 months ago |
229-4735 229 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 |
206-28767 6 months ago |
215-80211 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-77045 6 months ago |
229-4736 229 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-33979 6 months ago |
201-33980 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-80325 6 months ago |
189-80326 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-75364 6 months ago |
245-18659 245 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 |
189-2815 6 months ago |
246-24127 246 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-83076 6 months ago |
188-83077 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-33709 6 months ago |
185-33710 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 |
183-8920 6 months ago |
183-8921 183 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 |
174-20517 5 months ago |
174-20518 174 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-82027 5 months ago |
252-81964 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-72109 5 months ago |
168-72110 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 |
168-5111 5 months ago |
263-12395 263 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 |
167-8336 5 months ago |
259-17508 259 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-76451 5 months ago |
334-48824 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-78582 5 months ago |
155-78583 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-55180 4 months ago |
132-55181 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-83784 4 months ago |
124-83784 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 |
118-20043 3 months ago |
118-20044 118 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 |
118-19871 3 months ago |
118-19872 118 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 |
118-19703 3 months ago |
118-19704 118 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 |
118-19349 3 months ago |
118-19350 118 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 |
118-19044 3 months ago |
118-19045 118 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 |
118-18891 3 months ago |
118-18892 118 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 |
118-18853 3 months ago |
118-18854 118 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 |
118-18257 3 months ago |
118-18258 118 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 |
118-13278 3 months ago |
118-13279 118 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-78602 3 months ago |
787-83355 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-78555 3 months ago |
801-83533 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-78513 3 months ago |
768-47257 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-77905 3 months ago |
252-16514 252 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-38272 3 months ago |
334-47022 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-51056 3 months ago |
113-605 113 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-72457 2 months ago |
158-78753 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-53131 2 months ago |
68-53132 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-42991 2 months ago |
68-42992 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-80377 2 months ago |
205-58330 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-63044 2 months ago |
62-63045 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-81908 2 months ago |
59-81909 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-81695 2 months ago |
239-58835 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 |
58-7077 1 month ago |
160-11981 160 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-72856 1 month ago |
95-75552 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-72701 1 month ago |
127-37746 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-35276 1 month ago |
255-33500 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 |
36-12730 1 month ago |
255-35971 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-67150 1 month ago |
32-67151 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-43761 1 month ago |
89-31150 89 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 |
30-12555 1 month ago |
81-66780 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-79146 1 month ago |
177-1214 177 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-74872 1 month ago |
29-74872 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-71387 1 month ago |
538-7895 538 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-69054 1 month ago |
70-61439 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-49000 27 days ago |
27-49001 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-48999 27 days ago |
27-48999 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 |
27-26633 27 days ago |
27-26634 27 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 |
27-6503 27 days ago |
27-6504 27 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 |
22-23401 22 days ago |
22-23401 22 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 |
21-8522 21 days ago |
21-8523 21 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-51056 20 days ago |
20-51057 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-60135 17 days ago |
17-60135 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 |
15-4316 15 days ago |
214-76126 214 days ago |
10-67838 10 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 |
11-3421 11 days ago |
585-67991 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 |
11-3409 11 days ago |
271-3148 271 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-83031 10 days ago |
14-45049 14 days ago |
16-30995 16 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-60251 7 days ago |
22-68845 22 days ago |
22-69297 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 |
6-25646 6 days ago |
28-19089 28 days ago |
28-19075 28 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 |
6-25634 6 days ago |
11-54647 11 days ago |
11-54200 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-81566 3 days ago |
4-38760 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-74512 2 days ago |
118-19187 118 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 |
1-16657 1 day ago |
24-10183 24 days ago |
28-4214 28 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 |
1-16651 1 day ago |
9-80157 9 days ago |
9-83078 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-79397 22 hours ago |
24-14110 24 days ago |
24-16849 24 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-53616 14 hours ago |
1-36581 1 day ago |
10-24061 10 days |
| 36701 |
kim-em author:kim-em |
feat(DefEqAbuse): detect and report leaky instance binder types |
This PR adds `#check_instance` and `checkInstance` to `Mathlib/Tactic/FastInstance.lean` to diagnose individual instances for leaky data-field binder types, and integrates this into `#defeq_abuse` so it automatically reports leaky instances.
A new `withDisabledInstance` helper temporarily evicts an instance from the discrimination tree (via `Attribute.erase` + `withoutModifyingEnv`), allowing `makeFastInstance` to compute the canonical form without `trySynthInstance` trivially finding the instance being checked.
`#defeq_abuse` now checks instances used in the failing goal/command for leakiness and reports them alongside the isDefEq failure diagnostics.
**Example: `#check_instance`**
```lean
def MyNat := ℕ
-- Without fast_instance%, the `add` field has binder type ℕ rather than MyNat.
instance leakyAdd : Add MyNat := ⟨Nat.add⟩
#check_instance leakyAdd
-- ❌ 'leakyAdd': leaky binder types detected.
-- The data field `add` has binder type ℕ where MyNat is expected.
-- The `fast_instance%` elaborator may be useful as a repair or band-aid:
-- `instance : ... := fast_instance% `
instance fixedAdd : Add MyNat := fast_instance% ⟨Nat.add⟩
#check_instance fixedAdd
-- ✅ 'fixedAdd': canonical (re-inferred form agrees at instances transparency)
```
🤖 Prepared with Claude Code |
LLM-generated
merge-conflict
|
316/80 |
Mathlib/Tactic/DefEqAbuse.lean,Mathlib/Tactic/FastInstance.lean,MathlibTest/CheckInstance.lean,MathlibTest/DefEqAbuse.lean |
4 |
15 |
['eric-wieser', 'github-actions', 'kim-em', 'mathlib-merge-conflicts'] |
nobody |
0-25052 6 hours ago |
1-14431 1 day ago |
1-30263 1 day |
| 36709 |
kim-em author:kim-em |
feat(DefEqAbuse): suggest minimal @[implicit_reducible] workaround |
This PR extends `#defeq_abuse` to suggest a minimal set of `@[implicit_reducible]` annotations that would make the failing tactic or command succeed with `backward.isDefEq.respectTransparency true`.
When `#defeq_abuse` detects a failure, it now runs a greedy minimisation over semireducible definitions reachable from the goal/command, finding a (possibly non-unique) minimal subset that, when temporarily marked `@[implicit_reducible]`, fixes the issue. The result is reported as an `info` message:
```
info: Workaround: the following @[implicit_reducible] annotations (a possibly non-unique minimal set) would paper over this problem,
but the real issue is likely a leaky instance somewhere.
set_option allowUnsafeReducibility true
attribute [implicit_reducible]
MyPred
```
This is a workaround, not a fix — the real cause is usually a leaky instance (which `#check_instance` from https://github.com/leanprover-community/mathlib4/pull/36706 can diagnose). But it can be useful for quick debugging.
New helpers: `collectCandidates`, `markImplicitReducible`, `withTempImplicitReducible`, `withTempImplicitReducibleCmd`, `suggestAnnotationsTac`, `suggestAnnotationsCmd`, `formatAnnotations`, `logAnnotationSuggestions`.
🤖 Prepared with Claude Code |
t-meta
LLM-generated
merge-conflict
|
156/0 |
Mathlib/Tactic/DefEqAbuse.lean,MathlibTest/DefEqAbuse.lean |
2 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-25050 6 hours ago |
1-24669 1 day ago |
1-27558 1 day |
| 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 |
579-10441 1 year ago |
609-57423 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-81750 1 year ago |
610-1572 610 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 |
562-7240 1 year ago |
613-14762 613 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-56585 1 year ago |
593-15844 593 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-67644 1 year ago |
626-56591 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-63622 1 year ago |
546-5296 546 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-63622 1 year ago |
546-5297 546 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-63621 1 year ago |
546-1047 546 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 |
521-23772 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-86279 1 year ago |
661-68377 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 |
496-28155 1 year ago |
496-28155 496 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-70676 1 year ago |
529-59988 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 |
489-23108 1 year ago |
503-9296 503 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-45525 1 year ago |
486-6907 486 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-67537 1 year ago |
518-59107 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 |
425-223 1 year ago |
546-11384 546 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-52542 1 year ago |
464-52155 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 |
421-13722 1 year ago |
421-13722 421 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-74201 1 year ago |
425-41602 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 |
413-5149 1 year ago |
413-5149 413 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-48859 1 year ago |
407-13376 407 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-82958 1 year ago |
403-8180 403 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-51729 1 year ago |
390-51729 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-33980 1 year ago |
436-56464 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-77570 1 year ago |
376-77570 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-73396 1 year ago |
551-76625 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 |
350-22395 11 months ago |
375-51351 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 |
345-17384 11 months ago |
538-81155 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 |
342-3304 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-85972 11 months ago |
341-85973 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 |
341-2300 11 months ago |
415-80900 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-59898 10 months ago |
416-70366 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-56030 10 months ago |
413-47003 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 |
318-20469 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-53148 10 months ago |
584-76333 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 |
310-12327 10 months ago |
310-12327 310 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-71068 9 months ago |
293-71070 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-43021 9 months ago |
666-70674 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-35574 9 months ago |
414-73555 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 |
255-32335 8 months ago |
288-7452 288 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 |
251-1413 8 months ago |
578-4979 578 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 |
229-4475 7 months ago |
765-83801 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 |
225-10666 7 months ago |
255-32335 255 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 |
224-12687 7 months ago |
497-21256 497 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 |
219-16228 7 months ago |
419-77443 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 |
216-8098 7 months ago |
363-79380 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 |
213-5912 7 months ago |
426-84282 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 |
210-27724 6 months ago |
213-13253 213 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-64232 6 months ago |
430-34791 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-49494 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-49493 6 months ago |
206-49494 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 |
206-28813 6 months ago |
229-4735 229 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-77045 6 months ago |
229-4736 229 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-76806 6 months ago |
234-74503 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-62015 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-48174 6 months ago |
189-79277 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-83076 6 months ago |
188-83077 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-78798 6 months ago |
278-236 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-82276 5 months ago |
186-239 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-83107 5 months ago |
178-2831 178 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 |
169-10920 5 months ago |
270-20320 270 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-63066 5 months ago |
163-63066 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-73521 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-72371 5 months ago |
548-13520 548 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-82621 4 months ago |
147-82621 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-46153 4 months ago |
146-46153 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-69585 4 months ago |
144-69653 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 |
140-15624 4 months ago |
155-76700 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 |
140-7354 4 months ago |
160-76383 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 |
140-7352 4 months ago |
160-74252 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 |
134-6875 4 months ago |
134-6875 134 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 |
133-26405 4 months ago |
133-26405 133 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-73073 4 months ago |
251-74443 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-36064 4 months ago |
164-14730 164 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-53196 3 months ago |
538-80584 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-69437 3 months ago |
464-32967 464 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 |
118-20894 3 months ago |
801-45789 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 |
118-20630 3 months ago |
568-12716 568 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 |
118-20628 3 months ago |
538-82164 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 |
118-20499 3 months ago |
593-73130 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 |
118-20345 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 |
118-20343 3 months ago |
496-72146 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 |
118-20205 3 months ago |
315-53134 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 |
118-20065 3 months ago |
345-4020 345 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 |
118-20059 3 months ago |
365-14072 365 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 |
118-20050 3 months ago |
384-54052 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 |
118-20037 3 months ago |
341-2551 341 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 |
118-19884 3 months ago |
204-18465 204 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 |
118-19735 3 months ago |
260-43298 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 |
118-19546 3 months ago |
255-14501 255 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 |
118-19523 3 months ago |
214-67913 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 |
118-19375 3 months ago |
233-63133 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 |
118-19370 3 months ago |
147-8180 147 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 |
118-19333 3 months ago |
245-6942 245 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 |
118-19178 3 months ago |
228-76741 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 |
118-19176 3 months ago |
227-51403 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 |
118-19044 3 months ago |
118-19045 118 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 |
118-19030 3 months ago |
212-59258 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 |
118-18891 3 months ago |
118-18892 118 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 |
118-18257 3 months ago |
118-18258 118 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 |
118-18088 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 |
118-15089 3 months ago |
562-8203 562 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-79364 3 months ago |
123-85815 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-78505 3 months ago |
747-45950 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-78352 3 months ago |
480-85231 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-78289 3 months ago |
454-9138 454 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-78262 3 months ago |
410-57076 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-78145 3 months ago |
329-77080 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-77911 3 months ago |
220-77659 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-77828 3 months ago |
146-64963 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-77807 3 months ago |
218-30474 218 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-77696 3 months ago |
184-78766 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-77608 3 months ago |
208-52111 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-64004 3 months ago |
117-64004 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-62314 3 months ago |
115-61466 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-86153 3 months ago |
114-85742 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-33795 3 months ago |
112-2807 112 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 |
109-20175 3 months ago |
109-20175 109 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-57716 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-78552 3 months ago |
114-45365 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-65314 3 months ago |
110-22457 110 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-65190 3 months ago |
111-1216 111 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-60792 3 months ago |
284-736 284 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 |
99-1829 3 months ago |
99-1782 99 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-86025 3 months ago |
98-86025 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 |
97-19238 3 months ago |
99-1780 99 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 |
93-14490 3 months ago |
93-24025 93 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-78131 3 months ago |
92-78131 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 |
88-15133 2 months ago |
88-15173 88 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-49902 2 months ago |
87-49902 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-82099 2 months ago |
146-46667 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 |
85-18122 2 months ago |
90-62440 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 |
84-28364 2 months ago |
84-33649 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 |
84-28256 2 months ago |
84-33423 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 |
84-28172 2 months ago |
84-33235 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 |
84-25844 2 months ago |
84-25845 84 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 |
84-25842 2 months ago |
84-25843 84 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 |
84-25841 2 months ago |
84-25842 84 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 |
84-25839 2 months ago |
84-25840 84 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 |
84-25836 2 months ago |
84-25839 84 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 |
84-25835 2 months ago |
84-25836 84 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-64103 2 months ago |
85-39722 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-54321 2 months ago |
103-57778 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-70973 2 months ago |
79-70973 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-63923 2 months ago |
79-63923 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 |
74-5714 2 months ago |
74-5714 74 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-59038 2 months ago |
72-59039 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-52131 2 months ago |
342-81450 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-62036 2 months ago |
518-22873 518 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-42991 2 months ago |
68-42992 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-80536 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-72342 2 months ago |
67-72342 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-82026 2 months ago |
165-53453 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-65110 2 months ago |
63-65331 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 |
62-29695 2 months ago |
62-26323 62 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-83441 2 months ago |
60-5563 60 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 |
58-7121 1 month ago |
195-38905 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 |
57-13575 1 month ago |
113-14347 113 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-79387 1 month ago |
63-58917 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-72906 1 month ago |
64-330 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-72856 1 month ago |
95-75552 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-80406 1 month ago |
53-80406 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-76664 1 month ago |
55-58100 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 |
53-11814 1 month ago |
56-77100 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-69189 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-58762 1 month ago |
108-75727 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-82283 1 month ago |
46-82283 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-43977 1 month ago |
61-33253 61 days ago |
65-84263 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-43974 1 month ago |
54-50349 54 days ago |
54-64005 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 |
46-18290 1 month ago |
55-2305 55 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-43984 1 month ago |
58-61673 58 days ago |
58-64437 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-56095 1 month ago |
98-56533 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-43935 1 month ago |
73-7156 73 days ago |
73-6709 73 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 |
44-8526 1 month ago |
162-45495 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 |
44-8519 1 month ago |
162-51148 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 |
44-8488 1 month ago |
84-71790 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 |
44-8293 1 month ago |
69-78825 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 |
44-8162 1 month ago |
53-75784 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 |
44-234 1 month ago |
140-78080 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-85401 1 month ago |
119-42204 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-85133 1 month ago |
45-86030 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-81170 1 month ago |
45-63629 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-48673 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-63654 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-53744 1 month ago |
41-53744 41 days ago |
94-3100 94 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-36430 1 month ago |
41-73283 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 |
41-14143 1 month ago |
70-84406 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-72850 1 month ago |
40-73045 40 days ago |
49-74281 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-59568 1 month ago |
42-77708 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 |
39-6505 1 month ago |
39-6505 39 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-73761 1 month ago |
55-32378 55 days ago |
55-39924 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-42744 1 month ago |
37-42744 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 |
37-26459 1 month ago |
40-1642 40 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-44054 1 month ago |
41-26390 41 days ago |
41-28907 41 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 |
35-19513 1 month ago |
35-19513 35 days ago |
103-37518 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 |
35-13549 1 month ago |
67-23269 67 days ago |
94-61486 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-77618 1 month ago |
68-14086 68 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-58607 1 month ago |
255-14474 255 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-54949 1 month ago |
34-57172 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-43900 1 month ago |
43-12515 43 days ago |
46-63582 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-43896 1 month ago |
42-84707 42 days ago |
42-86165 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-80316 1 month ago |
33-82090 33 days ago |
33-83058 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-73281 1 month ago |
46-14313 46 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-60968 1 month ago |
61-76072 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 |
33-3101 1 month ago |
77-82048 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-54191 1 month ago |
37-43511 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-38101 1 month ago |
89-20757 89 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 |
32-1868 1 month ago |
32-49097 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-84334 1 month ago |
31-84400 31 days ago |
45-5415 45 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-70648 1 month ago |
41-3505 41 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-57712 1 month ago |
38-81085 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-56287 1 month ago |
38-79275 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-43868 1 month ago |
79-58264 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-42932 1 month ago |
343-75598 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 |
30-12555 1 month ago |
81-66780 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-68140 1 month ago |
179-79916 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-63763 1 month ago |
177-11191 177 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-69054 1 month ago |
70-61439 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 |
28-10189 1 month ago |
259-82375 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-78885 27 days ago |
27-78985 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-78533 27 days ago |
27-79287 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-77394 27 days ago |
27-78592 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-75044 27 days ago |
27-74712 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-73151 27 days ago |
27-73357 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-50078 27 days ago |
40-59554 40 days ago |
40-59107 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-45547 27 days ago |
28-44845 28 days ago |
132-3868 132 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-43025 27 days ago |
27-43025 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 |
27-26769 27 days ago |
78-5042 78 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 |
27-6503 27 days ago |
27-6504 27 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-85623 25 days ago |
55-63529 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 |
25-25834 25 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 |
25-4289 25 days ago |
25-4289 25 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-38588 24 days ago |
24-60485 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 |
23-27425 23 days ago |
23-43733 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 |
22-23401 22 days ago |
22-23401 22 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-55098 21 days ago |
97-55968 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-44072 21 days ago |
37-43006 37 days ago |
45-50505 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-67196 20 days ago |
20-67196 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-55218 20 days ago |
20-55218 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-51434 20 days ago |
79-58582 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-51057 20 days ago |
38-78742 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-51056 20 days ago |
20-51057 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-44052 20 days ago |
31-72215 31 days ago |
41-34020 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-38515 20 days ago |
20-58491 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-44074 19 days ago |
22-53748 22 days ago |
29-189 29 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 |
19-22373 19 days ago |
31-76114 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 |
19-13439 19 days ago |
364-77778 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 |
19-13423 19 days ago |
315-81717 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-51263 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-33452 18 days ago |
282-62751 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 |
18-30978 18 days ago |
34-224 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-85223 17 days ago |
17-85441 17 days ago |
74-11173 74 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-84150 17 days ago |
306-66622 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-81831 17 days ago |
23-69204 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-75372 17 days ago |
22-63117 22 days ago |
22-63345 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-60135 17 days ago |
17-60135 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-56206 17 days ago |
17-65278 17 days ago |
17-65288 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-50411 16 days ago |
29-69785 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 |
16-941 16 days ago |
20-61556 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-83365 15 days ago |
15-83388 15 days ago |
36-58098 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-76523 15 days ago |
15-76549 15 days ago |
30-19877 30 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-74969 15 days ago |
39-78786 39 days ago |
39-78339 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-65974 15 days ago |
15-65676 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-35146 15 days ago |
259-14879 259 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 |
15-12472 15 days ago |
19-10474 19 days ago |
19-10063 19 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 |
15-8076 15 days ago |
27-82481 27 days ago |
0-3706 1 hour |
| 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-76053 14 days ago |
66-64451 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 |
14-20614 14 days ago |
189-16964 189 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 |
14-13700 14 days ago |
24-66373 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 |
14-10777 14 days ago |
14-13795 14 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-82193 12 days ago |
27-21035 27 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-77447 12 days ago |
14-15836 14 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 |
12-3742 12 days ago |
12-78009 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-77274 11 days ago |
13-57187 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-66381 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-65894 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-48951 11 days ago |
11-49013 11 days ago |
11-49257 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 |
11-8965 11 days ago |
24-82813 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 |
11-3440 11 days ago |
603-55864 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-83031 10 days ago |
14-45049 14 days ago |
16-30995 16 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-78808 10 days ago |
60-20935 60 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-74515 10 days ago |
32-11107 32 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-65954 10 days ago |
18-54093 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-65918 10 days ago |
10-65892 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-65908 10 days ago |
217-46054 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-47888 10 days ago |
21-62537 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-47643 10 days ago |
60-73156 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-36363 10 days ago |
25-18403 25 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 |
10-9982 10 days ago |
20-61069 20 days ago |
20-60970 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-80139 9 days ago |
14-60454 14 days ago |
14-61508 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-67016 9 days ago |
9-70427 9 days ago |
9-69980 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 |
8-3285 8 days ago |
18-25381 18 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-85694 7 days ago |
7-84948 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-60818 7 days ago |
69-82640 69 days ago |
69-82193 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-58783 7 days ago |
24-52509 24 days ago |
29-55169 29 days |
| Number |
Author |
Title |
Description |
Labels |
+/- |
Modified files (first 100) |
📝 |
💬 |
All users who commented or reviewed |
Assignee(s) |
Approval(s) |
Updated |
Last status change |
total time in review |
| 12608 |
eric-wieser author:eric-wieser |
feat: allow `nsmul` / `zsmul` to be omitted again, with a warning |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
t-meta
label:t-algebra$ |
118/2 |
Mathlib.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Tactic.lean,Mathlib/Tactic/DefaultFieldLinter.lean,scripts/noshake.json,test/default_field_linter.lean |
6 |
12 |
['YaelDillies', 'eric-wieser', 'fpvandoorn', 'github-actions'] |
nobody |
1 |
594-18053 1 year ago |
667-64440 667 days ago |
5-74504 5 days |
| 8519 |
eric-wieser author:eric-wieser |
refactor(LinearAlgebra/TensorProduct): golf using `liftAddHom` |
This new `TensorProduct.liftAddHom` doesn't require bilinearity, only that scalar multiplication can be moved between the arguments.
While in theory we only need the `AddMonoidHom` version as it offers exactly the same generality, we first provide an unbundled `liftFun` as this seems to give a sizeable performance boost if used in downstream `lift` variants.
---
- [x] depends on: #8571
- [x] depends on: #8584
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
53/50 |
Mathlib/Algebra/Category/AlgebraCat/Monoidal.lean,Mathlib/LinearAlgebra/TensorProduct.lean,Mathlib/LinearAlgebra/TensorProduct/Tower.lean |
3 |
28 |
['bustercopley', 'eric-wieser', 'jcommelin', 'jjaassoonn', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib-bors'] |
nobody |
1 |
594-18050 1 year ago |
833-69813 833 days ago |
5-6524 5 days |
| 9146 |
laughinggas author:laughinggas |
feat(Data/ZMod/Defs): Topological structure on `ZMod` |
Added a discrete topology structure to `ZMod n` for all `n`
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
awaiting-author
t-topology
label:t-algebra$ |
55/3 |
Mathlib.lean,Mathlib/Topology/Algebra/Constructions.lean,Mathlib/Topology/Algebra/Group/Basic.lean,Mathlib/Topology/Instances/ZMod.lean,Mathlib/Topology/Maps.lean |
5 |
61 |
['YaelDillies', 'eric-wieser', 'github-actions', 'jcommelin', 'laughinggas', 'mo271', 'urkud'] |
nobody |
1 |
594-18050 1 year ago |
800-62541 800 days ago |
7-11053 7 days |
| 6777 |
adomani author:adomani |
chore(Co*variantClass): replace eta-expanded (· * ·), (· + ·), (· ≤ ·), (· < ·) |
Replace `CovariantClass X X (· * ·) (· ≤ ·)` with -> `CovariantClass X X HMul.hMul LE.le` and similarly for `HAdd`, `LT`, `Contravariant`.
This PR is inspired by [Issue #6646](https://github.com/leanprover-community/mathlib4/issues/6646) and, more specifically, [this comment](https://github.com/leanprover-community/mathlib4/issues/6646#issuecomment-1692792066).
Note that https://github.com/leanprover/lean4/pull/2267 would make this unnecessary
---
```bash
# First sed command:
# the first captured pattern is `Co*variantClass `
# the second captured pattern is ``
# the third captured pattern is `+` or `*`
# the fourth captured pattern is `<` or `≤`
# a match for `Co*variantClass (· ·) (· ·)` becomes
# `Co*variantClass replaceop replaceop`
# Second sed command: similar to the first, but looks for `(Function.swap (· ·))`
sed -i '
s=\(Co[ntra]*variantClass \(..*\) \2 \)(· *\([+*]\) *·) (· *\([<≤]\) *·)=\1replaceop\3 replaceop\4=g
s=\(Co[ntra]*variantClass \(..*\) \2 \)(\([Functio\.swap ]*\)(· *\([+*]\) *·)) (· *\([<≤]\) *·)=\1(\3replaceop\4) replaceop\5=g
s=replaceop+=HAdd.hAdd=g
s=replaceop\*=HMul.hMul=g
s=replaceop<=LT.lt=g
s=replaceop≤=LE.le=g
s=\(Co[ntra]*variantClass N N\) (· \* ·) r=\1 HMul.hMul r=g
s=\(Co[ntra]*variantClass N N (swap μ)\) (· ≤ ·)=\1 LE.le=g
s=\(Co[ntra]*variantClass N N\) (swap (· \* ·)) r=\1 (swap HMul.hMul) r=g
s=\(CovariantClass (Filter α) (Filter α)\) (· / ·) (· ≤ ·)=\1 HDiv.hDiv LE.le=g
s=\(CovariantClass (Filter α) (Filter α)\) (swap (· / ·)) (· ≤ ·)=\1 (swap HDiv.hDiv) LE.le=g
s=\(Co[ntra]*variantClass .* (fun x y .> . \* .)\) (· ≤ ·)=\1 LE.le=g
s=\(Co[ntra]*variantClass .* (fun x y .> . \* .)\) (· < ·)=\1 LT.lt=g
s=\(Co[ntra]*variantClass [^}]*\) (· ≤ ·)=\1 LE.le=g
s=\(CovariantClass .* (Filter β)\) (· • ·) LE.le=\1 HSMul.hSMul LE.le=g
' $(git ls-files '*.lean')
```
[](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 |
1 |
594-18049 1 year ago |
868-69946 868 days ago |
35-63136 35 days |
| 6403 |
astrainfinita author:astrainfinita |
chore: change instance priorities of `Ordered*` hierarchy |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-order
merge-conflict
slow-typeclass-synthesis
awaiting-author
label:t-algebra$ |
253/79 |
Mathlib/Algebra/Order/CompleteField.lean,Mathlib/Algebra/Order/Field/Canonical/Defs.lean,Mathlib/Algebra/Order/Field/Defs.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/Monoid/Basic.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Monoid/WithZero/Defs.lean,Mathlib/Algebra/Order/Ring/Canonical.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/Star.lean,Mathlib/Algebra/Order/WithZero.lean,Mathlib/Analysis/InnerProductSpace/Orientation.lean,Mathlib/LinearAlgebra/Orientation.lean,Mathlib/RingTheory/HahnSeries.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean |
18 |
39 |
['Vierkantor', 'astrainfinita', 'digama0', 'eric-wieser', 'j-loreaux', 'leanprover-bot'] |
nobody |
1 |
594-18048 1 year ago |
838-57190 838 days ago |
13-18399 13 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 |
1 |
574-81750 1 year ago |
610-1572 610 days ago |
56-40668 56 days |
| 15448 |
urkud author:urkud |
chore(*): deprecate `Option.elim'` |
Use `Option.elim` instead.
---
[](https://gitpod.io/from-referrer/) |
merge-conflict
awaiting-author
tech debt
|
54/50 |
Mathlib/Algebra/BigOperators/Option.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/Calculus/LagrangeMultipliers.lean,Mathlib/CategoryTheory/Category/PartialFun.lean,Mathlib/Computability/TMToPartrec.lean,Mathlib/Data/Option/Defs.lean,Mathlib/LinearAlgebra/Basis.lean,Mathlib/Logic/Embedding/Set.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/NumberTheory/Dioph.lean,Mathlib/Topology/Compactness/Paracompact.lean,Mathlib/Topology/LocallyFinite.lean |
17 |
12 |
['Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'grunweg', 'urkud'] |
nobody |
1 |
574-70803 1 year ago |
584-30565 584 days ago |
7-18420 7 days |
| 13514 |
madvorak author:madvorak |
feat(Computability/ContextFreeGrammar): closure under union |
- [ ] depends on: #15895
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-computability
blocked-by-other-PR
|
448/4 |
Mathlib/Computability/ContextFreeGrammar.lean |
1 |
50 |
['Rida-Hamadani', 'YaelDillies', 'github-actions', 'leanprover-community-mathlib4-bot', 'madvorak'] |
nobody |
1 |
500-11207 1 year ago |
577-71588 577 days ago |
72-28417 72 days |
| 12133 |
ADedecker author:ADedecker |
feat: generalize instIsLowerProd to arbitrary products |
Also change a bit the proof of the product case to match my own taste, feel free to tell if you prefer the old one.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-topology
t-order
|
34/14 |
Mathlib/Topology/Constructions.lean,Mathlib/Topology/Order/LowerUpperTopology.lean |
2 |
13 |
['Ruben-VandeVelde', 'TwoFX', 'github-actions', 'jcommelin', 'mans0954', 'mathlib-bors', 'riccardobrasca'] |
nobody |
2 |
487-17255 1 year ago |
638-12891 638 days ago |
63-69226 63 days |
| 18461 |
hannahfechtner author:hannahfechtner |
feat: left and right common multiples mixins |
add mixins for left and right common multiples. These carry the data of what factors are used to create the common multiples
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-algebra
new-contributor
label:t-algebra$ |
78/0 |
Mathlib/Algebra/Group/Defs.lean |
1 |
13 |
['github-actions', 'hannahfechtner', 'jcommelin', 'kbuzzard', 'kim-em', 'trivial1711'] |
nobody |
1 |
421-13722 1 year ago |
421-13722 421 days ago |
69-24210 69 days |
| 2605 |
eric-wieser author:eric-wieser |
chore: better error message in linarith |
On this mwe:
```lean
import Mathlib.Tactic.Linarith
example (s : Set ℕ) (h : s = s) : 0 ≤ 1 :=
by linarith
```
this now indicates where the internal error is coming from.
Is there a better way of chaining errors than this?
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-meta
|
12/1 |
Mathlib/Tactic/Linarith/Preprocessing.lean |
1 |
3 |
['Vierkantor', 'harahu', 'kim-em', 'mo271'] |
nobody |
1 |
410-82142 1 year ago |
1058-27281 1058 days ago |
51-42225 51 days |
| 19189 |
YnirPaz author:YnirPaz |
feat(SetTheory/Ordinal/Arithmetic): order isomorphism between omega and the natural numbers |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-set-theory
|
44/0 |
Mathlib/Order/SuccPred/Limit.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean |
2 |
21 |
['YaelDillies', 'YnirPaz', 'github-actions', 'vihdzp'] |
nobody |
1 |
361-37125 11 months ago |
436-56766 436 days ago |
47-37012 47 days |
| 19425 |
hrmacbeth author:hrmacbeth |
perf: gcongr forward-reasoning adjustment |
This PR changes the "forward-reasoning" component of `gcongr`, rendering it more efficient, particularly in problems with a large number of variables/hypotheses in the context.
Previously `gcongr` attempted to match *every* `LocalDecl` against *every* node in the parse tree using *each* of the five implemented `@[gcongr_forward]` mini-tactics: matching directly, matching after applying `symm`, matching after applying `le_of_lt`, etc etc.
The new algorithm filters out the non-Prop `LocalDecl`s, and also adjusts the `@[gcongr_forward]` extensions so that, rather than re-apply the relevant lemmas (`symm`, `le_of_lt`, etc) at every node in the parse tree, the lemmas are applied in advance to the `LocalDecl`s and the result (if successful) stored.
The performance effect on mathlib as a whole is miniscule, but it speeds up the profiler's count of "tactic execution of Mathlib.Tactic.GCongr" in the newly-added test from 257 ms to 47 ms, and has a similar effect on real-life examples in an analysis project of mine.
Co-authored-by: Mario Carneiro
---
[](https://gitpod.io/from-referrer/)
(Note that Mario provided the ideas but not the code, so please review with appropriate diligence!) |
merge-conflict
awaiting-author
|
130/59 |
Mathlib/Order/Lattice.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/GCongr/ForwardAttr.lean,MathlibTest/GCongr/inequalities.lean |
4 |
17 |
['Vierkantor', 'github-actions', 'hrmacbeth', 'leanprover-bot', 'leanprover-community-bot-assistant'] |
Vierkantor assignee:Vierkantor |
1 |
341-12104 11 months ago |
474-521 474 days ago |
1-41769 1 day |
| 8370 |
eric-wieser author:eric-wieser |
refactor(Analysis/NormedSpace/Exponential): remove the `𝕂` argument from `exp` |
This argument is still needed for almost all the lemmas, which means it can longer be found by unification.
We keep around `expSeries 𝕂 A`, as it's needed for talking about the radius of convergence over different base fields.
This is a prerequisite for #8372, as we can't merge the functions until they have the same interface.\
Zulip thread: [#mathlib4 > Real.exp @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Real.2Eexp/near/401602245)
---
[](https://gitpod.io/from-referrer/)
This is started from the mathport output on https://github.com/leanprover-community/mathlib/pull/19244 |
merge-conflict
t-analysis
awaiting-zulip
|
432/387 |
Mathlib/Analysis/CStarAlgebra/Exponential.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/Normed/Algebra/Exponential.lean,Mathlib/Analysis/Normed/Algebra/MatrixExponential.lean,Mathlib/Analysis/Normed/Algebra/QuaternionExponential.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Algebra/TrivSqZeroExt.lean,Mathlib/Analysis/NormedSpace/DualNumber.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/ExpLog.lean,Mathlib/Analysis/SpecialFunctions/Exponential.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Series.lean |
11 |
29 |
['YaelDillies', 'eric-wieser', 'girving', 'github-actions', 'j-loreaux', 'kbuzzard', 'leanprover-community-bot-assistant', 'urkud'] |
nobody |
1 |
326-45248 10 months ago |
347-57890 347 days ago |
24-46029 24 days |
| 19315 |
quangvdao author:quangvdao |
feat(Data/Finsupp/Fin): Add `Finsupp` operations on `Fin` tuple |
This PR adds more analogues of operations on `Fin` tuples to the `Finsupp` setting. Before, there were only `Finsupp.cons` and `Finsupp.tail`. Now there are also `Finsupp.snoc`, `Finsupp.insertNth`, `Finsupp.init`, and `Finsupp.removeNth`. These all come with supporting lemmas.
I also removed the porting comment about `succAboveCases` in `Data/Fin/Basic`, and added a lemma about `succAbove` in `Data/Fin/Tuple/Basic`.
---
- [x] depends on: #20361
- [x] depends on: #20771
- [x] depends on: #20770
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-data
|
193/16 |
Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finsupp.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Data/Finsupp/Fin.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,scripts/nolints_prime_decls.txt |
6 |
44 |
['YaelDillies', 'github-actions', 'j-loreaux', 'kbuzzard', 'mathlib4-dependent-issues-bot', 'quangvdao'] |
nobody |
1 |
314-55109 10 months ago |
391-80132 391 days ago |
43-81252 43 days |
| 21276 |
GabinKolly author:GabinKolly |
feat(ModelTheory/Substructures): define equivalences between equal substructures |
Define first-order equivalences between equal substructures, and prove related properties.
---
This is some preparatory work for #18876
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-logic
|
62/0 |
Mathlib/ModelTheory/Substructures.lean |
1 |
19 |
['GabinKolly', 'YaelDillies', 'fpvandoorn', 'github-actions', 'grunweg'] |
nobody |
1 |
311-73183 10 months ago |
311-73183 311 days ago |
46-55730 46 days |
| 25401 |
digama0 author:digama0 |
feat(Util): SuppressSorry option |
See also leanprover/lean4#8611 and [#lean4 > Silent sorry @ 💬](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Silent.20sorry/near/503537964). This is a stop-gap solution while leanprover/lean4#8611 is underway, but it works about as well as any other built in option. Hooking declaration elaborators turns out to be a very powerful technique.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-meta
|
342/0 |
Mathlib.lean,Mathlib/Util/CommandElabHook.lean,Mathlib/Util/SuppressSorry.lean,MathlibTest/suppressSorry.lean |
4 |
15 |
['digama0', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] |
alexjbest assignee:alexjbest |
1 |
215-49571 7 months ago |
215-49571 215 days ago |
71-28496 71 days |
| 26078 |
kckennylau author:kckennylau |
feat(AlgebraicGeometry): add x, y, px, py for points on elliptic curves |
---
Split from #25218.
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-algebraic-geometry
|
44/0 |
Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean |
1 |
12 |
['MichaelStollBayreuth', 'Multramate', 'acmepjz', 'dagurtomas', 'github-actions', 'kckennylau'] |
dagurtomas assignee:dagurtomas |
1 |
207-79187 6 months ago |
207-79187 207 days ago |
64-11252 64 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 |
1 |
206-49493 6 months ago |
206-49494 206 days ago |
13-49738 13 days |
| 26462 |
PSchwahn author:PSchwahn |
feat(LinearAlgebra/Projection): add results about inverse of `Submodule.prodEquivOfIsCompl` |
Add two theorems `Submodule.prodEquivOfIsCompl_symm_apply` and `Submodule.prodEquivOfIsCompl_symm_add`, which are API for `Submodule.prodEquivOfIsCompl`.
We believe these theorems are useful; for example, we have used their statements in a [classification formalization project](https://github.com/LieLean/LowDimSolvClassification).
Co-authored by:
- [Viviana del Barco](https://github.com/vdelbarc)
- [Gustavo Infanti](https://github.com/GuQOliveira)
- [Exequiel Rivas](https://github.com/erivas)
---
I am not sure whether the `prodEquivOfIsCompl_symm_apply` theorem should be tagged with `@[simp]`; this might lead to confluence issues. Opinions are welcome!
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-algebra
new-contributor
label:t-algebra$ |
10/0 |
Mathlib/LinearAlgebra/Projection.lean |
1 |
7 |
['PSchwahn', 'github-actions', 'joelriou', 'kckennylau'] |
joelriou assignee:joelriou |
1 |
189-48174 6 months ago |
189-79277 189 days ago |
73-43082 73 days |
| 27937 |
madvorak author:madvorak |
feat(Logic/Basic): `congr_heq₂` |
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-logic
|
6/0 |
Mathlib/Logic/Basic.lean |
1 |
8 |
['YaelDillies', 'fpvandoorn', 'github-actions', 'madvorak', 'vihdzp'] |
fpvandoorn assignee:fpvandoorn |
1 |
181-12113 6 months ago |
207-12898 207 days ago |
17-62721 17 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 |
1 |
171-82027 5 months ago |
252-81964 252 days ago |
73-13048 73 days |
| 26330 |
Timeroot author:Timeroot |
feat: "Junk value" test file |
This PR continues the work from #25173.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25173 |
awaiting-author
t-data
|
360/0 |
MathlibTest/Junk.lean |
1 |
17 |
['SnirBroshi', 'Timeroot', 'bryangingechen', 'github-actions', 'leanprover-community-bot-assistant', 'madvorak', 'pechersky', 'vihdzp'] |
pechersky assignee:pechersky |
2 |
168-39354 5 months ago |
168-39354 168 days ago |
48-73998 48 days |
| 27302 |
tristan-f-r author:tristan-f-r |
feat(Fintype/Quotient): finLiftOn₂ |
The combination of [`Quotient.finLiftOn`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Fintype/Quotient.html#Quotient.finLiftOn) and [`liftOn₂`](https://leanprover-community.github.io/mathlib4_docs/Init/Core.html#Quotient.liftOn%E2%82%82).
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-data
|
19/0 |
Mathlib/Data/Fintype/Quotient.lean |
1 |
12 |
['github-actions', 'kckennylau', 'pechersky', 'tristan-f-r', 'vihdzp'] |
pechersky assignee:pechersky |
2 |
152-30114 5 months ago |
152-30114 152 days ago |
6-6533 6 days |
| 28925 |
grunweg author:grunweg |
chore: remove `linear_combination'` tactic |
When `linear_combination` was refactored in #15899, the old code was kept as the `linear_combination'` tactic, for easier migration. The consensus of the zulip discussion ([#mathlib4 > Narrowing the scope of `linear_combination` @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Narrowing.20the.20scope.20of.20.60linear_combination.60/near/470237816)) was to wait, and "revisit this once people have experienced the various tactics in practice".
One year later, the old tactic has almost no uses: it is unused in mathlib; [searching on github](https://github.com/search?q=linear_combination%27%20path%3A*.lean&type=code) yields 37 hits --- all of which are in various forks of mathlib. Thus, removing this tactic seems appropriate.
---
Do not merge before the zulip discussion has concluded!
[](https://gitpod.io/from-referrer/)
|
merge-conflict
file-removed
awaiting-zulip
|
0/564 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/LinearCombination'.lean,Mathlib/Tactic/Linter/UnusedTactic.lean,MathlibTest/linear_combination'.lean |
5 |
4 |
['euprunin', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] |
nobody |
1 |
152-25190 5 months ago |
203-56987 203 days ago |
0-1 1 second |
| 28737 |
astrainfinita author:astrainfinita |
refactor: deprecate `MulEquivClass` |
This PR continues the work from #18806.
Original PR: https://github.com/leanprover-community/mathlib4/pull/18806 |
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
67/77 |
Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Group/Equiv/Basic.lean,Mathlib/Algebra/Group/Equiv/Defs.lean,Mathlib/Algebra/Group/Irreducible/Lemmas.lean,Mathlib/Algebra/Group/Subgroup/Map.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/Algebra/Group/Units/Equiv.lean,Mathlib/Algebra/GroupWithZero/Equiv.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Prime/Lemmas.lean,Mathlib/Algebra/Ring/Divisibility/Basic.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/Algebra/Star/MonoidHom.lean,Mathlib/Combinatorics/Additive/FreimanHom.lean,Mathlib/GroupTheory/GroupExtension/Defs.lean,Mathlib/GroupTheory/Submonoid/Center.lean,Mathlib/LinearAlgebra/FreeModule/Finite/CardQuotient.lean,Mathlib/RingTheory/Bialgebra/Equiv.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/RingTheory/UniqueFactorizationDomain/NormalizedFactors.lean,Mathlib/Topology/Algebra/ContinuousMonoidHom.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean |
26 |
20 |
['Vierkantor', 'alreadydone', 'astrainfinita', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] |
Vierkantor assignee:Vierkantor |
1 |
140-15672 4 months ago |
203-62245 203 days ago |
2-31233 2 days |
| 27180 |
ADedecker author:ADedecker |
feat: quotient of a monoid with zero by a multiplicative congruence |
---
My motivation is getting a more conceptual construction of [ValuativeRel.ValueGroupWithZero](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Valuation/ValuativeRel.html#ValuativeRel.ValueGroupWithZero), but I think this is of independent interest.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
delegated
label:t-algebra$ |
141/26 |
Mathlib.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Congruence/GroupWithZero.lean |
5 |
32 |
['ADedecker', 'eric-wieser', 'github-actions', 'mathlib-bors', 'mathlib4-merge-conflict-bot', 'ocfnash'] |
ocfnash assignee:ocfnash |
1 |
136-85328 4 months ago |
216-14463 216 days ago |
28-12053 28 days |
| 9352 |
chenyili0818 author:chenyili0818 |
feat: arithmetic lemmas for `gradient` |
This file is based on Mathlib.Analysis.Calculus.Gradient.Basic, and describes the calculation properties
Co-authored-by: Ziyu Wang [tropicalfish910@gmail.com](mailto:tropicalfish910@gmail.com)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-analysis
|
404/0 |
Mathlib.lean,Mathlib/Analysis/Calculus/Gradient/Lemmas.lean |
2 |
31 |
['chenyili0818', 'github-actions', 'jcommelin', 'mathlib4-merge-conflict-bot', 'sgouezel', 'winstonyin'] |
nobody |
1 |
118-20766 3 months ago |
755-85615 755 days ago |
52-1358 52 days |
| 11890 |
adomani author:adomani |
feat: the terminal refine linter |
A linter that warns on usages of `refine` and `refine'` as a finishing tactic.
See this [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Usage.20of.20refine').
### Conclusion of the experiment
Systematic replacements of terminal `refine` with `exact` leads to an overall slow-down.
---
- [ ] depends on: #15616 (disable the linter in downstream projects)
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-linter
awaiting-author
|
77/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/TerminalRefineLinter.lean |
3 |
15 |
['adomani', 'github-actions', 'grunweg', 'joneugster', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot', 'urkud'] |
nobody |
1 |
118-20635 3 months ago |
580-55141 580 days ago |
18-28993 18 days |
| 20924 |
tomaz1502 author:tomaz1502 |
feat(Computability/QueryComplexity): Oracle-based computation |
This PR adds the types and lemmas for oracle-based computation. In this model, computations are run on a monad which also counts the number of oracle queries executed. With it, it becomes possible to reason about the upper bound of the query complexity of algorithms. In the future, we could extend this work to include the necessary bits from information theory and probability to also reason about lower bounds on query complexity, like the work in https://github.com/girving/debate.
Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2318629.20runtime.20complexity.20of.20sorting.20a.20list
Co-authored-by: Geoffrey Irving
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-computability
|
305/0 |
Mathlib.lean,Mathlib/Computability/QueryComplexity/Basic.lean,Mathlib/Computability/QueryComplexity/Defs.lean |
3 |
60 |
['eric-wieser', 'girving', 'github-actions', 'mathlib4-merge-conflict-bot', 'quangvdao', 'tomaz1502'] |
nobody |
1 |
118-20201 3 months ago |
387-39960 387 days ago |
27-38491 27 days |
| 21624 |
sinhp author:sinhp |
feat(CategoryTheory): The (closed) monoidal structure on the product category of families of (closed) monoidal categories |
Given a family of closed monoidal categories, we show that the product of these categories
is a closed monoidal category with the pointwise monoidal structure.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-category-theory
|
144/0 |
Mathlib.lean,Mathlib/CategoryTheory/Pi/Basic.lean,Mathlib/CategoryTheory/Pi/Monoidal.lean,Mathlib/CategoryTheory/Pi/MonoidalClosed.lean |
4 |
20 |
['TwoFX', 'YaelDillies', 'b-mehta', 'github-actions', 'jcommelin', 'mathlib4-merge-conflict-bot', 'sinhp'] |
nobody |
1 |
118-20191 3 months ago |
343-34433 343 days ago |
54-54882 54 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 |
1 |
118-20059 3 months ago |
365-14072 365 days ago |
20-81771 20 days |
| 22919 |
plp127 author:plp127 |
feat(Data/Fintype/Pi): Make `Fintype` instance for `RelHom`s computable |
Makes the `Fintype` instance for rel homs computable.
See this [Zulip](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Classical.20vs.20constructive.20logic.20in.20computation/near/496220816) message.
---
- [x] depends on: #24748
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-data
|
178/44 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Data/Fintype/CardEmbedding.lean,Mathlib/Data/Fintype/Pi.lean |
5 |
31 |
['IvanRenison', 'b-mehta', 'eric-wieser', 'fpvandoorn', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'plp127'] |
b-mehta assignee:b-mehta |
1 |
118-20033 3 months ago |
292-33304 292 days ago |
71-48538 71 days |
| 26914 |
quangvdao author:quangvdao |
feat(Data/PFunctor/Univariate): more definitions for univariate `PFunctor` |
This PR defines several basic definitions of `PFunctor`, including zero, one, constants, monomials, coproduct (sum), product, sigma, pi, tensor product, universe lifting, and equivalence.
We also add: (1) simple lemmas connecting the basic definitions, (2) an automatically derived ext lemma for `PFunctor` via `@[ext]` attribute
Some things I'm not clear on:
- I define `HAdd` and `HMul` instances for coproduct and product of poly functors having different universe levels. Should I also define `Add` and `Mul` instances for poly functors having the same universe level?
- Is it ok to define notation for tensor product, i.e. `@[inherit_doc] scoped infixr:80 " ⊗ " => tensor`? I'm worried it might clash with other notation.
- Need a double-check on the priority of notation.
Some future definitions to add:
- Various equivalences arising from arithmetic identities, e.g., `P + 0 ≃ₚ P`.
- Definitions of Lenses and Charts (each of them will be a file or even a folder)
- Exponential objects (corresponding to both `prod` and `tensor`)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-data
|
144/5 |
Mathlib/Data/PFunctor/Univariate/Basic.lean |
1 |
20 |
['alexkeizer', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot', 'quangvdao'] |
eric-wieser assignee:eric-wieser |
1 |
118-19349 3 months ago |
118-19350 118 days ago |
133-24576 133 days |
| 27163 |
pechersky author:pechersky |
feat(Topology/ValuativeRel): of and to basis of compatible valuations |
---
[](https://gitpod.io/from-referrer/)
- [x] depends on: #30262 |
t-number-theory
t-algebra
merge-conflict
awaiting-author
t-topology
label:t-algebra$ |
229/62 |
Mathlib/NumberTheory/LocalField/Basic.lean,Mathlib/Order/Filter/Bases/Basic.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean |
3 |
73 |
['erdOne', 'github-actions', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky', 'smmercuri'] |
alreadydone assignee:alreadydone |
1 |
118-19332 3 months ago |
119-51123 119 days ago |
84-39534 84 days |
| 28325 |
pechersky author:pechersky |
feat(WithZeroTopology): `locallyCompactSpace_iff_locallyFiniteOrder_units` |
On the way to golf/generalize the proof that
locally compact valued fields have locally finite valuation groups as embodied in
`Valued.integer.locallyFiniteOrder_units_mrange_of_isCompact_integer` ]
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-topology
t-order
large-import
|
81/2 |
Mathlib/Topology/Algebra/GroupWithZero.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean,Mathlib/Topology/Compactness/Compact.lean |
3 |
13 |
['erdOne', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'ocfnash'] |
PatrickMassot assignee:PatrickMassot |
1 |
118-19037 3 months ago |
122-69320 122 days ago |
93-44257 93 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 |
1 |
118-18891 3 months ago |
118-18892 118 days ago |
71-37436 71 days |
| 11800 |
JADekker author:JADekker |
feat: KappaLindelöf spaces |
Define KappaLindelöf spaces by following the first one-third of the API for Lindelöf spaces. The remainder will be added in a future PR.
---
[](https://gitpod.io/from-referrer/)
|
please-adopt
merge-conflict
t-topology
awaiting-zulip
|
301/2 |
Mathlib.lean,Mathlib/Topology/Compactness/KappaLindelof.lean,Mathlib/Topology/Compactness/Lindelof.lean |
3 |
38 |
['ADedecker', 'JADekker', 'PatrickMassot', 'StevenClontz', 'adomani', 'github-actions', 'grunweg', 'kim-em', 'urkud'] |
nobody |
1 |
117-78471 3 months ago |
593-12353 593 days ago |
123-25636 123 days |
| 26310 |
kckennylau author:kckennylau |
feat: binary forms |
This PR provides the basic definition of binary forms, which are homogeneous polynomials in two variables.
---
- [ ] depends on: #26312
- [ ] depends on: #26313
- [ ] depends on: #26314
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
73/0 |
Mathlib.lean,Mathlib/RingTheory/MvPolynomial/BinaryForm.lean |
2 |
14 |
['MichaelStollBayreuth', 'github-actions', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'ocfnash'] |
ocfnash assignee:ocfnash |
1 |
117-77883 3 months ago |
209-74904 209 days ago |
7-9588 7 days |
| 24514 |
b-mehta author:b-mehta |
chore(Int/GCD): use fuel in xgcd |
Modify the definition of xgcd to use fuel recursion, to allow it to be reduced in the kernel. As a consequence, this means the evaluation of field operations in ZMod p become provable by `rfl` and `decide`.
Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/opaque.20recursion.20definitions.20break.20mergeSort.20decidability
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-data
merge-conflict
|
44/22 |
Mathlib/Data/Int/GCD.lean |
1 |
6 |
['astrainfinita', 'b-mehta', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot', 'nomeata', 'urkud'] |
nobody |
1 |
110-7291 3 months ago |
261-47169 261 days ago |
58-34020 58 days |
| 31242 |
plp127 author:plp127 |
feat: express filter as supremum of principal filter and free filter |
Prove a filter is free iff it is smaller than the cofinite filter. Prove that every filter decomposes as the disjoint supremum of a principal filter and a free filter.
---
- [ ] depends on: #31264
[](https://gitpod.io/from-referrer/)
|
t-order
awaiting-author
merge-conflict
|
55/0 |
Mathlib/Order/Filter/Cofinite.lean,Mathlib/Order/Lattice.lean |
2 |
7 |
['github-actions', 'jcommelin', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'plp127'] |
bryangingechen assignee:bryangingechen |
1 |
102-27254 3 months ago |
106-1848 106 days ago |
24-22847 24 days |
| 31597 |
grunweg author:grunweg |
chore(AtLocation): allow throwing a warning when no progress is being made |
A future PR will use this to make `by_contra!` and friends warn if the `push_neg` step makes no progress.
Co-authored by: Jovan Gerbscheid
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-meta
merge-conflict
|
46/28 |
Mathlib/Tactic/Abel.lean,Mathlib/Tactic/Field.lean,Mathlib/Tactic/FieldSimp.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/Push.lean,Mathlib/Tactic/ReduceModChar.lean,Mathlib/Tactic/Ring/RingNF.lean,Mathlib/Util/AtLocation.lean,MathlibTest/FieldSimp.lean,MathlibTest/abel.lean |
10 |
7 |
['JovanGerb', 'fpvandoorn', 'github-actions', 'mathlib4-merge-conflict-bot', 'thorimur'] |
thorimur assignee:thorimur |
2 |
101-75821 3 months ago |
115-73326 115 days ago |
7-68323 7 days |
| 28057 |
plp127 author:plp127 |
feat(SuccOrder): simp lemma to refold `Order.succ` and `Order.pred` |
Adds `SuccOrder.succ_eq_succ` and `PredOrder.pred_eq_pred` to refold `SuccOrder.succ` and `PredOrder.pred` into `Order.succ` and `Order.pred`. These lemmas are marked `@[simp]`.
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-order
merge-conflict
|
8/2 |
Mathlib/Order/SuccPred/Basic.lean |
1 |
4 |
['YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'vihdzp'] |
bryangingechen assignee:bryangingechen |
1 |
101-40420 3 months ago |
178-56128 178 days ago |
44-10271 44 days |
| 26912 |
pechersky author:pechersky |
chore(Algebra/Ring/Subring): simp tag `Subring.smul_def` |
s-multiplying by a subtype is easiest to manipulate when both terms are in the ambient type. Many places that had to use the _def lemma for a rewrite, or to include it in a simp set, no longer have to.
Ported from #25308
---
[](https://gitpod.io/from-referrer/)
I found this being not-simp frustrating when talking about submodules over a valuation subring. |
merge-conflict
t-algebra
label:t-algebra$ |
67/66 |
Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Group/Subgroup/Actions.lean,Mathlib/Algebra/Group/Submonoid/MulAction.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Module/LocalizedModule/Exact.lean,Mathlib/Algebra/Module/LocalizedModule/IsLocalization.lean,Mathlib/Algebra/Module/LocalizedModule/Submodule.lean,Mathlib/Algebra/Ring/Periodic.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/GroupAction/MultiplePrimitivity.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfFixingSubgroup.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfStabilizer.lean,Mathlib/LinearAlgebra/RootSystem/Irreducible.lean,Mathlib/LinearAlgebra/RootSystem/WeylGroup.lean,Mathlib/RingTheory/Etale/Kaehler.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/LocalProperties/Projective.lean,Mathlib/RingTheory/Localization/InvSubmonoid.lean,Mathlib/RingTheory/OreLocalization/Basic.lean |
25 |
26 |
['artie2000', 'eric-wieser', 'github-actions', 'j-loreaux', 'kckennylau', 'leanprover-bot', 'leanprover-radar', 'linesthatinterlace', 'mathlib4-merge-conflict-bot', 'pechersky'] |
joelriou assignee:joelriou |
1 |
91-51056 3 months ago |
113-605 113 days ago |
60-67125 60 days |
| 32889 |
artie2000 author:artie2000 |
feat(Algebra): forgetful lemmas for `map` and `comap` on substructures |
* Standardise the form of forgetful lemmas for `map` and `comap` (ie, `(co)map_toSubfoo`)
* Add missing lemmas of this form
* Mark all such lemmas as `simp`
---
- [ ] depends on: #21031
[](https://gitpod.io/from-referrer/)
|
t-algebra
awaiting-author
blocked-by-other-PR
merge-conflict
label:t-algebra$ |
72/17 |
Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Group/Subgroup/Map.lean,Mathlib/Algebra/Module/Submodule/Map.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Star/Subalgebra.lean |
6 |
30 |
['YaelDillies', 'artie2000', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'vihdzp'] |
nobody |
1 |
79-83429 2 months ago |
89-57976 89 days ago |
2-56660 2 days |
| 33381 |
urkud author:urkud |
feat: add a version of the Schwarz lemma |
Add a version of the Schwarz lemma that is midway between the original lemma
and Pick's version.
Use it to show that a function that is separately holomorphic on a polydisc
and is bounded on this polydisc must be continuous on it.
---
[](https://gitpod.io/from-referrer/)
- [ ] depends on: #33368
- [x] depends on: #33362 |
t-analysis
blocked-by-other-PR
merge-conflict
|
475/91 |
Mathlib.lean,Mathlib/Analysis/Complex/Schwarz.lean,Mathlib/Analysis/Complex/UnitDisc/Basic.lean,Mathlib/Analysis/Complex/UnitDisc/Schwarz.lean,Mathlib/Analysis/Complex/UnitDisc/Shift.lean |
5 |
22 |
['girving', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'urkud'] |
nobody |
1 |
76-27462 2 months ago |
77-82342 77 days ago |
0-947 15 minutes |
| 32991 |
artie2000 author:artie2000 |
chore(Algebra/Algebra): remove `Algebra.cast` coercion |
See discussion at https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Algebra.2Ecast/with/564501144
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
merge-conflict
label:t-algebra$ |
32/125 |
Mathlib/Algebra/Algebra/Basic.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/Algebra/Field.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/BigOperators/Expect.lean,Mathlib/Analysis/Normed/Algebra/Ultra.lean,Mathlib/FieldTheory/Differential/Liouville.lean,Mathlib/LinearAlgebra/Ray.lean,Mathlib/RingTheory/Localization/FractionRing.lean |
9 |
11 |
['Vierkantor', 'artie2000', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'vihdzp'] |
Vierkantor assignee:Vierkantor |
1 |
70-71511 2 months ago |
88-70569 88 days ago |
0-3633 1 hour |
| 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 |
1 |
70-62036 2 months ago |
518-22873 518 days ago |
9-73631 9 days |
| 32165 |
yuanyi-350 author:yuanyi-350 |
feat(Real/Trigonometric): Add `sum_cos_arith_progression` and prepare for Dirichlet kernel |
---
[](https://gitpod.io/from-referrer/)
|
t-analysis
awaiting-author
merge-conflict
|
68/0 |
Mathlib.lean,Mathlib/Analysis/Fourier/DirichletKernel.lean |
2 |
8 |
['BoltonBailey', 'github-actions', 'mathlib4-merge-conflict-bot', 'urkud', 'yuanyi-350'] |
fpvandoorn assignee:fpvandoorn |
1 |
69-50329 2 months ago |
106-37111 106 days ago |
3-74302 3 days |
| 32401 |
ADedecker author:ADedecker |
feat: monotonicity of D^n(U) in n and in U as CLMs |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-analysis
delegated
|
170/3 |
Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/TestFunction.lean |
2 |
19 |
['ADedecker', 'faenuccio', 'github-actions', 'j-loreaux', 'mathlib-bors', 'mathlib4-merge-conflict-bot'] |
nobody |
1 |
66-52402 2 months ago |
75-57027 75 days ago |
16-56139 16 days |
| 25905 |
mans0954 author:mans0954 |
feat(RingTheory/Polynomial/SmallDegreeVieta): polynomial versions of results in Algebra.QuadraticDiscriminant |
This PR continues the work from #25605.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25605 |
merge-conflict
t-ring-theory
please-adopt
|
77/8 |
Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/RingTheory/Polynomial/SmallDegreeVieta.lean |
2 |
47 |
['chrisflav', 'github-actions', 'kckennylau', 'mans0954', 'mathlib4-merge-conflict-bot', 'ocfnash'] |
chrisflav assignee:chrisflav |
1 |
65-50929 2 months ago |
191-79308 191 days ago |
82-7527 82 days |
| 12934 |
grunweg author:grunweg |
chore: replace more uses of > or ≥ by < or ≤ |
These were flagged by the linter in https://github.com/leanprover-community/mathlib4/pull/12879: it is easy to simple avoid > or ≥ in hypotheses or haves.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
help-wanted
|
41/42 |
Archive/Imo/Imo1962Q1.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2006Q3.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2019Q4.lean,Archive/Sensitivity.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Mathlib/Tactic/Linarith/Datatypes.lean,test/cancel_denoms.lean,test/congr.lean,test/interval_cases.lean,test/observe.lean |
15 |
12 |
['YaelDillies', 'adomani', 'github-actions', 'grunweg', 'jcommelin', 'urkud'] |
nobody |
1 |
64-32344 2 months ago |
669-1769 669 days ago |
1-73101 1 day |
| 32880 |
0xTerencePrime author:0xTerencePrime |
feat(Analysis/Asymptotics): define subpolynomial growth |
## Main definitions
* `Asymptotics.IsSubpolynomial l f g`: A function `f` has subpolynomial growth with respect to `g` along filter `l` if `f = O(1 + ‖g‖^k)` for some natural `k`.
## Main results
* `IsSubpolynomial.const`: Constant functions have subpolynomial growth
* `IsSubpolynomial.id`: Identity has subpolynomial growth
* `IsSubpolynomial.add`: Closure under addition
* `IsSubpolynomial.neg`: Closure under negation
* `IsSubpolynomial.sub`: Closure under subtraction
* `IsSubpolynomial.mul`: Closure under multiplication
* `IsSubpolynomial.pow`: Closure under powers
* `isSubpolynomial_iff_one_add`: Equivalence with `(1 + ‖g‖)^k` formulation
* `IsSubpolynomial.uniform`: Uniform bounds for finite families
## Implementation notes
The definition uses `1 + ‖g‖^k` rather than `(1 + ‖g‖)^k` as the primary form, with the equivalence established in `isSubpolynomial_iff_one_add`. Four private auxiliary lemmas handle the key inequalities needed for closure proofs.
Closes #32658
|
awaiting-author
t-analysis
new-contributor
|
185/0 |
Mathlib.lean,Mathlib/Analysis/Asymptotics/Subpolynomial.lean |
2 |
28 |
['0xTerencePrime', 'ADedecker', 'github-actions', 'j-loreaux'] |
ADedecker assignee:ADedecker |
1 |
63-65110 2 months ago |
63-65331 63 days ago |
22-22665 22 days |
| 29610 |
llllvvuu author:llllvvuu |
feat(LinearAlgebra): define LinearMap.Eigenbasis |
Some theorems are left TODO for follow-up work.
The definition is from @eric-wieser ([#Is there code for X? > diagonalizable linear maps @ 💬](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/diagonalizable.20linear.20maps/near/539163222)).
Co-authored-by: Aristotle Harmonic
---
- [x] depends on: #29420 (golfs some `[Nontrivial R]` assumptions)
- [x] depends on: #29791
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
awaiting-author
label:t-algebra$ |
455/5 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Spectrum.lean,Mathlib/LinearAlgebra/Eigenbasis.lean,Mathlib/LinearAlgebra/FreeModule/PID.lean,Mathlib/Order/CompleteLattice/Basic.lean |
5 |
31 |
['github-actions', 'joelriou', 'kckennylau', 'llllvvuu', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
joelriou assignee:joelriou |
1 |
61-70753 2 months ago |
118-18289 118 days ago |
20-33900 20 days |
| 20719 |
gio256 author:gio256 |
feat(AlgebraicTopology): delaborators for truncated simplicial notations |
We add delaborators for the following notations, introduced in #20688:
- `⦋m⦌ₙ`, which denotes the `m`-dimensional simplex in the `n`-truncated simplex category.
- `X _⦋m⦌ₙ`, which denotes the `m`-th term of an `n`-truncated simplicial object `X`.
- `X ^⦋m⦌ₙ`, which denotes the `m`-th term of an `n`-truncated cosimplicial object `X`.
If `pp.proofs` is set to `true`, we also pretty-print the proof `p : m ≤ n` for all three notations as `⦋m, p⦌ₙ`, `X _⦋m, p⦌ₙ`, and `X ^⦋m, p⦌ₙ`, respectively.
Credit to @kmill for one piece of code and much metaprogramming inspiration.
---
- [x] depends on: #20688
- [x] depends on: #23018
[](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 |
1 |
59-81695 2 months ago |
239-58835 239 days ago |
88-84229 88 days |
| 28796 |
grunweg author:grunweg |
feat: immersions are smooth |
The conventional textbook definition demands that an immersion be smooth.
When asking for the immersion to have local slice charts (as we do), this implies smoothness automatically.
---
- [x] depends on: #28701
- [x] depends on: #28793
- [x] depends on: #30356
- [x] depends on: #28853 (for simplicity)
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry
merge-conflict
awaiting-author
|
192/21 |
Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Geometry/Manifold/ContMDiff/Atlas.lean,Mathlib/Geometry/Manifold/Immersion.lean,Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Geometry/Manifold/LocalSourceTargetProperty.lean,Mathlib/Geometry/Manifold/SmoothEmbedding.lean |
6 |
55 |
['chrisflav', 'github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'sgouezel'] |
PatrickMassot assignee:PatrickMassot |
1 |
57-69669 1 month ago |
206-17990 206 days ago |
0-1 1 second |
| 32828 |
Hagb author:Hagb |
feat(Algebra/Order/Group/Defs): add `IsOrderedAddMonoid.toIsOrderedCancelAddMonoid'` |
It is similar to `IsOrderedAddMonoid.toIsOrderedCancelAddMonoid`, while with different hypotheses.
The conclusion `IsOrderedCancelMonoid α` on
`IsOrderedAddMonoid.toIsOrderedCancelAddMonoid` still holds when the hypothesis `CommGroup α` is weakened to `CancelCommMonoid α` while `PartialOrder α` is strengthened to `LinearOrder α`.
---
[`IsOrderedAddMonoid.toIsOrderedCancelAddMonoid`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=IsOrderedAddMonoid.toIsOrderedCancelAddMonoid#doc) and `IsOrderedAddMonoid.toIsOrderedCancelAddMonoid'`:
https://github.com/leanprover-community/mathlib4/blob/97f78b1a4311fed1844b94f1c069219a48a098e1/Mathlib/Algebra/Order/Group/Defs.lean#L52-L62
[](https://gitpod.io/from-referrer/)
|
awaiting-zulip
t-algebra
label:t-algebra$ |
4/0 |
Mathlib/Algebra/Order/Group/Defs.lean |
1 |
8 |
['Garmelon', 'Vierkantor', 'artie2000', 'github-actions', 'leanprover-radar'] |
eric-wieser assignee:eric-wieser |
2 |
53-77465 1 month ago |
53-77465 53 days ago |
40-42357 40 days |
| 21476 |
grunweg author:grunweg |
feat(lint-style): enable running on downstream projects |
Enable lint-style to run on downstream projects, by making the following modifications:
- allow passing an explicit list of libraries to lint: if nothing is passed, it lints `Mathlib`, `Archive` and `Counterexamples` (as before); otherwise, it lints precisely the passed modules
- only check init imports, undocumented scripts and the errors from `lint-style.py` when linting Mathlib
- make the style exceptions file configurable and optional: using the `nolints-file` flag, the exceptions file can be configured. If the flag is omitted, we try to find a file at `scripts/nolints-style.txt` --- and otherwise proceed with no style exceptions.
This means mathlib can continue unchanged, and downstream projects can either add an explicit exceptions file, or proceed without any exceptions.
After this PR, one should be able to run lint-style on a downstream project by `lake exe lint-style ProjectName`.
Prompted by [this zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/lint-style.20for.20downstream.20libraries).
---
- [x] depends on: #24570
- [x] depends on: #24953
(I did not test the last part.)
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-linter
awaiting-author
|
58/19 |
Mathlib/Tactic/Linter/TextBased.lean,scripts/lint-style.lean |
2 |
20 |
['Vierkantor', 'adomani', 'github-actions', 'grunweg', 'joneugster', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
joneugster assignee:joneugster |
1 |
53-15030 1 month ago |
304-75763 304 days ago |
43-17409 43 days |
| 34092 |
staroperator author:staroperator |
feat(SetTheory/ZFC): properties of `ZFSet.omega` |
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
77/10 |
Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Ordinal.lean,Mathlib/SetTheory/ZFC/PSet.lean |
3 |
25 |
['Komyyy', 'github-actions', 'mathlib4-merge-conflict-bot', 'staroperator', 'vihdzp'] |
alreadydone assignee:alreadydone |
1 |
46-65935 1 month ago |
46-65997 46 days ago |
58-24565 58 days |
| 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 |
1 |
41-53744 1 month ago |
41-53744 41 days ago |
94-3100 94 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 |
1 |
37-42744 1 month ago |
37-42744 37 days ago |
35-16104 35 days |
| 34573 |
Kha author:Kha |
chore(Analysis/Normed/Lp/SmoothApprox): shake public imports |
`lake shake --keep-implied --keep-prefix --fix --only Mathlib.Analysis.Normed.Lp.SmoothApprox`, using a dev version of `shake` |
|
7/2 |
Mathlib/Analysis/Normed/Lp/SmoothApprox.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/QExpansion.lean |
2 |
15 |
['Garmelon', 'JovanGerb', 'Kha', 'YaelDillies', 'github-actions', 'jcommelin', 'leanprover-radar'] |
nobody |
1 |
36-63105 1 month ago |
36-78693 36 days ago |
10-8979 10 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 |
1 |
35-19513 1 month ago |
35-19513 35 days ago |
103-37518 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 |
1 |
35-13549 1 month ago |
67-23269 67 days ago |
94-61486 94 days |
| 31141 |
peabrainiac author:peabrainiac |
feat(Analysis/Calculus): parametric integrals over smooth functions are smooth |
Show that for any smooth function `f : H × ℝ → E`, the parametric integral `fun x ↦ ∫ t in a..b, f (x, t) ∂μ` is smooth too.
The argument proceeds inductively, using the fact that derivatives of parametric integrals can themselves be computed as parametric integrals. The necessary lemmas on derivatives of parametric integrals already existed, but took some work to apply due to their generality; we state some convenient special cases.
---
- [x] depends on: #31077
[](https://gitpod.io/from-referrer/)
|
t-analysis
maintainer-merge
awaiting-author
|
470/12 |
Mathlib/Analysis/Calculus/ParametricIntegral.lean,Mathlib/Analysis/Calculus/ParametricIntervalIntegral.lean,Mathlib/MeasureTheory/Integral/DominatedConvergence.lean,Mathlib/Topology/NhdsWithin.lean,Mathlib/Topology/Separation/Regular.lean |
5 |
36 |
['fpvandoorn', 'github-actions', 'j-loreaux', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'peabrainiac', 'sgouezel'] |
j-loreaux assignee:j-loreaux |
1 |
34-6649 1 month ago |
34-6649 34 days ago |
33-85043 33 days |
| 11500 |
mcdoll author:mcdoll |
refactor(Topology/Algebra/Module/WeakDual): Clean up |
- Move `Dual` and `dualPairing` lower in the import-hierachy
- deduplicate `dualPairing`
- Bundle continuity statements to `CLM`s.
- Make `WeakDual` and `WeakSpace` reducible
- Remove `refine'` in favor of `refine`
---
Cleaning up `Analysis/NormedSpace/WeakDual` will be done in a second PR
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-topology
|
227/179 |
Mathlib.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/Dual.lean,Mathlib/Analysis/LocallyConvex/Polar.lean,Mathlib/Analysis/NormedSpace/Dual.lean,Mathlib/Analysis/NormedSpace/WeakDual.lean,Mathlib/Analysis/VonNeumannAlgebra/Basic.lean,Mathlib/MeasureTheory/Function/AEEqOfIntegral.lean,Mathlib/MeasureTheory/Measure/FiniteMeasure.lean,Mathlib/Topology/Algebra/Module/CharacterSpace.lean,Mathlib/Topology/Algebra/Module/Dual.lean,Mathlib/Topology/Algebra/Module/WeakDual.lean,docs/overview.yaml,docs/undergrad.yaml |
15 |
16 |
['ADedecker', 'grunweg', 'j-loreaux', 'kkytola', 'mathlib-bors', 'mcdoll', 'urkud'] |
nobody |
2 |
29-82697 1 month ago |
678-81897 678 days ago |
46-5571 46 days |
| 35134 |
fpvandoorn author:fpvandoorn |
feat(translate): print constant names with hover info |
Part of #34846.
---
[](https://gitpod.io/from-referrer/)
|
t-meta
awaiting-author
merge-conflict
|
46/28 |
Mathlib/Tactic/Translate/Core.lean,MathlibTest/toAdditive.lean |
2 |
6 |
['JovanGerb', 'github-actions', 'mathlib-merge-conflicts'] |
JovanGerb assignee:JovanGerb |
1 |
29-74617 1 month ago |
31-67073 31 days ago |
2-13760 2 days |
| 24965 |
erdOne author:erdOne |
refactor: Make `IsLocalHom` take unbundled map |
Under the current definition, `IsLocalHom f` and `IsLocalHom f.toMonoidHom` are not defeq, which causes quite some annoyances. We also have a consensus to not use `*HomClass` in definitions. As a result, we change `IsLocalHom` to take an unbundled function instead of a funlike.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
delegated
merge-conflict
label:t-algebra$ |
18/9 |
Mathlib/Algebra/Group/Units/Hom.lean,Mathlib/AlgebraicGeometry/Scheme.lean,Mathlib/Geometry/RingedSpace/LocallyRingedSpace.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/RingTheory/LocalRing/ResidueField/Basic.lean |
5 |
15 |
['adomani', 'alreadydone', 'erdOne', 'eric-wieser', 'github-actions', 'jcommelin', 'leanprover-community-bot-assistant', 'mathlib-bors', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vihdzp'] |
mattrobball assignee:mattrobball |
1 |
27-49128 27 days ago |
119-14897 119 days ago |
24-84527 24 days |
| 30666 |
erdOne author:erdOne |
feat(NumberTheory): every number field has a ramified prime |
---
[](https://gitpod.io/from-referrer/)
|
t-number-theory
awaiting-author
t-algebra
label:t-algebra$ |
220/20 |
Mathlib.lean,Mathlib/Algebra/GroupWithZero/Action/TransferInstance.lean,Mathlib/Algebra/Ring/Int/Field.lean,Mathlib/NumberTheory/NumberField/Basic.lean,Mathlib/NumberTheory/NumberField/Discriminant/Different.lean,Mathlib/NumberTheory/NumberField/ExistsRamified.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean |
9 |
24 |
['erdOne', 'github-actions', 'jcommelin', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'tb65536', 'xroblot'] |
jcommelin assignee:jcommelin |
1 |
25-50048 25 days ago |
127-82666 127 days ago |
13-79962 13 days |
| 35524 |
grunweg author:grunweg |
feat: text-based linter against \t followed by tactic mode |
Wait for the zulip discussion to converge. **If** there is consensus in favour of this change, summarise the motivation here.
[zulip discuss](https://leanprover.zulipchat.com/#narrow/channel/345428-mathlib-reviewers/topic/proposal.3A.20no.20more.20use.20of.20.60.E2.96.B8.60.20in.20Mathlib.3F/with/574680826)
---
There are currently 80 remaining exceptions in mathlib: ideally, these would get fixed before merging this.
Works best when combined with #35523.
[](https://gitpod.io/from-referrer/)
|
t-linter
awaiting-zulip
|
23/2 |
Mathlib/Tactic/Linter/TextBased.lean |
1 |
4 |
['github-actions', 'grunweg', 'joneugster', 'vihdzp'] |
nobody |
1 |
24-76086 24 days ago |
26-12366 26 days ago |
0-187 3 minutes |
| 34315 |
LessnessRandomness author:LessnessRandomness |
feat(Combinatorics/SimpleGraph/Bipartite): Prove upper bound of edge set cardinality of bipartite graph |
Two ways to express upper bound of the edge set of bipartite graph:
1) If the cardinalities of both parts/sets, that make bipartite graph, are known, then the upper bound is equal to product of the cardinalities of both parts;
2) Four times of the cardinality of the edge set is less or equal to squared cardinality of vertex set.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
53/0 |
Mathlib/Combinatorics/SimpleGraph/Bipartite.lean |
1 |
55 |
['LessnessRandomness', 'SnirBroshi', 'b-mehta', 'github-actions', 'vlad902'] |
awainverse assignee:awainverse |
1 |
23-86016 23 days ago |
24-448 24 days ago |
48-8195 48 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 |
1 |
21-55098 21 days ago |
97-55968 97 days ago |
2-78371 2 days |
| 30982 |
jsm28 author:jsm28 |
feat(Geometry/Euclidean/Angle/Incenter): angle bisection and the incenter |
Add lemmas relating the incenter and excenters of a simplex to angle bisection, both generally for a simplex and more specifically with oriented angles for a triangle.
More specific lemmas for a simplex (identifying exactly which excenter corresponds to which bisectors) will require various additional API for bisectors of angles betweeen oriented affine subspaces (but for the most common applications to typical plane geometry problems, I expect the triangle lemmas with oriented angles to be more useful).
---
- [ ] depends on: #30474
- [ ] depends on: #30477
- [ ] depends on: #30600
- [ ] depends on: #30703
- [ ] depends on: #30938
- [ ] depends on: #30981
[](https://gitpod.io/from-referrer/)
|
t-euclidean-geometry |
269/0 |
Mathlib.lean,Mathlib/Geometry/Euclidean/Angle/Incenter.lean |
2 |
6 |
['Parcly-Taxel', 'github-actions', 'jsm28', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'wwylele'] |
JovanGerb assignee:JovanGerb |
2 |
21-42392 21 days ago |
34-84080 34 days ago |
34-86111 34 days |
| 35494 |
Timeroot author:Timeroot |
feat(Topology/Perfect): simp frontier_singleton |
Add simp lemma
```
theorem frontier_singleton {X : Type*} [TopologicalSpace X] [T1Space X]
[PerfectSpace X] (p : X) : frontier {p} = {p}
```
---
[](https://gitpod.io/from-referrer/)
|
t-topology
awaiting-author
|
4/0 |
Mathlib/Topology/Perfect.lean |
1 |
4 |
['Timeroot', 'github-actions', 'urkud', 'vihdzp'] |
urkud assignee:urkud |
1 |
20-78275 20 days ago |
21-37411 21 days ago |
5-41003 5 days |
| 34805 |
DavidLedvinka author:DavidLedvinka |
feat(Tactic): generalize ofScientific NormNum extension to `DivisionSemiring` |
Co-authored-by: @hrmacbeth |
t-meta
awaiting-author
merge-conflict
|
68/20 |
Mathlib/Tactic/NormNum/Inv.lean,Mathlib/Tactic/NormNum/OfScientific.lean,MathlibTest/norm_num.lean |
3 |
25 |
['DavidLedvinka', 'JovanGerb', 'b-mehta', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'thorimur'] |
JovanGerb assignee:JovanGerb |
1 |
20-51058 20 days ago |
20-58197 20 days ago |
20-41410 20 days |
| 35239 |
JohnnyTeutonic author:JohnnyTeutonic |
feat(Logic/Function): add Lawvere fixed-point theorem |
Adds Lawvere's fixed-point theorem.
This is the classical diagonal argument that generalizes \cantor_surjective\ and \cantor_injective\ (both already in Mathlib). The proof is a two-line term-mode construction.
|
t-logic
awaiting-author
merge-conflict
|
12/3 |
Mathlib/Logic/Function/Basic.lean |
1 |
8 |
['JohnnyTeutonic', 'github-actions', 'mathlib-merge-conflicts', 'robin-carlier', 'vihdzp'] |
nobody |
1 |
19-77401 19 days ago |
31-69185 31 days ago |
0-33100 9 hours |
| 33479 |
zcyemi author:zcyemi |
feat(Geometry/Euclidean/Sphere/Power): Add theorem about cospherical points on two intersecting lines |
---
Add `cospherical_of_mul_dist_eq_mul_dist_of_angle_eq_pi`.
~~This theorem is the converse of `EuclideanGeometry.mul_dist_eq_mul_dist_of_cospherical_of_angle_eq_pi`.
However, the ambient type is required to be two-dimensional, i.e. `Fact (finrank ℝ V = 2)`.
I don‘t think (not entirely sure) that lifting the ambient space from dimension 2 to arbitrary dimension is reasonable for this theorem, since the proof is entirely carried out in a two-dimensional plane.
Therefore, I place this theorem in `Euclidean/Angle/Sphere` rather than `Euclidean/Sphere/Power`.~~
Deps:
- [ ] depends on: #33365
|
large-import
t-euclidean-geometry
delegated
|
109/4 |
Mathlib/Geometry/Euclidean/Sphere/Basic.lean,Mathlib/Geometry/Euclidean/Sphere/Power.lean |
2 |
18 |
['github-actions', 'jsm28', 'mathlib-bors', 'mathlib4-dependent-issues-bot', 'ocfnash', 'zcyemi'] |
JovanGerb assignee:JovanGerb |
1 |
18-84903 18 days ago |
18-84904 18 days ago |
8-70851 8 days |
| 34932 |
erdOne author:erdOne |
feat(AlgebraicGeometry): formally etale morphisms |
---
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry
merge-conflict
delegated
|
163/12 |
Mathlib.lean,Mathlib/AlgebraicGeometry/Morphisms/Etale.lean,Mathlib/AlgebraicGeometry/Morphisms/FormallyEtale.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean,Mathlib/RingTheory/RingHom/Etale.lean |
5 |
17 |
['chrisflav', 'erdOne', 'github-actions', 'joneugster', 'mathlib-bors', 'mathlib-merge-conflicts', 'ocfnash'] |
nobody |
1 |
18-42564 18 days ago |
20-51053 20 days ago |
11-35673 11 days |
| 35656 |
euprunin author:euprunin |
chore(ModelTheory): golf proofs |
This PR removes unused `have`/`haveI`/`let`/`letI` calls.
The goal of this golfing PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective.
Trace profiling results (differences <30 ms considered measurement noise):
* `FirstOrder.Field.realize_genericMonicPolyHasRoot`: unchanged 🎉
* `FirstOrder.Language.exists_cg_is_age_of`: unchanged 🎉
* `FirstOrder.Language.Theory.models_formula_iff_onTheory_models_equivSentence`: unchanged 🎉
* `FirstOrder.Language.Sentence.realize_cardGe`: unchanged 🎉
* `FirstOrder.Language.Ultraproduct.boundedFormula_realize_cast`: unchanged 🎉
Profiled using `set_option trace.profiler true in`.
This golfing PR is batched under the following guidelines:
* Up to ~5 changed files per PR
* Up to ~25 changed declarations per PR
* Up to ~100 changed lines per PR
---
[](https://gitpod.io/from-referrer/)
|
t-logic |
3/16 |
Mathlib/ModelTheory/Algebra/Field/IsAlgClosed.lean,Mathlib/ModelTheory/Fraisse.lean,Mathlib/ModelTheory/Satisfiability.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Ultraproducts.lean |
5 |
6 |
['euprunin', 'github-actions', 'leanprover-radar', 'vihdzp'] |
nobody |
1 |
18-23748 18 days ago |
22-56253 22 days ago |
22-55806 22 days |
| 34583 |
adomani author:adomani |
feat: basic properties of subnormal subgroups |
This is a follow up to #34284.
Co-authored-by: Inna Capdeboscq
---
[](https://gitpod.io/from-referrer/)
|
large-import
t-group-theory
|
107/3 |
Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/Group/Subgroup/Pointwise.lean,Mathlib/GroupTheory/IsSubnormal.lean |
3 |
38 |
['LLaurance', 'adomani', 'github-actions', 'tb65536'] |
mattrobball assignee:mattrobball |
1 |
17-77329 17 days ago |
17-77140 17 days ago |
33-71895 33 days |
| 35250 |
vlad902 author:vlad902 |
feat(SimpleGraph): redefine `cycleGraph` independent of `circulantGraph` |
Right now the `cycleGraph` definition relies on `circulantGraph` which requires importing Group definitions from the algebra hierarchy. This causes large-imports for me in later PRs where I try to make more widespread use of cycleGraphs, so here I redefine it to be its own independent object, and leave moving it from `Circulant.lean` to another PR (this is parallel to #35084.)
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
10/10 |
Mathlib/Combinatorics/SimpleGraph/Circulant.lean |
1 |
4 |
['SnirBroshi', 'github-actions', 'vihdzp', 'vlad902'] |
kmill assignee:kmill |
2 |
17-44098 17 days ago |
31-86391 31 days ago |
31-85944 31 days |
| 35592 |
SnirBroshi author:SnirBroshi |
chore(Order/Defs/Unbundled): deprecate `def Transitive` in favor of `class IsTrans` |
---
[`def Transitive`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/Defs/Unbundled.html#Transitive)
[`class IsTrans`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/Defs/Unbundled.html#IsTrans)
[Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Relation.20properties.20duplication/near/544638270)
[](https://gitpod.io/from-referrer/)
|
t-order |
141/110 |
Mathlib/Algebra/Group/Semiconj/Defs.lean,Mathlib/CategoryTheory/Abelian/Pseudoelements.lean,Mathlib/CategoryTheory/IsConnected.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/FiveWheelLike.lean,Mathlib/Computability/Reduce.lean,Mathlib/Data/List/MinMax.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/WSeq/Relation.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/Logic/Relation.lean,Mathlib/ModelTheory/Order.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/Order/Defs/Unbundled.lean,Mathlib/Order/Interval/Finset/Basic.lean,Mathlib/Order/Quotient.lean,Mathlib/Order/RelClasses.lean,Mathlib/Topology/Connected/Clopen.lean,Mathlib/Topology/Metrizable/Uniformity.lean |
20 |
1 |
['github-actions', 'vihdzp'] |
pechersky assignee:pechersky |
1 |
17-44094 17 days ago |
24-39040 24 days ago |
24-40205 24 days |
| 34440 |
grunweg author:grunweg |
feat: linter for name components in uppercase |
Per the naming convention, these are errors (unless they are an abbreviation).
Mathlib has *many* violations at the moment: for this reason, we add this as an environment linter
and automatically add all current exceptions. Once these have been fixed, converting to a syntax linter
is desirable.
Until then, track the number of such exceptions as technical debt.
---
[Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/naming.20convention.20linter/with/570617527)
Note to self: wait for CI, then do a final nolints update. and try to implement the follow-up soon
[](https://gitpod.io/from-referrer/)
|
t-linter
large-import
awaiting-author
merge-conflict
|
1018/9 |
Mathlib/Tactic/Linter/Style.lean,MathlibTest/DoubleUnderscore.lean,MathlibTest/HashLint.lean,MathlibTest/Lint.lean,MathlibTest/LintStyle.lean,scripts/nolints.json,scripts/technical-debt-metrics.sh |
7 |
27 |
['Vierkantor', 'github-actions', 'grunweg', 'joneugster', 'mathlib-merge-conflicts'] |
joneugster assignee:joneugster |
1 |
16-81806 16 days ago |
27-15471 27 days ago |
13-82065 13 days |
| 34875 |
banrovegrie author:banrovegrie |
feat(LinearAlgebra/Matrix): add Sherman-Morrison formula |
Mathlib has the matrix determinant lemma (`det_add_replicateCol_mul_replicateRow` in SchurComplement.lean) but lacked the corresponding inverse formula. This PR fills that gap.
- Add `Matrix.inv_add_vecMulVec`: Sherman-Morrison formula for `(A + uv^T)^{-1}`
- Add `Matrix.inv_sub_vecMulVec`: subtraction variant
- Add `Matrix.isUnit_det_add_vecMulVec`: invertibility under the formula's hypotheses
## Test plan
- [x] `lake build` passes
- [x] Lines within 100 char limit
- [x] All declarations have docstrings |
t-algebra
new-contributor
label:t-algebra$ |
135/0 |
Mathlib.lean,Mathlib/LinearAlgebra/Matrix/ShermanMorrison.lean |
2 |
11 |
['Xxxjdjdid', 'banrovegrie', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] |
kim-em assignee:kim-em |
1 |
15-74969 15 days ago |
39-78786 39 days ago |
39-78339 39 days |
| 31891 |
jsm28 author:jsm28 |
feat(Geometry/Euclidean/Sphere/OrthRadius): lemmas for setting up and using polars |
Add further lemmas about `orthRadius` that are of use in setting up and using poles and polars. In particular,
`ncard_inter_orthRadius_eq_two_of_dist_lt_radius` is the key part of showing that, in two dimensions, there are exactly two tangents to a circle from a point outside that circle (where the points of tangency lie on the polar of the point from which the two tangents are drawn).
---
Feel free to golf the proof of `ncard_inter_orthRadius_eq_two_of_dist_lt_radius`, it could probably be rather shorter.
---
- [ ] depends on: #32296
[](https://gitpod.io/from-referrer/)
|
t-euclidean-geometry |
265/7 |
Mathlib/Geometry/Euclidean/Sphere/OrthRadius.lean,Mathlib/Geometry/Euclidean/Sphere/Tangent.lean |
2 |
28 |
['Parcly-Taxel', 'eric-wieser', 'github-actions', 'jsm28', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot'] |
JovanGerb assignee:JovanGerb |
1 |
15-43917 15 days ago |
27-415 26 days ago |
115-21195 115 days |
| 35627 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Finite): min/max degrees of top/bot |
And a couple of lemmas about `IsRegularOfDegree`, e.g. the empty graph is regular of any degree.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
28/1 |
Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/StronglyRegular.lean |
2 |
6 |
['SnirBroshi', 'github-actions', 'vlad902'] |
nobody |
1 |
13-27198 13 days ago |
23-33947 23 days ago |
23-33500 23 days |
| 26975 |
Whysoserioushah author:Whysoserioushah |
feat: a norm_num extension for complex numbers |
co-authored-by : @thefundamentaltheor3m, @hrmacbeth
---
[](https://gitpod.io/from-referrer/)
|
t-meta
awaiting-author
|
424/12 |
Mathlib.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/NormNum/Eq.lean,Mathlib/Tactic/NormNum/NormNumI.lean,Mathlib/Tactic/NormNum/Result.lean,MathlibTest/norm_numI.lean |
7 |
57 |
['JovanGerb', 'Vierkantor', 'Whysoserioushah', 'dupuisf', 'eric-wieser', 'github-actions', 'grunweg', 'hrmacbeth', 'mathlib4-merge-conflict-bot'] |
Vierkantor assignee:Vierkantor |
1 |
12-82464 12 days ago |
12-82464 12 days ago |
112-29409 112 days |
| 30431 |
kckennylau author:kckennylau |
feat(RingTheory): a homogeneous submodule is the span of its homogeneous elements |
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
merge-conflict
|
22/0 |
Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Submodule.lean |
2 |
9 |
['alreadydone', 'github-actions', 'kckennylau', 'mariainesdff', 'mathlib-merge-conflicts'] |
mariainesdff assignee:mariainesdff |
1 |
11-63417 11 days ago |
133-64278 133 days ago |
23-31743 23 days |
| 34245 |
staroperator author:staroperator |
feat(Data/Set): add `Set.Uncountable` |
There are `Set` specialized shortcuts `Set.Finite`, `Set.Infinite` and `Set.Countable`, but lacking `Set.Uncountable`. I find this useful in #34246.
---
[](https://gitpod.io/from-referrer/)
|
t-data
awaiting-zulip
|
82/4 |
Mathlib/Analysis/Real/Cardinality.lean,Mathlib/Data/Set/Countable.lean,Mathlib/SetTheory/Cardinal/Basic.lean |
3 |
17 |
['github-actions', 'joneugster', 'staroperator', 'vihdzp'] |
joneugster assignee:joneugster |
1 |
11-11666 11 days ago |
41-71313 41 days ago |
12-21154 12 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 |
1 |
11-3409 11 days ago |
271-3148 271 days ago |
91-69159 91 days |
| 19275 |
eric-wieser author:eric-wieser |
fix: if nolint files change, do a full rebuild |
Otherwise CI will succeed when removing entries from the file, but fail later when someone changes something unrelated.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
8/0 |
lakefile.lean |
1 |
22 |
['YaelDillies', 'adomani', 'eric-wieser', 'fpvandoorn', 'github-actions', 'grunweg', 'mathlib-bors'] |
nobody |
1 |
11-3392 11 days ago |
482-44027 482 days ago |
0-214 3 minutes |
| 33592 |
nielstron author:nielstron |
feat(Computability/ContextFreeGrammar): mapping between two types of nonterminal symbols |
This PR picks up https://github.com/leanprover-community/mathlib4/pull/15895 and resolves the failing lemma by redefining Good symbols.
---
I checked that https://github.com/leanprover-community/mathlib4/pull/13514 builds correctly when based on this build. PR for that is #33599
This is my first contribution please let me know of any changes I should outline.
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-computability
new-contributor
|
160/0 |
Mathlib/Computability/ContextFreeGrammar.lean |
1 |
34 |
['YaelDillies', 'github-actions', 'madvorak', 'nielstron'] |
nobody |
1 |
10-78808 10 days ago |
60-20935 60 days ago |
10-68503 10 days |
| 33972 |
YuvalFilmus author:YuvalFilmus |
feat(Analysis/Polynomial/Order): polynomial has fixed sign beyond largest root |
We prove that a polynomial has fixed sign beyond its largest root.
One could also prove similar results about the smallest root, but they will be more awkward since they will depend on the parity of the (natural) degree; suggestions welcome (perhaps for a future PR).
---
[](https://gitpod.io/from-referrer/)
|
t-analysis
awaiting-zulip
|
134/0 |
Mathlib.lean,Mathlib/Analysis/Polynomial/Order.lean |
2 |
14 |
['YuvalFilmus', 'artie2000', 'github-actions', 'mathlib-merge-conflicts', 'urkud', 'vihdzp'] |
ADedecker and urkud assignee:urkud assignee:ADedecker |
1 |
10-71125 10 days ago |
21-75232 21 days ago |
39-23486 39 days |
| 35760 |
astrainfinita author:astrainfinita |
chore: deprecate `ConditionallyCompleteLinearOrderedField` |
Use the new mixin typeclass instead. Also, move the API for conditionally complete linear ordered fields into the `ConditionallyCompleteLinearOrderedField` namespace, and make instances scoped to this namespace. We should usually use `ℝ` instead.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-order
maintainer-merge
label:t-algebra$ |
124/52 |
Mathlib.lean,Mathlib/Algebra/Order/CompleteField.lean,Mathlib/Algebra/Order/Ring/StandardPart.lean,Mathlib/Data/Real/CompleteField.lean,Mathlib/Data/Real/Hom.lean |
5 |
6 |
['Vierkantor', 'astrainfinita', 'github-actions', 'leanprover-radar'] |
Vierkantor assignee:Vierkantor |
1 |
10-16023 10 days ago |
11-82144 11 days ago |
19-74813 19 days |
| 35654 |
euprunin author:euprunin |
chore: golf using `grind` |
The goal of this golfing PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective.
Trace profiling results (differences <30 ms considered measurement noise):
* `CochainComplex.HomComplex.mem_coboundaries_iff`: unchanged 🎉
* `integral_cos_mul_complex`: unchanged 🎉
* `List.next_getLast_cons`: unchanged 🎉
* `foldl_argAux_mem`: unchanged 🎉
* `Equiv.Perm.support_swap`: unchanged 🎉
* `Fermat42.mul`: unchanged 🎉
* `Filter.high_scores`: 155 ms before, 108 ms after 🎉
* `IocProdIoc_preimage`: unchanged 🎉
Profiled using `set_option trace.profiler true in`.
This golfing PR is batched under the following guidelines:
* Up to ~5 changed files per PR
* Up to ~25 changed declarations per PR
* Up to ~100 changed lines per PR
---
[](https://gitpod.io/from-referrer/)
|
|
8/41 |
Mathlib/Algebra/Homology/HomotopyCategory/HomComplexCohomology.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/Data/List/MinMax.lean,Mathlib/GroupTheory/Perm/Support.lean,Mathlib/NumberTheory/FLT/Four.lean,Mathlib/Probability/Kernel/IonescuTulcea/Maps.lean |
6 |
4 |
['euprunin', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] |
kex-y assignee:kex-y |
1 |
8-63420 8 days ago |
8-63445 8 days ago |
21-61816 21 days |
| 22366 |
kim-em author:kim-em |
feat: `check_equalities` tactic for diagnosing defeq problems |
The `check_equalities` tactic,
which checks the typing of equalities in the goal,
reporting discrepancies between the implicit type argument of the equality,
and the inferred types of the left and right hand sides,
at "instances and reducible" transparency.
Reports from this tactic do not necessarily indicate a problem,
although typically `simp` should reduce rather than increase the reported discrepancies.
`check_equalities` may be useful in diagnosing uses of `erw`. |
t-meta |
123/4 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Basic.lean,Mathlib/Tactic/CategoryTheory/CheckCompositions.lean,Mathlib/Tactic/CheckEqualities.lean,Mathlib/Tactic/Common.lean,MathlibTest/check_equalities.lean |
7 |
21 |
['adomani', 'b-mehta', 'eric-wieser', 'fpvandoorn', 'github-actions', 'grunweg', 'kim-em', 'mathlib-bors', 'mathlib4-merge-conflict-bot'] |
adamtopaz assignee:adamtopaz |
1 |
7-44097 7 days ago |
367-79448 367 days ago |
15-14325 15 days |
| 35677 |
euprunin author:euprunin |
chore(SetTheory): golf proofs |
This PR removes unused `have`/`haveI`/`let`/`letI` calls + some small similar cleanups.
The goal of this golfing PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective.
Trace profiling results (differences <30 ms considered measurement noise):
* `Cardinal.mul_eq_self`: unchanged 🎉
* `Cardinal.succ_natCast`: unchanged 🎉
* `Ordinal.exists_fundamental_sequence`: unchanged 🎉
* `Cardinal.mk_subtype_le_of_countable_eventually_mem`: unchanged 🎉
* `Nat.card_image_of_injOn`: unchanged 🎉
* `mul_le_of_limit_aux`: unchanged 🎉
Profiled using `set_option trace.profiler true in`.
This golfing PR is batched under the following guidelines:
* Up to ~5 changed files per PR
* Up to ~25 changed declarations per PR
* Up to ~100 changed lines per PR
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
2/11 |
Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Cardinal/CountableCover.lean,Mathlib/SetTheory/Cardinal/Finite.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/ZFC/PSet.lean |
7 |
4 |
['euprunin', 'github-actions', 'leanprover-radar', 'vihdzp'] |
alreadydone assignee:alreadydone |
1 |
7-44090 7 days ago |
22-18826 22 days ago |
22-18379 22 days |
| 34249 |
xyzw12345 author:xyzw12345 |
feat(GroupTheory/GroupAction/Hom): connect existing definitions `MulDistribMulActionHom` and `DistribMulActionHom` using `to_additive` |
In this PR, we defined `MulDistribMulActionHom` corresponding to `DistribMulActionHom`, which will be used in the multiplicative version of non-Abelian group cohomology.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
delegated
awaiting-author
label:t-algebra$ |
174/69 |
Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/GroupTheory/GroupAction/Hom.lean |
2 |
7 |
['github-actions', 'mathlib-bors', 'ocfnash'] |
ocfnash assignee:ocfnash |
1 |
6-61031 6 days ago |
24-73249 24 days ago |
29-31450 29 days |
| 34637 |
mcdoll author:mcdoll |
feat(Analysis/Distribution): support |
We define the support of distributions. The definition applies to both tempered and classical distributions, but for this PR we only prove some elementary statements for tempered distributions.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
255/0 |
Mathlib.lean,Mathlib/Analysis/Distribution/Support.lean,Mathlib/Topology/MetricSpace/Bounded.lean |
3 |
21 |
['ADedecker', 'github-actions', 'lauramonk', 'mcdoll', 'urkud'] |
ADedecker assignee:ADedecker |
1 |
6-52385 6 days ago |
7-72665 7 days ago |
32-59547 32 days |
| 35649 |
JovanGerb author:JovanGerb |
feat(Order/GaloisConnection/Defs): use `to_dual` for `GaloisInsertion`/`GaloisCoinsertion` |
This PR uses `to_dual` to generate declarations about `GaloisCoinsertion` from those for `GaloisInsertion`.
- An entry is added to the name translation dictionary for this particular name translation.
- One lemma in another file had to be tagged.
- Some uses of `to_dual` have been replaced with `to_dual none`, because I had written them before `to_dual none` existed.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
42/84 |
Mathlib/Algebra/Group/Submonoid/Units.lean,Mathlib/Order/GaloisConnection/Defs.lean,Mathlib/Order/Monotone/Defs.lean,Mathlib/Tactic/Translate/ToDual.lean,Mathlib/Topology/Order.lean |
5 |
5 |
['JovanGerb', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] |
nobody |
1 |
6-45870 6 days ago |
6-45899 6 days ago |
9-81731 9 days |
| 31135 |
kckennylau author:kckennylau |
feat(RingTheory): is localization iff is localization on saturation |
In this PR we show that `A` is a localization of `R` on the submonoid `S` iff it is so on the saturation of `S`.
Crucially, the saturation of `S` is precisely the elements that become a unit in `A`.
---
- [x] depends on: #31132
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
53/0 |
Mathlib.lean,Mathlib/RingTheory/Localization/Saturation.lean |
2 |
11 |
['alreadydone', 'chrisflav', 'github-actions', 'kckennylau', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] |
mattrobball assignee:mattrobball |
1 |
6-44089 6 days ago |
11-77032 11 days ago |
11-78471 11 days |
| 35709 |
tb65536 author:tb65536 |
feat(AlgebraicGeometry/EllipticCurve/Reduction): define multiplicative and additive reduction |
This PR adds definitions of multiplicative and additive reduction.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-algebraic-geometry
t-number-theory
label:t-algebra$ |
86/5 |
Mathlib/AlgebraicGeometry/EllipticCurve/Reduction.lean |
1 |
6 |
['Multramate', 'github-actions', 'tb65536'] |
riccardobrasca assignee:riccardobrasca |
1 |
6-44084 6 days ago |
21-18225 21 days ago |
21-17779 21 days |
| 30526 |
SnirBroshi author:SnirBroshi |
chore(Logic/Relation): use `≤` to spell subrelation |
Replace every `∀ x y, r x y → r' x y` with `r ≤ r'`
---
[](https://gitpod.io/from-referrer/)
|
t-logic |
161/136 |
Mathlib.lean,Mathlib/Algebra/Category/Grp/FilteredColimits.lean,Mathlib/Algebra/Category/ModuleCat/FilteredColimits.lean,Mathlib/Algebra/Category/MonCat/FilteredColimits.lean,Mathlib/CategoryTheory/Action.lean,Mathlib/CategoryTheory/ConnectedComponents.lean,Mathlib/CategoryTheory/Filtered/Connected.lean,Mathlib/CategoryTheory/IsConnected.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/Types/Coequalizers.lean,Mathlib/CategoryTheory/Limits/Types/Filtered.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Computability/ContextFreeGrammar.lean,Mathlib/Computability/TuringMachine/Config.lean,Mathlib/Data/PFunctor/Multivariate/M.lean,Mathlib/Data/Quot.lean,Mathlib/FieldTheory/PerfectClosure.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/Logic/Relation.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Defs/Prop.lean,Mathlib/Order/Interval/Finset/Basic.lean,Mathlib/Order/WellFoundedSet.lean,Mathlib/Topology/Gluing.lean |
25 |
15 |
['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'thorimur', 'vihdzp'] |
thorimur assignee:thorimur |
1 |
6-26097 6 days ago |
6-26124 6 days ago |
52-50103 52 days |
| 33355 |
0xTerencePrime author:0xTerencePrime |
feat(Combinatorics/SimpleGraph/Connectivity): define vertex connectivity |
This PR introduces the foundations of vertex connectivity for simple graphs, providing a counterpart to the edge connectivity theory in #32870.
### Main definitions
- `SimpleGraph.IsVertexReachable`: vertices remain reachable after removing strictly fewer than `k` other vertices.
- `SimpleGraph.IsVertexConnected`: a graph is `k`-vertex-connected if its order is strictly greater than `k` and any two distinct vertices are `k`-vertex-reachable.
Includes basic characterizations for $k=0$ and $k=1$, along with monotonicity lemmas (`anti` and `mono`). |
new-contributor
t-combinatorics
awaiting-author
|
199/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/VertexConnectivity.lean,Mathlib/Combinatorics/SimpleGraph/IsolateVerts.lean |
3 |
138 |
['0xTerencePrime', 'SnirBroshi', 'SproutSeeds', 'YaelDillies', 'github-actions', 'vihdzp'] |
YaelDillies assignee:YaelDillies |
1 |
5-13355 5 days ago |
19-37405 19 days ago |
40-69612 40 days |
| 36166 |
wwylele author:wwylele |
feat(Data/Nat): formula for cardinal of finsuppAntidiag on Nat |
Co-authored-by: Bingyu Xia
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge |
82/0 |
Mathlib.lean,Mathlib/Algebra/Order/Antidiag/FinsuppEquiv.lean |
2 |
16 |
['BryceT233', 'copilot-pull-request-reviewer', 'github-actions', 'tb65536', 'wwylele'] |
tb65536 assignee:tb65536 |
1 |
5-6090 5 days ago |
5-51206 5 days ago |
11-27402 11 days |
| 26770 |
Jun2M author:Jun2M |
feat(Combinatorics/Graph): subgraph relations on `Graph` |
This PR creates a new file `Combinatorics/Graph/Subgraph.lean`. In it, the PR introduces a partial order on graphs by subgraph relation, defines relations `IsInducedSubgraph`, `IsSpanningSubgraph` and `IsClosedSubgraph`.
Co-authored-by: Peter Nelson
---
- [x] depends on: #34783
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
362/0 |
Mathlib.lean,Mathlib/Combinatorics/Graph/Subgraph.lean |
2 |
81 |
['Jun2M', 'YaelDillies', 'github-actions', 'lauramonk', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] |
YaelDillies assignee:YaelDillies |
2 |
4-72759 4 days ago |
10-71969 10 days ago |
169-33171 169 days |
| 35622 |
SnirBroshi author:SnirBroshi |
feat(Logic/Function/Basic): `onFun` and `swap` preserve relation properties |
---
[](https://gitpod.io/from-referrer/)
|
t-logic |
141/19 |
Mathlib/Data/DFinsupp/WellFounded.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/Logic/Function/Defs.lean,Mathlib/Order/Defs/Unbundled.lean,Mathlib/Order/OrderIsoNat.lean,Mathlib/Order/RelClasses.lean,Mathlib/Order/WellFounded.lean,Mathlib/Order/WithBot.lean |
8 |
7 |
['SnirBroshi', 'github-actions', 'leanprover-radar', 'vihdzp'] |
nobody |
1 |
4-69519 4 days ago |
11-34512 11 days ago |
23-17916 23 days |
| 35867 |
edegeltje author:edegeltje |
feat(CategoryTheory/Topos): Define subobject classifier for sheaf of types |
This PR defines `Sheaf.classifier J : Classifier (Sheaf J (Type (max u v))`, which is the last ingredient missing to sheaf categories being elementary topoi.
adapted from:
https://github.com/edegeltje/CwFTT/blob/591d4505390172ae70e1bc97544d293a35cc0b3f/CwFTT/Classifier/Sheaf.lean
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory
maintainer-merge
|
309/37 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/IsTerminal.lean,Mathlib/CategoryTheory/Limits/Types/Products.lean,Mathlib/CategoryTheory/Sites/Closed.lean,Mathlib/CategoryTheory/Sites/Sheaf.lean,Mathlib/CategoryTheory/Topos/Sheaf.lean |
6 |
68 |
['chrisflav', 'dagurtomas', 'edegeltje', 'github-actions', 'joelriou', 'mathlib-merge-conflicts', 'mathlib-splicebot', 'robin-carlier'] |
chrisflav assignee:chrisflav |
1 |
4-53699 4 days ago |
4-66947 4 days ago |
14-80416 14 days |
| 36338 |
harahu author:harahu |
doc(Algebra): fix typos |
Found by `PyCharm`'s code inspection tool.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
documentation
label:t-algebra$ |
30/30 |
Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Category/ModuleCat/Ulift.lean,Mathlib/Algebra/FiniteSupport/Basic.lean,Mathlib/Algebra/FiniteSupport/Defs.lean,Mathlib/Algebra/Group/Action/End.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Homology/BifunctorShift.lean,Mathlib/Algebra/Homology/CochainComplexPlus.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Map.lean,Mathlib/Algebra/Homology/Embedding/ExtendHomotopy.lean,Mathlib/Algebra/Homology/HomologicalBicomplex.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplexSingle.lean,Mathlib/Algebra/Homology/HomotopyCategory/Pretriangulated.lean,Mathlib/Algebra/Homology/HomotopyCategory/SingleFunctors.lean,Mathlib/Algebra/Homology/ModelCategory/Lifting.lean,Mathlib/Algebra/Lie/CartanExists.lean,Mathlib/Algebra/Lie/Derivation/Basic.lean,Mathlib/Algebra/Lie/EngelSubalgebra.lean,Mathlib/Algebra/NonAssoc/LieAdmissible/Defs.lean,Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/SuccPred/TypeTags.lean,Mathlib/Algebra/Polynomial/PartialFractions.lean |
23 |
3 |
['euprunin', 'github-actions', 'harahu', 'mathlib-merge-conflicts', 'plp127'] |
dagurtomas assignee:dagurtomas |
2 |
4-44067 4 days ago |
8-73041 8 days ago |
9-48957 9 days |
| 33928 |
jsm28 author:jsm28 |
feat(Combinatorics/Tiling/TileSet): indexed families of tiles |
Define the type `TileSet` for indexed families of tiles (in a discrete context), and some associated definitions (including `symmetryGroup`) and API lemmas.
`TileSet` can be used for tilings of the whole space; for tilings of part of the space; for patches of tiles (extracted from a tiling by considering tiles meeting some set of points, or considered on their own without extracting from a tiling); for multiple tilings (covering the space more than once). In particular, the fact that people study multiple tilings provides a clear justification for using indexed families rather than sets of tiles, and basic definitions and API lemmas generally work for all these different uses of `TileSet` (sometimes with weak constraints such as tiles being finite, nonempty and only having finitely many tiles meeting any point of the space).
Definitions for saying e.g. "this `TileSet` is a tiling of the whole space" are to be included in subsequent files in subsequent PRs.
From AperiodicMonotilesLean.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
460/0 |
Mathlib.lean,Mathlib/Combinatorics/Tiling/TileSet.lean |
2 |
22 |
['Parcly-Taxel', 'b-mehta', 'eric-wieser', 'github-actions', 'jsm28', 'vihdzp'] |
kmill assignee:kmill |
1 |
4-33928 4 days ago |
62-61194 62 days ago |
62-60747 62 days |
| 35295 |
Rida-Hamadani author:Rida-Hamadani |
feat(SimpleGraph): `dropLast` of a cycle is a path |
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
13/0 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walks/Operations.lean |
2 |
7 |
['Rida-Hamadani', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'vlad902'] |
nobody |
1 |
3-80650 3 days ago |
3-80617 3 days ago |
19-67433 19 days |
| 36560 |
harahu author:harahu |
doc(FieldTheory): fix typos |
Found by `PyCharm`'s code inspection tool. Fixes were made by Codex.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
15/14 |
Mathlib/FieldTheory/IntermediateField/Adjoin/Algebra.lean,Mathlib/FieldTheory/Minpoly/MinpolyDiv.lean,Mathlib/FieldTheory/RatFunc/Luroth.lean,Mathlib/FieldTheory/SeparablyGenerated.lean |
4 |
2 |
['github-actions', 'vihdzp'] |
nobody |
1 |
3-71754 3 days ago |
3-71433 3 days ago |
0-75550 20 hours |
| 35771 |
euprunin author:euprunin |
chore: golf using `exact` |
The goal of this PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective.
Trace profiling results (differences <30 ms considered measurement noise):
* `IsBaseChange.comp`: 132 ms before, 98 ms after 🎉
* `Cardinal.powerlt_aleph0`: unchanged 🎉
* `ONote.fastGrowing_one`: unchanged 🎉
Profiled using `set_option trace.profiler true in`.
This PR is batched under the following guidelines:
* Up to ~5 changed files per PR
* Up to ~25 changed declarations per PR
* Up to ~100 changed lines per PR
---
[](https://gitpod.io/from-referrer/)
|
|
3/11 |
Mathlib/RingTheory/IsTensorProduct.lean,Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Notation.lean |
3 |
1 |
['github-actions', 'vihdzp'] |
robin-carlier assignee:robin-carlier |
1 |
3-44076 3 days ago |
19-73635 19 days ago |
19-73188 19 days |
| 36374 |
EtienneC30 author:EtienneC30 |
refactor: define the Poisson measure via a sum of Dirac masses |
Change the definition of `poissonMeasure r` to be
`Measure.sum (fun n ↦ ENNReal.ofReal (exp (-r) * r ^ n / (n)!) • (.dirac n))`
instead of using `PMF`. This allows to directly use API for measures instead of having to develop an API for `PMF`, which anyway is defined as a sum of Dirac masses.
Also add some results about integrals against the poissonMeasure.
---
- [x] depends on: #36355
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
large-import
|
105/30 |
Mathlib/MeasureTheory/Measure/Dirac.lean,Mathlib/Probability/Distributions/Poisson/Basic.lean,Mathlib/Probability/Distributions/Poisson/PoissonLimitThm.lean |
3 |
11 |
['DavidLedvinka', 'EtienneC30', 'b-mehta', 'github-actions', 'mathlib-dependent-issues'] |
kex-y assignee:kex-y |
1 |
3-44067 3 days ago |
7-68685 7 days ago |
7-82271 7 days |
| 36618 |
SnirBroshi author:SnirBroshi |
feat(Order/RelClasses): `IsTrans` is redundant in `IsWellOrder` |
---
[](https://gitpod.io/from-referrer/)
|
t-order |
13/14 |
Mathlib/Order/RelClasses.lean,Mathlib/SetTheory/ZFC/Ordinal.lean |
2 |
1 |
['github-actions', 'vihdzp'] |
nobody |
1 |
3-43938 3 days ago |
3-44000 3 days ago |
3-46656 3 days |
| 36612 |
JovanGerb author:JovanGerb |
chore(Order/SuccPred/Basic): use `to_dual` more |
When this file was originally tagged with `to_dual`, the attribute was less capable. Now, we can tag almost everything in the file. This PR does the first half of the remaining tagging. The rest can be done in a future PR.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
35/150 |
Mathlib/Order/SuccPred/Basic.lean |
1 |
1 |
['github-actions', 'vihdzp'] |
nobody |
1 |
3-43378 3 days ago |
3-63350 3 days ago |
3-62903 3 days |
| 35616 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Copy): `IsContained` and `IsIndContained` are preorders |
This makes `calc` work and provides `Std.Refl` and `IsTrans` instances.
`grw` still doesn't work and mixing the two predicates in `calc` (to prove `IsContained`) also doesn't work.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
20/0 |
Mathlib/Combinatorics/SimpleGraph/Copy.lean |
1 |
2 |
['YaelDillies', 'github-actions'] |
YaelDillies assignee:YaelDillies |
1 |
3-19865 3 days ago |
23-47787 23 days ago |
23-47340 23 days |
| 35360 |
vlad902 author:vlad902 |
chore: rename `cycleGraph_EulerianCircuit` to `cycleGraph.cycle` |
Per [this](https://github.com/leanprover-community/mathlib4/pull/34797#discussion_r2807963752) review feedback, this definition is inappropriately named with an underscore and should be renamed.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
21/17 |
Mathlib/Combinatorics/SimpleGraph/Circulant.lean,Mathlib/Combinatorics/SimpleGraph/ConcreteColorings.lean |
2 |
6 |
['YaelDillies', 'github-actions', 'vlad902'] |
YaelDillies assignee:YaelDillies |
1 |
3-185 3 days ago |
3-19827 3 days ago |
29-32155 29 days |
| 27534 |
PierreQuinton author:PierreQuinton |
feat: a typeclass for `sSup`/`sInf` to be lawful |
Adds lawful infima and suprema type classes.
A preorder with lawful suprema: whenever a set has a least upper bound, `sSup` returns a least upper bound for that set.
A preorder with lawful infima: whenever a set has a greatest lower bound, `sInf` returns a greastest lower bound for that set.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-order
|
121/8 |
Mathlib.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/LawfulSupInf.lean |
3 |
26 |
['PierreQuinton', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'vihdzp'] |
nobody |
1 |
2-74512 2 days ago |
118-19187 118 days ago |
114-38193 114 days |
| 30872 |
rudynicolop author:rudynicolop |
feat(Computability/NFA): NFA closure under concatenation |
This PR proves that regular languages are closed under concatenation via a direct construction on `NFA`s without `εNFA` nor ε-transitions. The main new definitions and results include:
- `M1.concat M2`, the concatenation of `NFA`s `M1` and `M2`, a direct construction without ε-transitions.
- Theorem `accepts_concat : (M1.concat M2).accepts = M1.accepts * M2.accepts`, showing the correctness of the construction.
- Theorem `IsRegular.mul`, showing that regular languages are closed under concatenation.
---
- [x] depends on: #31038
[](https://gitpod.io/from-referrer/)
|
t-computability
new-contributor
awaiting-author
|
104/7 |
Mathlib/Computability/NFA.lean |
1 |
67 |
['YaelDillies', 'ctchou', 'eric-wieser', 'github-actions', 'lambda-fairy', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'rudynicolop'] |
nobody |
2 |
2-74446 2 days ago |
46-62687 46 days ago |
59-63981 59 days |
| 36655 |
plp127 author:plp127 |
chore(IsFractionRing): make argument explicit |
Makes the base ring an explicit argument in `IsFractionRing.div_surjective`. This argument cannot be inferred by typeclass inference, because the base ring is not an `outParam` or `semiOutParam` in the type of `IsFractionRing`. It is also rarely determined by the expected type, since this is typically used as the discriminant for an `obtain` or `rcases`.
Also update every usage of `IsFractionRing.div_surjective` to take advantage of this explicit argument.
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
25/24 |
Mathlib/Algebra/Algebra/Epi.lean,Mathlib/FieldTheory/Galois/IsGaloisGroup.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/NumberField/ProductFormula.lean,Mathlib/NumberTheory/RamificationInertia/HilbertTheory.lean,Mathlib/RingTheory/Invariant/Basic.lean,Mathlib/RingTheory/Localization/AsSubring.lean,Mathlib/RingTheory/Localization/FractionRing.lean,Mathlib/RingTheory/Localization/Integral.lean,Mathlib/RingTheory/Valuation/Discrete/Basic.lean,Mathlib/RingTheory/Valuation/ValuationRing.lean |
11 |
1 |
['github-actions', 'vihdzp'] |
nobody |
1 |
2-32235 2 days ago |
2-46374 2 days ago |
2-46164 2 days |
| 36585 |
vihdzp author:vihdzp |
feat: order type of `Iio o` is `lift o` |
Downstreamed from the CGT repo.
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
18/16 |
Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/Family.lean,Mathlib/SetTheory/ZFC/Ordinal.lean,Mathlib/SetTheory/ZFC/VonNeumann.lean |
5 |
4 |
['SnirBroshi', 'github-actions', 'vihdzp'] |
nobody |
1 |
2-27643 2 days ago |
2-27709 2 days ago |
3-947 3 days |
| 36473 |
AlexeyMilovanov author:AlexeyMilovanov |
feat(Computability.Primrec.List): add primrec proofs for drop, takeWhile, and dropWhile |
This PR adds missing proofs that several standard `List` operations are primitive recursive (Primrec), as well as a basic property of `tail` and `drop`.
Specifically, it introduces:
* `List.tail_iterate`: Applying `tail` to a list `n` times is equivalent to dropping `n` elements.
* `Primrec.list_drop`: `List.drop` is primitive recursive.
* `Primrec.list_take`: `List.take` is primitive recursive.
* `Primrec.list_takeWhile`: `List.takeWhile` is primitive recursive.
* `Primrec.list_dropWhile`: `List.dropWhile` is primitive recursive.
These are basic computability properties for lists that were currently missing from `Mathlib.Computability.Primrec.List`. All proofs use standard combinators and `of_eq`. |
t-computability
new-contributor
maintainer-merge
|
27/0 |
Mathlib/Computability/Primrec/List.lean,Mathlib/Data/List/TakeDrop.lean |
2 |
23 |
['AlexeyMilovanov', 'Komyyy', 'github-actions'] |
nobody |
1 |
2-12792 2 days ago |
2-16086 2 days ago |
5-35811 5 days |
| 36024 |
euprunin author:euprunin |
chore: golf proofs |
The goal of this PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective.
Trace profiling results (differences <30 ms considered measurement noise):
* `Fin.coe_sub_one`: unchanged 🎉
* `LieAlgebra.engel_isBot_of_isMin.lieCharpoly_coeff_natDegree`: 66 ms before, 35 ms after 🎉
* `WithTop.mul_lt_mul`: unchanged 🎉
* `CFC.spectrum_nonempty`: unchanged 🎉
* `ODE.hasDerivWithinAt_picard_Icc`: unchanged 🎉
* `Matrix.vecMul_injective_iff_isUnit`: 240 ms before, 68 ms after 🎉
* `MeasureTheory.SimpleFunc.measure_preimage_lt_top_of_memLp`: unchanged 🎉
* `Polynomial.content_eq_gcd_range_of_lt`: unchanged 🎉
* `RingHom.finiteType_isStableUnderBaseChange`: 163 ms before, 49 ms after 🎉
* `RingHom.Flat.holdsForLocalizationAway`: 91 ms before, <30 ms after 🎉
Profiled using `set_option trace.profiler true in`.
---
[](https://gitpod.io/from-referrer/)
|
maintainer-merge |
20/46 |
Mathlib/Algebra/Group/Fin/Basic.lean,Mathlib/Algebra/Lie/CartanExists.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Instances.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unital.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/LinearAlgebra/Matrix/NonsingularInverse.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/RingTheory/Polynomial/Content.lean,Mathlib/RingTheory/RingHom/FiniteType.lean,Mathlib/RingTheory/RingHom/Flat.lean |
12 |
14 |
['euprunin', 'github-actions', 'mathlib-merge-conflicts', 'tb65536', 'vihdzp'] |
tb65536 assignee:tb65536 |
1 |
1-85415 1 day ago |
8-59155 8 days ago |
12-48735 12 days |
| 35947 |
euprunin author:euprunin |
chore: replace `aesop` with `grind` where the latter is significantly faster |
This experiment investigates the impact of replacing particularly heavy `aesop` calls with `grind`, specifically how this change affects the instruction count as measured by the benchmarking infrastructure.
Trace profiling results (differences <30 ms considered measurement noise):
* `Submonoid.mem_closure_image_one_lt_iff`: 125 ms before, 61 ms after 🎉
* `SimpleGraph.Connected.connected_delete_edge_of_not_isBridge`: 230 ms before, 51 ms after 🎉
* `SimpleGraph.Subgraph.IsMatching.exists_of_disjoint_sets_of_equiv`: 899 ms before, 666 ms after 🎉
* `SimpleGraph.IsCycles.existsUnique_ne_adj`: 855 ms before, 599 ms after 🎉
* `SimpleGraph.Walk.IsPath.isCycles_spanningCoe_toSubgraph_sup_edge`: 962 ms before, 619 ms after 🎉
* `SimpleGraph.IsAlternating.sup_edge`: 2854 ms before, 1615 ms after 🎉
* `SimpleGraph.Subgraph.IsPerfectMatching.symmDiff_of_isAlternating`: 3103 ms before, 1734 ms after 🎉
* `SimpleGraph.edgeSet_replaceVertex_of_not_adj`: 1525 ms before, 933 ms after 🎉
* `SimpleGraph.edgeSet_replaceVertex_of_adj`: 2194 ms before, 1605 ms after 🎉
* `SimpleGraph.tutte_exists_isPerfectMatching_of_near_matchings`: 3161 ms before, 1652 ms after 🎉
* `RootPairing.Base.sub_notMem_range_root`: 1025 ms before, 978 ms after 🎉
* `RootPairing.EmbeddedG2.mem_allRoots`: 3832 ms before, 3255 ms after 🎉
* `RootSystem.GeckConstruction.Lemmas.0.RootPairing.chainBotCoeff_mul_chainTopCoeff.aux_2`: 3572 ms before, 2631 ms after 🎉
* `isCompact_generateFrom`: 1987 ms before, 763 ms after 🎉
* `IsCompactOpenCovered.of_isCompact_of_forall_exists_isCompactOpenCovered`: 2279 ms before, 2009 ms after 🎉
* `UniformContinuousOn.comp_tendstoUniformly_eventually`: 416 ms before, 151 ms after 🎉
Profiled using `set_option trace.profiler true in`.
---
[](https://gitpod.io/from-referrer/)
|
|
27/27 |
Mathlib/Algebra/Group/Irreducible/Indecomposable.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean,Mathlib/Combinatorics/SimpleGraph/Tutte.lean,Mathlib/LinearAlgebra/RootSystem/Base.lean,Mathlib/LinearAlgebra/RootSystem/Finite/G2.lean,Mathlib/LinearAlgebra/RootSystem/GeckConstruction/Lemmas.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Sets/CompactOpenCovered.lean,Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean |
11 |
4 |
['euprunin', 'github-actions', 'leanprover-radar', 'vihdzp'] |
joelriou assignee:joelriou |
1 |
1-85389 1 day ago |
15-48013 15 days ago |
15-47566 15 days |
| 35072 |
vasnesterov author:vasnesterov |
feat(Tactic/ComputeAsymptotics/Multiseries): non-primitive corecursion for `Seq`: `FriendlyOperation` API |
This is a continuation of #34311.
This PR adds more API about friendly operations:
* `FriendlyOperation.destruct`: a "coinductive destructor" for `FriendlyOperation`
* `FriendlyOperation.coind`: a coinductive principle for proving that operation is friendly
* `FriendlyOperationClass.eq_of_bisim`: a generalisation of `Seq.eq_of_bisim'` for proving two sequences are equal.
---
This is a part of the `compute_asymptotics` tactic (#28291).
[](https://gitpod.io/from-referrer/)
|
t-data
t-meta
awaiting-author
|
297/2 |
Mathlib/Tactic/ComputeAsymptotics/Multiseries/Corecursion.lean |
1 |
33 |
['Vierkantor', 'github-actions', 'joneugster', 'vasnesterov'] |
joneugster assignee:joneugster |
1 |
1-84634 1 day ago |
7-74600 7 days ago |
21-75431 21 days |
| 35323 |
martinwintermath author:martinwintermath |
feat(Geometry/Convex/Cone): Add lemmas for PointedCone.dual |
Add several useful lemmas for `PointedCone.dual` in preparation for duality theory for FG cones.
Some other changes are:
* renamed `dual_le_dual` to `dual_anti` and added partner lemma `dual_antitone`
* removed TODO comment since the stated lemma is not sufficient to prove the claim, an also this has now been proven and will become a PR in the near future.
---
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry
maintainer-merge
|
37/6 |
Mathlib/Geometry/Convex/Cone/Dual.lean |
1 |
23 |
['YaelDillies', 'github-actions', 'martinwintermath'] |
YaelDillies assignee:YaelDillies |
1 |
1-72571 1 day ago |
12-19705 12 days ago |
17-60628 17 days |
| 36611 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(Data/Nat/Choose/Multinomial): rename Multiset.multinomial |
Rename `Multiset.multinomial` to `Multiset.countPerms`.
See Zulip thread : [#mathlib4 > Multinomial coefficients](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Multinomial.20coefficients/with/576343071)
This will be used in #35830 to allow another, more natural, definition of `Multiset.multinomial`.
Co-authored with: @mariainesdff
---
[](https://gitpod.io/from-referrer/)
|
|
24/22 |
Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Data/Nat/Choose/Multinomial.lean |
2 |
14 |
['AntoineChambert-Loir', 'SnirBroshi', 'github-actions', 'vihdzp'] |
nobody |
1 |
1-70114 1 day ago |
1-70179 1 day ago |
3-67056 3 days |
| 36609 |
JovanGerb author:JovanGerb |
chore(Order/Hom/Lattice): clean up `to_dual` use |
This PR cleans up the use of `to_dual` for `LatticeHom` after #36159, avoiding `to_dual existing` where this is not needed.
Another benefit of this PR is that `LatticeHom.toInfHom` now becomes reducible, just like `LatticeHom.toSupHom`, as a result of generating it with `extends`.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
13/41 |
Mathlib/Order/Hom/Basic.lean,Mathlib/Order/Hom/Lattice.lean |
2 |
2 |
['github-actions', 'vihdzp'] |
nobody |
1 |
1-69663 1 day ago |
3-61453 3 days ago |
3-66443 3 days |
| 36202 |
vihdzp author:vihdzp |
feat: more theorems on the Cantor normal form |
We also remove some redundant assumptions.
Used in the CGT repo.
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
67/58 |
Mathlib/SetTheory/Ordinal/CantorNormalForm.lean |
1 |
15 |
['SnirBroshi', 'github-actions', 'vihdzp'] |
nobody |
1 |
1-55220 1 day ago |
2-33673 2 days ago |
11-9849 11 days |
| 36584 |
vihdzp author:vihdzp |
feat: lemmas on ordinal `Nat.cast` |
Downstreamed from the CGT repo.
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
30/11 |
Mathlib/SetTheory/Cardinal/Ordinal.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean |
3 |
5 |
['SnirBroshi', 'b-mehta', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] |
b-mehta assignee:b-mehta |
1 |
1-53745 1 day ago |
1-53808 1 day ago |
4-20083 4 days |
| 34729 |
vihdzp author:vihdzp |
chore: `no_expose` various `Ordinal` definitions |
These all have convoluted definitions that are better characterized by their API, or (in the case of `Ordinal.ToType`) are defined through choice and have no useful definitional equalities.
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
14/9 |
Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/Exponential.lean |
2 |
9 |
['b-mehta', 'github-actions', 'leanprover-radar', 'vihdzp'] |
b-mehta assignee:b-mehta |
1 |
1-53558 1 day ago |
1-53558 1 day ago |
42-45659 42 days |
| 34554 |
SnirBroshi author:SnirBroshi |
feat(Data/Nat/Factorization/Divisors): calculate divisors using prime factorization |
---
There are over 200 files that import both `divisors` and `factorization`, but none of them seemed to fit, so I created a new file for this.
(`Data.Nat.Factorization.PrimePow` and `NumberTheory.ArithmeticFunction.Misc` are the best I found)
[](https://gitpod.io/from-referrer/)
|
t-data
maintainer-merge
|
91/0 |
Mathlib.lean,Mathlib/Data/Nat/Factorization/Divisors.lean |
2 |
24 |
['SnirBroshi', 'YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions', 'jcommelin', 'joneugster', 'mathlib-bors', 'plp127'] |
joneugster assignee:joneugster |
1 |
1-53010 1 day ago |
20-14253 20 days ago |
20-61317 20 days |
| 34599 |
cameronfreer author:cameronfreer |
feat(Logic/Equiv/Fintype): generalize toCompl and exists_extending_pair to finite source |
Generalize the Equiv subtype-extension API so it only needs finiteness of
the source subtype, then use that to drastically simplify
`Equiv.Perm.isMultiplyPretransitive`.
### Changes to `Logic/Equiv/Fintype.lean`
* **`Equiv.toCompl`**: generalize from `[Finite α]` to `[Finite {x | p x}]`.
New proof (due to tb65536) uses finset symmetric differences to avoid
needing finiteness of the ambient type.
* **`Equiv.extendSubtype`** and related lemmas: adapt to `[Finite {x | p x}]`.
* **`Equiv.Perm.exists_extending_pair`**: strengthen from `[Finite β]` to
`[Finite α]`. Given two injective functions `f, g : α → β` where `α` is
finite, there exists `σ : Perm β` with `σ ∘ f = g`. The target `β` can
now be infinite.
### Changes to `MultipleTransitivity.lean`
* **`Equiv.Perm.isMultiplyPretransitive`**: replace ~70-line manual
bijectivity construction with a two-line proof via
`exists_smul_eq_embedding`.
* **`exists_smul_eq_embedding`**: rewire to use `exists_extending_pair`
directly (removing the old cardinal-arithmetic proof
`exists_extending_pair_of_finite_source`).
### Application
Used in formalizing de Finetti's theorem (exchangeability ⇒ contractability):
https://github.com/cameronfreer/exchangeability/blob/03a854a2/Exchangeability/Contractability.lean#L459
Co-authored-by: tb65536 |
t-group-theory
new-contributor
|
51/79 |
Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/Logic/Equiv/Fintype.lean |
2 |
26 |
['LLaurance', 'cameronfreer', 'github-actions', 'mathlib-merge-conflicts', 'tb65536'] |
mattrobball assignee:mattrobball |
1 |
1-35275 1 day ago |
9-62466 9 days ago |
30-82993 30 days |
| 36664 |
SnirBroshi author:SnirBroshi |
feat(SetTheory/Ordinal/Arithmetic): characterize when ordinal addition commutes |
---
The proof is from ["Cardinal and Ordinal Numbers"](https://en.wikipedia.org/wiki/Cardinal_and_Ordinal_Numbers).
A similar fact for multiplication is mentioned on [Wikipedia](https://en.wikipedia.org/wiki/Ordinal_arithmetic).
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
19/0 |
Mathlib/SetTheory/Ordinal/Arithmetic.lean |
1 |
20 |
['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'plp127', 'vihdzp'] |
vihdzp assignee:vihdzp |
1 |
1-32744 1 day ago |
1-37469 1 day ago |
2-5737 2 days |
| 35716 |
IvanRenison author:IvanRenison |
feat(Combinatorics/SimpleGraph/Connectivity): add lemmas about reachable, degree and neighbor set |
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
awaiting-author
|
28/6 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean |
1 |
11 |
['IvanRenison', 'SnirBroshi', 'YaelDillies', 'github-actions', 'vlad902'] |
YaelDillies assignee:YaelDillies |
1 |
1-21313 1 day ago |
20-83959 20 days ago |
20-83512 20 days |
| 36720 |
YanYablonovskiy author:YanYablonovskiy |
feat(Order): `OrderType.lift` and more order type API |
Adding the universe lifting operation to `OrderType` , addresses a 'TODO' .
---
[](https://gitpod.io/from-referrer/)
|
t-order
new-contributor
maintainer-merge
|
36/2 |
Mathlib/Order/Types/Defs.lean |
1 |
17 |
['YaelDillies', 'YanYablonovskiy', 'github-actions'] |
nobody |
1 |
1-7859 1 day ago |
1-7923 1 day ago |
1-8650 1 day |
| 36671 |
Komyyy author:Komyyy |
doc(Order/ConditionallyCompleteLattice/Defs): Lean3 structure notation |
* Some docstrings still use Lean3 structure notation.
* Some mistakenly use `(sup|inf)` instead of `s(Sup|Inf)`
* `conditionallyCompleteLatticeOfs(Sup|Inf)` provides both `sup` & `inf`
These were found while reviewing #35774.
---
[](https://gitpod.io/from-referrer/)
|
documentation
t-order
delegated
|
18/18 |
Mathlib/Order/ConditionallyCompleteLattice/Defs.lean |
1 |
5 |
['Komyyy', 'Vierkantor', 'github-actions', 'mathlib-bors'] |
Vierkantor assignee:Vierkantor |
1 |
0-80510 22 hours ago |
1-9708 1 day ago |
1-12340 1 day |
| 35113 |
bryangingechen author:bryangingechen |
ci: refactor commit_verification so it works on PRs from forks |
Currently the commit verification workflow fails when run on a PR from a fork because it tries to post a comment, but its GITHUB_TOKEN is read-only. [Example failure](https://github.com/leanprover-community/mathlib4/actions/runs/21796757425/job/62885536927?pr=34973)
This PR refactors the commit verification workflow using the new [leanprover-community/privilege-escalation-bridge](https://github.com/leanprover-community/privilege-escalation-bridge), splitting it into two workflows where the second one (triggered by `workflow_run` has access to a GITHUB_TOKEN that can post comments).
We also make the workflow run the commit verification scripts from `master` rather than the PR branch to close a small security issue where someone could spoof verification / get the workflow to post arbitrary comments by modifying the scripts in their branch.
Prepared with codex.
---
[](https://gitpod.io/from-referrer/)
|
CI
delegated
LLM-generated
|
81/22 |
.github/workflows/commit_verification.yml,.github/workflows/commit_verification_wf_run.yml |
2 |
35 |
['adomani', 'bryangingechen', 'github-actions', 'joneugster', 'marcelolynch', 'mathlib-bors', 'mathlib-merge-conflicts'] |
joneugster assignee:joneugster |
2 |
0-79818 22 hours ago |
26-73853 26 days ago |
7-46277 7 days |
| 36443 |
Fieldnote-Echo author:Fieldnote-Echo |
feat(Combinatorics/SimpleGraph): add SimpleGraph.ball (open metric ball) |
Add `SimpleGraph.ball`, the open ball in the graph extended metric.
## Design decisions
- **Open ball** (strict `<`, not `≤`): `ball c ⊤` coincides with the connected
component of `c`, whereas a closed ball would give `closedBall c ⊤ = univ`.
- **Named `SimpleGraph.ball`** (not `eball`): since `dist`-valued balls are less
natural for disconnected graphs, the `e` prefix is unnecessary.
- **Graph-specific** (not via `PseudoEMetricSpace`): avoids importing `ℝ`.
AI assistance: Claude (Opus 4.6) helped draft and iterate on the implementation. I reviewed the code line by line and vouch for the final contents.
Discussed on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/SimpleGraph.20metric.20balls/with/577846803).
---
[](https://gitpod.io/from-referrer/) |
t-combinatorics
new-contributor
LLM-generated
|
59/3 |
Mathlib/Combinatorics/SimpleGraph/Metric.lean |
1 |
36 |
['Fieldnote-Echo', 'Rida-Hamadani', 'SnirBroshi', 'github-actions', 'lauramonk', 'vlad902'] |
nobody |
1 |
0-79592 22 hours ago |
6-78104 6 days ago |
6-77657 6 days |
| 32989 |
kim-em author:kim-em |
fix(Tactic/Simps): skip @[defeq] inference for non-exposed definitions |
This PR makes `@[simps]` check whether the source definition's body is exposed before calling `inferDefEqAttr`. When the body is not exposed, we skip the `@[defeq]` inference to avoid validation errors.
Without this fix, using `@[simps]` on a definition that is not `@[expose]`d produces an error like:
```
Theorem Foo_bar has a `rfl`-proof and was thus inferred to be `@[defeq]`, but validating that attribute failed:
Not a definitional equality: the left-hand side ... is not definitionally equal to the right-hand side ...
Note: This theorem is exported from the current module. This requires that all definitions that need to be unfolded to prove this theorem must be exposed.
```
The fix checks `(← getEnv).setExporting true |>.find? cfg.srcDeclName |>.any (·.hasValue)` to determine if the definition body is visible in the public scope, and only calls `inferDefEqAttr` if it is.
🤖 Prepared with Claude Code |
t-meta
awaiting-author
merge-conflict
LLM-generated
|
51/3 |
Mathlib/CategoryTheory/Galois/EssSurj.lean,Mathlib/CategoryTheory/Triangulated/TStructure/TruncLTGE.lean,Mathlib/Tactic/Simps/Basic.lean,MathlibTest/SimpsModule.lean |
4 |
17 |
['JovanGerb', 'Vierkantor', 'github-actions', 'joneugster', 'kim-em', 'mathlib-merge-conflicts'] |
joneugster assignee:joneugster |
1 |
0-79412 22 hours ago |
28-36880 28 days ago |
37-27992 37 days |
| 35215 |
kim-em author:kim-em |
chore: use @[to_dual] in FixedPoints |
This PR adds `@[to_dual]` annotations to 14 theorems about `lfp` in `Order/FixedPoints.lean`, auto-generating their `gfp` duals and deleting the hand-written versions. Also registers `OrderHom.lfp` as the dual of `OrderHom.gfp` via `attribute [to_dual existing]`.
Auto-generated duals include: `le_gfp`, `gfp_le_fixed`, `gfp_le`, `gfp_le_map`, `map_gfp`, `isFixedPt_gfp`, `map_le_gfp`, `isGreatest_gfp_le`, `isGreatest_gfp`, `gfp_induction`, `map_gfp_comp`, `gfp_gfp`, `map_inf_fixedPoints_le`, `map_sInf_subset_fixedPoints_le`.
[Diff relative to #35208](https://github.com/kim-em/mathlib4/compare/kim/to-dual-bounds-basic...kim/to-dual-fixed-points)
- [x] depends on: #35208
🤖 Prepared with Claude Code |
LLM-generated |
249/548 |
Mathlib/Algebra/Module/Torsion/Basic.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/FixedPoints.lean,Mathlib/Order/GaloisConnection/Basic.lean,Mathlib/Order/Interval/Set/Disjoint.lean,Mathlib/Topology/Order.lean |
8 |
10 |
['JovanGerb', 'github-actions', 'kim-em', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] |
alexjbest assignee:alexjbest |
1 |
0-79402 22 hours ago |
13-47017 13 days ago |
21-5194 21 days |
| 35233 |
kim-em author:kim-em |
chore: lake shake --add-public --keep-implied --keep-prefix --fix |
This PR runs `lake shake --add-public --keep-implied --keep-prefix --fix` again after https://github.com/leanprover-community/mathlib4/pull/34511, picking up the remaining 28 files that now have suggestions.
🤖 Prepared with Claude Code |
large-import
maintainer-merge
awaiting-author
LLM-generated
|
13/12 |
Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Data/Nat/Init.lean,Mathlib/LinearAlgebra/Matrix/Kronecker.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Defs.lean,Mathlib/LinearAlgebra/TensorProduct/Map.lean,Mathlib/Logic/Basic.lean,Mathlib/Logic/Relation.lean,Mathlib/RingTheory/MatrixAlgebra.lean,Mathlib/Tactic/Hint.lean,Mathlib/Tactic/Linter/FindDeprecations.lean,Mathlib/Tactic/Nontriviality/Core.lean,Mathlib/Tactic/NormNum/Result.lean,Mathlib/Tactic/Order/CollectFacts.lean,Mathlib/Tactic/Tauto.lean |
16 |
16 |
['TwoFX', 'Vierkantor', 'adomani', 'bryangingechen', 'github-actions', 'joneugster', 'kim-em', 'mathlib-merge-conflicts', 'mathlib-splicebot'] |
nobody |
1 |
0-79398 22 hours ago |
13-23757 13 days ago |
25-1759 25 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 |
1 |
0-79397 22 hours ago |
24-14110 24 days ago |
24-16849 24 days |
| 35826 |
quangvdao author:quangvdao |
feat(Probability/ProbabilityMassFunction): total variation distance and MetricSpace instance |
Define total variation distance on probability mass functions, provide
a `MetricSpace` instance, and prove the data processing inequality.
The extended TV distance `PMF.etvDist` is defined in `ℝ≥0∞` as
`(1/2) ∑ x, absDiff (p x) (q x)`, using a new symmetric absolute
difference `ENNReal.absDiff`. The real-valued `PMF.tvDist` is its
`toReal`.
New definitions:
- `ENNReal.absDiff`: symmetric absolute difference `(a - b) + (b - a)`
- `PMF.etvDist`: extended total variation distance
- `PMF.tvDist`: real-valued total variation distance
- `PMF.instMetricSpace`: `MetricSpace` instance on `PMF α`
Main results:
- `ENNReal.absDiff_triangle`: triangle inequality for `absDiff`
- `ENNReal.absDiff_tsum_le`: subadditivity over infinite sums
- `PMF.etvDist_le_one`: TV distance is at most 1
- `PMF.etvDist_map_le`: data processing inequality (deterministic maps)
- `PMF.etvDist_bind_right_le`: data processing inequality (Markov kernels)
- `PMF.etvDist_option_punit`: closed form for binary distributions
Supersedes #33680 with a complete, sorry-free implementation.
See Zulip discussion:
This PR was authored with the support of Claude (Cursor IDE).
---
This PR provides a complete formalization of total variation distance for PMFs, including:
1. **`ENNReal.absDiff`** (`Mathlib/Data/ENNReal/AbsDiff.lean`): A symmetric absolute difference
for `ℝ≥0∞` with triangle inequality, connection to real absolute value, and algebraic properties.
The tsum-related lemmas (`absDiff_tsum_le`, `tsum_fiber`) are placed in the TV distance file
to avoid pulling topology imports into `Data.ENNReal`.
2. **`PMF.etvDist` / `PMF.tvDist`** (`Mathlib/Probability/ProbabilityMassFunction/TotalVariation.lean`):
Total variation distance with a `MetricSpace` instance, data processing inequality for both
deterministic maps and Markov kernels, and a closed form for binary distributions.
Compared to #33680, this PR:
- Has no `sorry`s
- Defines the distance in `ℝ≥0∞` first (following Mathlib convention for `edist`/`dist`)
- Includes the data processing inequality
- Has full documentation and passes all Mathlib linters
Made with [Cursor](https://cursor.com) |
t-measure-probability
LLM-generated
|
459/0 |
Mathlib.lean,Mathlib/Data/ENNReal/AbsDiff.lean,Mathlib/Probability/ProbabilityMassFunction/TotalVariation.lean |
3 |
6 |
['BoltonBailey', 'EtienneC30', 'github-actions', 'joneugster', 'quangvdao'] |
RemyDegenne assignee:RemyDegenne |
1 |
0-79366 22 hours ago |
10-57290 10 days ago |
10-57624 10 days |
| 36734 |
JovanGerb author:JovanGerb |
fix(SetTheory/ZFC/Basic): fix diamond for `Membership ZFSet ZFSet` |
This PR removes the manual instance of `Membership ZFSet ZFSet` in favour of the instance that comes from the `SetLike` instance. The two instances are not defeq in `implicit_reducible` transparency, hence causing a diamond (it relies on the defeq of `{x | x ∈ s}` with `s`).
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
15/17 |
Mathlib/SetTheory/ZFC/Basic.lean |
1 |
1 |
['github-actions', 'vihdzp'] |
nobody |
1 |
0-68193 18 hours ago |
0-75301 20 hours ago |
0-75351 20 hours |
| 35878 |
Parcly-Taxel author:Parcly-Taxel |
chore: use `induction` for `Quotient.induction` invocations |
Found through the regex `(refine|apply|exact).*Quotient.induction`. Includes the multiple-argument variants. |
tech debt
maintainer-merge
|
100/101 |
Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/Lie/Quotient.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/Basic.lean,Mathlib/CategoryTheory/Abelian/Pseudoelements.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/Combinatorics/Tiling/Tile.lean,Mathlib/Computability/TuringMachine/Tape.lean,Mathlib/Data/Multiset/Functor.lean,Mathlib/Data/Multiset/Sym.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/FieldTheory/Fixed.lean,Mathlib/GroupTheory/Perm/Cycle/Concrete.lean,Mathlib/LinearAlgebra/Alternating/DomCoprod.lean,Mathlib/LinearAlgebra/Quotient/Pi.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/Order/Category/PartOrd.lean,Mathlib/Order/RelIso/Basic.lean,Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/Functoriality.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/Topology/Algebra/InfiniteSum/Module.lean |
28 |
11 |
['github-actions', 'joneugster', 'mathlib-merge-conflicts'] |
joneugster assignee:joneugster |
1 |
0-48743 13 hours ago |
1-38021 1 day ago |
15-3349 15 days |
| 35647 |
BryceT233 author:BryceT233 |
feat(RingTheory/Ideal/Quotient): add a canonical inclusion map |
This is the second PR split from the larger PR https://github.com/leanprover-community/mathlib4/pull/34936 to make the review process easier.
It introduces `Submodule.powSMulQuotInclusion`, which is the canonical inclusion from `I ^ a • N ⧸ I ^ b • (I ^ a • N)` to `M ⧸ I ^ c • N` where `c = b + a`, and provides auxiliary lemmas for it
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
|
43/0 |
Mathlib/RingTheory/Ideal/Quotient/PowTransition.lean |
1 |
16 |
['BryceT233', 'chrisflav', 'erdOne', 'github-actions', 'wwylele'] |
chrisflav assignee:chrisflav |
1 |
0-44997 12 hours ago |
0-66572 18 hours ago |
21-30377 21 days |
| 33944 |
artie2000 author:artie2000 |
feat(Algebra/Ring): formally real rings |
* Define formally real rings
* Prove basic inductive facts about them
Co-authored-by: Violeta Hernández Palacios
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
158/0 |
Mathlib.lean,Mathlib/Algebra/Ring/IsFormallyReal.lean |
2 |
31 |
['artie2000', 'github-actions', 'mariainesdff', 'vihdzp'] |
mariainesdff assignee:mariainesdff |
1 |
0-44799 12 hours ago |
0-50118 13 hours ago |
37-45260 37 days |
| 35292 |
Rida-Hamadani author:Rida-Hamadani |
feat(SimpleGraph): taking twice from a walk equals taking the minimum |
this is an analogue to `List.take_take`.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
5/0 |
Mathlib/Combinatorics/SimpleGraph/Walks/Operations.lean |
1 |
2 |
['SnirBroshi', 'github-actions', 'vlad902'] |
YaelDillies assignee:YaelDillies |
2 |
0-44047 12 hours ago |
31-8335 31 days ago |
31-7888 31 days |
| 35423 |
Rob23oba author:Rob23oba |
feat: add congruence lemmas for `Function.update` and `Pi.single` |
Adds `simp` congruence lemmas to `Function.update` and `Pi.single` that are specialized for the non-dependent case. See also [#mathlib4 > Simp fails to apply with `Function.update`](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Simp.20fails.20to.20apply.20with.20.60Function.2Eupdate.60/with/573889929).
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
29/6 |
Mathlib/Algebra/Notation/Pi/Basic.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean,Mathlib/RepresentationTheory/Tannaka.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean |
5 |
9 |
['Rob23oba', 'eric-wieser', 'github-actions', 'joneugster', 'loefflerd'] |
dagurtomas assignee:dagurtomas |
1 |
0-44045 12 hours ago |
28-11985 28 days ago |
28-47230 28 days |
| 36064 |
marcelolynch author:marcelolynch |
ci: Push to the cache using OIDC and federated credentials |
This migration replaces static SAS-based cache upload auth with GitHub OIDC + Entra app registrations in Azure.
Concretely, each workflow run gets a GitHub-issued OIDC token, and Azure AD (Entra) exchanges that token for a short-lived access token for Storage. We do this through app registrations configured with federated credentials, so no client secret or SAS needs to be stored for normal operation.
A key design point is identity separation. We use two different app registrations (two app IDs): one for `master` workflows and one for non-master workflows. That lets us enforce different trust and permission boundaries in Azure RBAC, instead of giving one shared credential broad write access to every workflow type.
Note that this separation is not implemented by this change: for now, both identities are still contributing to the same cache.
On the cache client side (Cache/Requests.lean / Cache/Main.lean), auth selection is robust to empty bearer values, and there is migration-safe fallback behavior: if bearer upload fails with auth errors and SAS is available, it retries with SAS. The workflow also supports fallback to MATHLIB_CACHE_SAS when minting fails.
Benefits:
- OIDC/federated credentials remove dependency on a static shared upload secret.
- Tokens are minted just-in-time and short-lived.
- We can enforce least privilege cleanly by using separate app identities for different workflow classes.
- Blast radius is reduced: master and non-master workflows can have different RBAC scopes.
- We keep operational safety during migration by retaining controlled SAS fallback, but SAS is no longer the primary auth path. |
CI
maintainer-merge
|
124/34 |
.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,.github/workflows/build_template.yml,.github/workflows/ci_dev.yml,Cache/Main.lean,Cache/README.md,Cache/Requests.lean |
8 |
9 |
['bryangingechen', 'github-actions', 'joneugster', 'marcelolynch', 'mathlib-merge-conflicts'] |
jcommelin assignee:jcommelin |
1 |
0-44043 12 hours ago |
7-55949 7 days ago |
9-6901 9 days |
| 36414 |
alainchmt author:alainchmt |
feat(FieldTheory/Finite): irreducible factors of X^q^n - X have degree dividing n |
Add the theorem that if an irreducible polynomial over a finite field `K` divides `X ^ (Fintype.card K) ^ n - X`, then the degree of the polynomial divides `n`. We also add an auxiliary lemma stating that polynomials of nonzero degree dividing `X ^ (Fintype.card K) - X` have a root in `K`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
53/0 |
Mathlib/FieldTheory/Finite/Extension.lean,Mathlib/FieldTheory/Finite/GaloisField.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/FieldTheory/Minpoly/Field.lean |
4 |
9 |
['alainchmt', 'github-actions', 'tb65536'] |
dagurtomas assignee:dagurtomas |
1 |
0-44038 12 hours ago |
5-75338 5 days ago |
7-49829 7 days |
| 36425 |
yuma-mizuno author:yuma-mizuno |
fix: prevent stack overflow in `monoidal` tactic |
Fix stack overflow when trying to use the tactic with incomplete expressions.
---
[](https://gitpod.io/from-referrer/)
|
t-category-theory
t-meta
|
48/0 |
Mathlib/Tactic/CategoryTheory/Bicategory/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Datatypes.lean,MathlibTest/CategoryTheory/Bicategory/Basic.lean,MathlibTest/CategoryTheory/Monoidal/Basic.lean |
4 |
4 |
['github-actions', 'robin-carlier', 'yuma-mizuno'] |
adamtopaz assignee:adamtopaz |
1 |
0-44037 12 hours ago |
4-3051 4 days ago |
3-24795 3 days |
| 33506 |
Rida-Hamadani author:Rida-Hamadani |
feat(SimpleGraph): construct a cycle of two distinct paths with same start and end |
Co-authored-by: Vlad Tsyrklevich
---
- [x] depends on: #33249
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
110/1 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/WalkDecomp.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walks/Operations.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/Nodup.lean |
5 |
17 |
['Rida-Hamadani', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'vlad902'] |
nobody |
1 |
0-43353 12 hours ago |
0-43414 11 hours ago |
12-14084 12 days |
| 36717 |
kim-em author:kim-em |
feat(Tactic/FastInstance): skip mkAuxTheorem for proof fields when types agree at instances transparency |
This PR improves how \`fast_instance%\` handles proof-valued constructor fields.
Previously, proof fields were always wrapped in \`mkAuxTheorem\`, which creates a separate auxiliary theorem carrying the expected type. This is unnecessary when the proof's actual type already agrees with the expected type at instances transparency — in that case the proof can be assigned directly.
The new behaviour: check whether the proof's type agrees with the expected type at instances transparency. If yes, assign directly. If no (indicating a binder type mismatch), wrap with \`mkAuxTheorem\` as before.
This is a natural analogue of the data-field binder type checking that \`fast_instance%\` already performs, applied to proof fields.
🤖 Prepared with Claude Code |
t-meta
LLM-generated
delegated
|
9/4 |
Mathlib/Tactic/FastInstance.lean,MathlibTest/fast_instance.lean |
2 |
4 |
['eric-wieser', 'github-actions', 'mathlib-bors'] |
nobody |
1 |
0-36650 10 hours ago |
1-21749 1 day ago |
1-24390 1 day |
| 36761 |
SnirBroshi author:SnirBroshi |
chore(README.md): fix bors logo 404 |
---
The bors badge SVG link became a 404 about [a month ago](https://web.archive.org/web/20260000000000*/https://bors.tech/images/badge_small.svg) for some reason (bors is deprecated though their website is still up).
But their website's repo will probably stay forever, and it has [the badge](https://github.com/bors-ng/bors-ng.github.io/blob/master/images/badge_small.svg).
[](https://gitpod.io/from-referrer/)
|
easy
maintainer-merge
|
1/1 |
README.md |
1 |
2 |
['github-actions', 'joneugster'] |
nobody |
1 |
0-16928 4 hours ago |
0-17919 4 hours ago |
0-17472 4 hours |
| 35664 |
Rida-Hamadani author:Rida-Hamadani |
feat(SimpleGraph): the adjacency matrix of empty and complete graphs |
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
11/0 |
Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean |
1 |
8 |
['IvanRenison', 'Rida-Hamadani', 'YaelDillies', 'github-actions'] |
nobody |
1 |
0-16012 4 hours ago |
0-53154 14 hours ago |
21-78945 21 days |
| 35011 |
whocares-abt author:whocares-abt |
feat(Combinatorics/SimpleGraph/Copy): add degree of copy less than original |
add two theorems relating degree of a graph and it's copy |
t-combinatorics
new-contributor
maintainer-merge
|
12/0 |
Mathlib/Combinatorics/SimpleGraph/Copy.lean |
1 |
15 |
['SnirBroshi', 'YaelDillies', 'github-actions', 'themathqueen', 'vihdzp'] |
nobody |
1 |
0-15672 4 hours ago |
2-12038 2 days ago |
34-6686 34 days |
| 35325 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph/Acyclic): `ENat.card V ≤ 2 → G.IsAcyclic` |
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
25/3 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Data/Finite/Card.lean |
2 |
5 |
['Rida-Hamadani', 'YaelDillies', 'github-actions'] |
nobody |
1 |
0-15597 4 hours ago |
0-19274 5 hours ago |
29-17485 29 days |
| 35451 |
samueloettl author:samueloettl |
feat(MeasureTheory.Function): compMeasurePreserving_iterate |
These are useful for dynamics/ergodic theory.
Possibly some of these could be simp lemmas but I'm not confident enough to say that they are so I didn't mark them as such.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-measure-probability
awaiting-author
|
113/2 |
Mathlib/MeasureTheory/Function/AEEqFun.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Measure/QuasiMeasurePreserving.lean,Mathlib/Order/Filter/Basic.lean |
4 |
41 |
['ADedecker', 'EtienneC30', 'github-actions', 'samueloettl'] |
ADedecker assignee:ADedecker |
1 |
0-13976 3 hours ago |
3-11403 3 days ago |
22-45642 22 days |
| 33780 |
ooovi author:ooovi |
feat(Geometry/Convex/Cone): lineality space of pointed cones |
Define the lineality space `PointedCone.lineal` as the submodule `C ⊓ -C`. Prove that it is the largest submodule of the cone, which is sometimes used as an alternative definition.
Co-authored-by: Martin Winter
---
dependency of #33664
- [x] depends on #33761
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry
maintainer-merge
|
43/1 |
Mathlib/Geometry/Convex/Cone/Pointed.lean |
1 |
24 |
['YaelDillies', 'artie2000', 'eric-wieser', 'github-actions', 'martinwintermath', 'mathlib4-merge-conflict-bot', 'ooovi', 'vihdzp'] |
YaelDillies assignee:YaelDillies |
1 |
0-11578 3 hours ago |
3-62952 3 days ago |
30-61220 30 days |
| 36759 |
vihdzp author:vihdzp |
feat: `∃ a, f a ≤ x < f (succ a)` for a normal function `f` |
Most of the diff is just re-sectioning.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
55/35 |
Mathlib/Order/IsNormal.lean |
1 |
1 |
['github-actions', 'plp127'] |
nobody |
1 |
0-7685 2 hours ago |
0-33781 9 hours ago |
0-33411 9 hours |
| 35874 |
xgenereux author:xgenereux |
feat(Adjoin/Polynomial/Bivariate): IsAlgebraic.adjoin_singleton |
This PR builds up to the following theorem:
- `IsAlgebraic.adjoin_singleton`:
Given two transcendental elements `a`, `b` over `R`, if one of them, say `a`, is algebraic over
`R[b]` then `b` is algebraic over `R[a]`.
In particular, it uses maps between `R[a]` and `R[X]` as well of some of the Bivariate polynomial API.
The results are necessary in preparation for the following: Given a function field `K` and `(y : K)` such that
`(hy : Transcendental Fq y)` then we have:
```
FiniteDimensional Fq⟮y⟯ K
```
Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)>
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
delegated
label:t-algebra$ |
90/0 |
Mathlib.lean,Mathlib/RingTheory/Adjoin/Polynomial/Bivariate.lean |
2 |
12 |
['github-actions', 'joneugster', 'mathlib-bors', 'mathlib-merge-conflicts', 'riccardobrasca', 'robin-carlier', 'xgenereux'] |
riccardobrasca assignee:riccardobrasca |
1 |
0-6322 1 hour ago |
15-9880 15 days ago |
15-9958 15 days |
| 36471 |
eric-wieser author:eric-wieser |
feat: more API for Function.IsPartialInv |
This also renames some lemmas to enable dot notation.
---
[](https://gitpod.io/from-referrer/)
|
t-logic
ready-to-merge
|
33/22 |
Mathlib/Data/Set/Finite/Basic.lean,Mathlib/Logic/Encodable/Basic.lean,Mathlib/Logic/Function/Basic.lean |
3 |
14 |
['Komyyy', 'eric-wieser', 'github-actions', 'riccardobrasca'] |
nobody |
1 |
0-5371 1 hour ago |
4-44022 4 days ago |
5-47945 5 days |
| 36715 |
vihdzp author:vihdzp |
feat: `IsCofinal s` implies `IsCofinal (f '' s)` |
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-order
|
26/15 |
Mathlib/Order/Cofinal.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean |
2 |
1 |
['YaelDillies', 'github-actions'] |
nobody |
1 |
0-4363 1 hour ago |
1-29308 1 day ago |
1-28861 1 day |
| 35539 |
xgenereux author:xgenereux |
feat(DedekindDomain/Factorization): add `iInf` version of `finprod_heightOneSpectrum_factorization` |
This PR adds an `iInf` version of `finprod_heightOneSpectrum_factorization`. This requires two lemmas:
- `prod_eq_iInf_of_coprime` - An `iInf` version of `mul_eq_inf_of_coprime`.
- `HeightOneSpectrum.pow_sup_pow_eq_top` - Bundled up version of `Ideal.IsMaximal.coprime_of_ne` + `Ideal.pow_sup_pow_eq_top` for `HeightOneSpectrum`.
------
I noticed that these lemmas simplify a bit the work on the Chinese remainder theorem done in the file. The last commit of this PR is this simplification. I can remove it if this is not relevant.
Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)>
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
delegated
|
90/48 |
Mathlib/Algebra/Module/DedekindDomain.lean,Mathlib/RingTheory/DedekindDomain/Factorization.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean |
5 |
33 |
['Ruben-VandeVelde', 'chrisflav', 'erdOne', 'github-actions', 'mathlib-bors', 'riccardobrasca', 'xgenereux'] |
chrisflav assignee:chrisflav |
1 |
0-3502 58 minutes ago |
3-343 2 days ago |
21-12805 21 days |
| 35594 |
chrisflav author:chrisflav |
feat(RingTheory): `Extension.CotangentSpace` commutes with base change |
From Pi1.
---
- [x] depends on: #35557
- [x] depends on: #35699
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
delegated
|
136/0 |
Mathlib.lean,Mathlib/RingTheory/Extension/Basic.lean,Mathlib/RingTheory/Extension/Cotangent/BaseChange.lean,Mathlib/RingTheory/Extension/Cotangent/Basic.lean |
4 |
7 |
['chrisflav', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
1 |
0-1562 26 minutes ago |
14-74845 14 days ago |
14-75785 14 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 |
| 14720 |
eric-wieser author:eric-wieser |
refactor: change `CliffordAlgebra.lift` to use quadratic maps |
This works towards addressing a footnote on [page 152](https://eric-wieser.github.io/thesis/eric-wieser-thesis.pdf#page=164) of my thesis.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
label:t-algebra$ |
200/167 |
Mathlib/LinearAlgebra/CliffordAlgebra/Basic.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Equivs.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Prod.lean,Mathlib/LinearAlgebra/QuadraticForm/Complex.lean,Mathlib/LinearAlgebra/QuadraticForm/Dual.lean,Mathlib/LinearAlgebra/QuadraticForm/Isometry.lean,Mathlib/LinearAlgebra/QuadraticForm/IsometryEquiv.lean,Mathlib/LinearAlgebra/QuadraticForm/Prod.lean,Mathlib/LinearAlgebra/QuadraticForm/QuadraticModuleCat.lean,Mathlib/LinearAlgebra/QuadraticForm/Real.lean,Mathlib/LinearAlgebra/QuadraticForm/TensorProduct/Isometries.lean |
11 |
1 |
['github-actions'] |
nobody |
594-18056 1 year ago |
unknown |
0-0 0 seconds |
| 14889 |
yuma-mizuno author:yuma-mizuno |
feat(CategoryTheory/Bicategory/Monad): define monad in bicategory |
---
- [ ] depends on: #12107
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
blocked-by-other-PR
t-category-theory
|
1566/12 |
Mathlib.lean,Mathlib/CategoryTheory/Bicategory/Functor/Oplax.lean,Mathlib/CategoryTheory/Bicategory/LocallyDiscrete.lean,Mathlib/CategoryTheory/Bicategory/Monad/Adjunction.lean,Mathlib/CategoryTheory/Bicategory/Monad/Basic.lean,Mathlib/CategoryTheory/Bicategory/Monad/Cat.lean,Mathlib/CategoryTheory/Monad/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Coherence.lean,Mathlib/Tactic/Widget/StringDiagram.lean,scripts/noshake.json,test/StringDiagram.lean,widget/src/penrose/monoidal.dsl,widget/src/penrose/monoidal.sty |
14 |
2 |
['github-actions', 'leanprover-community-mathlib4-bot'] |
nobody |
594-18056 1 year ago |
unknown |
0-0 0 seconds |
| 13847 |
alreadydone author:alreadydone |
feat(EllipticCurve): the universal elliptic curve |
+ Define the universal Weierstrass curve (`Universal.curve`) over the polynomial ring `ℤ[A₁,A₂,A₃,A₄,A₆]`, and the universal pointed elliptic curve (`Universal.pointedCurve`) over the field of fractions (`Universal.Field`) of the universal ring `ℤ[A₁,A₂,A₃,A₄,A₆,X,Y]/⟨P⟩ = Universal.Poly/⟨P⟩` (`Universal.Ring`, where `P` is the Weierstrass polynomial) with distinguished point `(X,Y)`.
+ Given a Weierstrass curve `W` over a commutative ring `R`, we define the specialization homomorphism `W.specialize : ℤ[A₁,A₂,A₃,A₄,A₆] →+* R`. If `(x,y)` is a point on the affine plane, we define `W.polyEval x y : Universal.Poly →+* R`, which factors through `W.ringEval x y : Universal.Ring →+* R` if `(x,y)` is on `W`.
+ Introduce the cusp curve `Y² = X³`, on which lies the rational point `(1,1)`, with the nice property that `ψₙ(1,1) = n`, making it easy to prove nonvanishing of the universal `ψₙ` when `n ≠ 0` by specializing to the cusp curve, which shows that `(X,Y)` is a point of infinite order on the universal pointed elliptic curve.
---
- [x] depends on: #13845
- [x] depends on: #12883
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
t-algebraic-geometry
label:t-algebra$ |
543/208 |
Mathlib.lean,Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Group.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Universal.lean |
6 |
4 |
['Multramate', 'alreadydone', 'github-actions', 'leanprover-community-mathlib4-bot'] |
nobody |
594-18055 1 year ago |
unknown |
0-0 0 seconds |
| 14036 |
adomani author:adomani |
Test/decl diff in lean |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
465/1040 |
.github/workflows/Lean_decl_diff.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,.github/workflows/mk_build_yml.sh,scripts/decls_diff_hybrid.sh,scripts/list_decls.lean |
8 |
1 |
['github-actions'] |
nobody |
594-18055 1 year ago |
unknown |
0-0 0 seconds |
| 14167 |
alreadydone author:alreadydone |
feat: Group scheme structure on Weierstrass curve |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebraic-geometry
workshop-AIM-AG-2024
|
727/41 |
Mathlib.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Group.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Scheme.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Universal.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/GroupTheory/MonoidLocalization.lean,Mathlib/LinearAlgebra/Basis.lean,Mathlib/LinearAlgebra/FreeModule/Basic.lean,Mathlib/RingTheory/AlgebraTower.lean,Mathlib/RingTheory/MvPolynomial/Basic.lean |
12 |
3 |
['Multramate', 'github-actions', 'jcommelin'] |
nobody |
594-18055 1 year ago |
628-64810 628 days ago |
0-12 12 seconds |
| 12952 |
adomani author:adomani |
test: length statistics |
---
[](https://gitpod.io/from-referrer/)
|
WIP
test-ci
|
124/0 |
.github/workflows/mathlib_stats.yml,.github/workflows/ml_stats_label.yaml,scripts/mathlib_stats.sh |
3 |
9 |
['github-actions'] |
nobody |
594-18054 1 year ago |
unknown |
0-0 0 seconds |
| 13297 |
urkud author:urkud |
feat(Semicontinuous): add `comp` lemma |
---
[](https://gitpod.io/from-referrer/) |
merge-conflict
awaiting-author
t-topology
t-order
|
31/13 |
Mathlib/Topology/Semicontinuous.lean |
1 |
3 |
['sgouezel', 'urkud'] |
nobody |
594-18054 1 year ago |
658-18752 658 days ago |
0-18201 5 hours |
| 13372 |
adomani author:adomani |
dev: generic replacement |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
446/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/ReplaceRefine.lean,Mathlib/Tactic/Replacements.lean |
4 |
4 |
['adomani', 'github-actions'] |
nobody |
594-18054 1 year ago |
unknown |
0-0 0 seconds |
| 13512 |
adomani author:adomani |
test: count all |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
85/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/Tally.lean |
4 |
0 |
[] |
nobody |
594-18054 1 year ago |
unknown |
0-0 0 seconds |
| 12416 |
adomani author:adomani |
chore: remove some cdots |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
3830/3239 |
Archive/Imo/Imo1972Q5.lean,Archive/Imo/Imo2006Q5.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2021Q1.lean,Archive/Wiedijk100Theorems/AbelRuffini.lean,Archive/Wiedijk100Theorems/BallotProblem.lean,Archive/Wiedijk100Theorems/BirthdayProblem.lean,Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Archive/Wiedijk100Theorems/Partition.lean,Counterexamples/Cyclotomic105.lean,Counterexamples/DirectSumIsInternal.lean,Mathlib.lean,Mathlib/Algebra/Algebra/Spectrum.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/List/Basic.lean,Mathlib/Algebra/Category/GroupCat/Colimits.lean,Mathlib/Algebra/Category/ModuleCat/Images.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/CharP/Quotient.lean,Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/DirectLimit.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/GCDMonoid/Finset.lean,Mathlib/Algebra/GeomSum.lean,Mathlib/Algebra/Group/UniqueProds.lean,Mathlib/Algebra/GroupPower/Order.lean,Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/Algebra/Homology/Exact.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean,Mathlib/Algebra/Homology/HomotopyCategory/Triangulated.lean,Mathlib/Algebra/Homology/LocalCohomology.lean,Mathlib/Algebra/Homology/TotalComplex.lean,Mathlib/Algebra/Lie/DirectSum.lean,Mathlib/Algebra/Lie/IdealOperations.lean,Mathlib/Algebra/Lie/Nilpotent.lean,Mathlib/Algebra/Lie/Weights/Basic.lean,Mathlib/Algebra/Module/DedekindDomain.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/Module/LocalizedModule.lean,Mathlib/Algebra/Module/PID.lean,Mathlib/Algebra/Module/Submodule/Bilinear.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Algebra/Module/Zlattice/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/MonoidAlgebra/Ideal.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Order/Archimedean.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Order/CauSeq/BigOperators.lean,Mathlib/Algebra/Order/CompleteField.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Group/Abs.lean,Mathlib/Algebra/Order/Group/Int.lean,Mathlib/Algebra/Order/Group/MinMax.lean,Mathlib/Algebra/Order/Interval/Basic.lean,Mathlib/Algebra/Order/Pointwise.lean,Mathlib/Algebra/Order/Sub/Defs.lean,Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Algebra/Polynomial/PartialFractions.lean,Mathlib/Algebra/Polynomial/Reverse.lean,Mathlib/Algebra/Polynomial/RingDivision.lean,Mathlib/Algebra/Polynomial/UnitTrinomial.lean,Mathlib/Algebra/Quandle.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/AlgebraicGeometry/FunctionField.lean,Mathlib/AlgebraicGeometry/Gluing.lean,Mathlib/AlgebraicGeometry/Morphisms/Basic.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiCompact.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiSeparated.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicGeometry/Properties.lean,Mathlib/AlgebraicGeometry/Pullbacks.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/AlgebraicTopology/SimplexCategory.lean,Mathlib/AlgebraicTopology/SplitSimplicialObject.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/IsolatedZeros.lean,Mathlib/Analysis/BoundedVariation.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Slope.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Extend.lean,Mathlib/Analysis/Calculus/InverseFunctionTheorem/ApproximatesLinearOn.lean,Mathlib/Analysis/Calculus/LocalExtr/Basic.lean,Mathlib/Analysis/Calculus/ParametricIntegral.lean,Mathlib/Analysis/Calculus/TangentCone.lean |
608 |
0 |
[] |
nobody |
594-18053 1 year ago |
unknown |
0-0 0 seconds |
| 12465 |
rosborn author:rosborn |
style: Change Subtype.val to (↑) |
---
This is a test to see replacing `Subtype.val` with `(↑)` where appropriate.
After performing the rewrite, some of the types subtly changed in a difficult to detect manner.
Before the change, `openEmbedding' _` had type `OpenEmbedding Subtype.val` where `Subtype.val` expanded as `@Subtype.val α fun x ↦ x ∈ U : ↥U → α`. After the change, `Subtype.val` expands to `@Subtype.val α fun x ↦ x ∈ ↑U : { x // x ∈ ↑U } → α`. This caused some later proofs to fail due to the different definition.
In a similar case, within the proof of `mfderiv_coe_sphere_injective` on line 553 `Subtype.val` expanded as `@Subtype.val E fun x ↦ x ∈ (Submodule.span ℝ {↑(-v)})ᗮ : ↥(Submodule.span ℝ {↑(-v)})ᗮ → E`.
After changing to `(↑)`, it expanded to `@Subtype.val E fun x ↦ x ∈ ↑(Submodule.span ℝ {↑(-v)})ᗮ : { x // x ∈ ↑(Submodule.span ℝ {↑(-v)})ᗮ } → E`. One benefit to using `(↑)` was that it lead to a shorter proof as `ContinuousLinearEquiv.coe_coe` could be removed on line 559.
In general, this subtle change in types is basically impossible to detect without a tool like leaff.
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
50/50 |
Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/Normed/Group/Hom.lean,Mathlib/CategoryTheory/Generator.lean,Mathlib/CategoryTheory/Limits/Shapes/Types.lean,Mathlib/CategoryTheory/Subobject/Types.lean,Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Set/Function.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/Geometry/Manifold/ContMDiff/Basic.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/Geometry/Manifold/LocalInvariantProperties.lean,Mathlib/GroupTheory/Subsemigroup/Operations.lean,Mathlib/LinearAlgebra/LinearIndependent.lean,Mathlib/Order/Directed.lean,Mathlib/Order/RelIso/Basic.lean,Mathlib/Order/RelIso/Set.lean,Mathlib/RingTheory/Artinian.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Game/Basic.lean,Mathlib/SetTheory/Game/PGame.lean,Mathlib/SetTheory/Surreal/Basic.lean,Mathlib/Topology/Bornology/Constructions.lean,Mathlib/Topology/EMetricSpace/Lipschitz.lean,Mathlib/Topology/Germ.lean,Mathlib/Topology/UniformSpace/Basic.lean,Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean,Mathlib/Topology/UniformSpace/UniformEmbedding.lean |
28 |
1 |
['eric-wieser', 'rosborn'] |
nobody |
594-18053 1 year ago |
unknown |
0-0 0 seconds |
| 12473 |
adomani author:adomani |
first translations |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
424/265 |
Mathlib.lean,Mathlib/Order/Lattice.lean,Mathlib/Order/WithBot.lean,Mathlib/Tactic.lean,Mathlib/Tactic/MinMax.lean |
5 |
0 |
[] |
nobody |
594-18053 1 year ago |
unknown |
0-0 0 seconds |
| 12528 |
adomani author:adomani |
test: autotranslations Bot --> Top |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
350/294 |
Mathlib.lean,Mathlib/Order/WithBot.lean,Mathlib/Tactic.lean,Mathlib/Tactic/MinMax.lean,test/MinMax.lean |
5 |
0 |
[] |
nobody |
594-18053 1 year ago |
686-53491 686 days ago |
0-4 4 seconds |
| 12588 |
adomani author:adomani |
remove trailingDegree |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
1280/979 |
Mathlib.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Polynomial/Degree/TrailingDegree.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/Mirror.lean,Mathlib/Order/WithBot.lean,Mathlib/Tactic.lean,Mathlib/Tactic/MinMax.lean,Mathlib/Tactic/MinMaxTwo.lean,test/MinMax.lean |
11 |
0 |
[] |
nobody |
594-18053 1 year ago |
unknown |
0-0 0 seconds |
| 12608 |
eric-wieser author:eric-wieser |
feat: allow `nsmul` / `zsmul` to be omitted again, with a warning |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
t-meta
label:t-algebra$ |
118/2 |
Mathlib.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Tactic.lean,Mathlib/Tactic/DefaultFieldLinter.lean,scripts/noshake.json,test/default_field_linter.lean |
6 |
12 |
['YaelDillies', 'eric-wieser', 'fpvandoorn', 'github-actions'] |
nobody |
594-18053 1 year ago |
667-64440 667 days ago |
5-74504 5 days |
| 12637 |
adomani author:adomani |
translation: MonoidAlgebra to AddMonoidAlgebra |
[Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/merge.20Add-MonoidAlgebra)
* #12646 was found as a consequence of unification.
* #12659 the typo `single 1 1` for `single 0 1`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
t-meta
label:t-algebra$ |
615/986 |
Mathlib.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Division.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/MinMaxTwo.lean,scripts/noshake.json |
7 |
0 |
[] |
nobody |
594-18053 1 year ago |
unknown |
0-0 0 seconds |
| 12679 |
MichaelStollBayreuth author:MichaelStollBayreuth |
perf(NumberTheory/RamificationInertia): speed up slow file |
A repetition of the earlier experiment at [#12412](https://github.com/leanprover-community/mathlib4/pull/12412) with Lean 4.8.0-rc1.
This time, I tried not to introduce local instances if possible, but instead to tweak instance priorities.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
57/14 |
Mathlib/NumberTheory/RamificationInertia.lean |
1 |
3 |
['MichaelStollBayreuth', 'github-actions', 'leanprover-bot'] |
nobody |
594-18053 1 year ago |
unknown |
0-0 0 seconds |
| 12984 |
adomani author:adomani |
Adomani/periodic reports dev custom action |
---
[](https://gitpod.io/from-referrer/)
|
WIP
test-ci
|
366/0 |
.github/workflows/mathlib_stats.yml,.github/workflows/ml_stats_label.yaml,scripts/count_decls.lean,scripts/mathlib_stats.sh |
4 |
69 |
['github-actions'] |
nobody |
594-18053 1 year ago |
unknown |
0-0 0 seconds |
| 13057 |
alreadydone author:alreadydone |
feat(NumberTheory): characterize elliptic divisibility sequences |
Main results:
+ Every `normEDS` is an elliptic divisibility sequence (EDS). The key proof is `rel₄_of_anti_oddRec_evenRec`, based on my original argument first published on [MathSE](https://math.stackexchange.com/a/4903422/12932)
+ Conversely, every EDS is equal to some `normEDS` (assuming that the first two terms are not zero divisors)
---
- [ ] depends on: #13155
- [x] depends on: #13153
- [x] depends on: #10843
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
t-number-theory
blocked-by-other-PR
label:t-algebra$ |
1032/55 |
Mathlib/Algebra/Ring/NegOnePow.lean,Mathlib/Data/Int/Defs.lean,Mathlib/Data/Int/Parity.lean,Mathlib/GroupTheory/Perm/Sign.lean,Mathlib/NumberTheory/EllipticDivisibilitySequence.lean |
5 |
6 |
['Multramate', 'alreadydone', 'kbuzzard', 'leanprover-community-mathlib4-bot'] |
nobody |
594-18053 1 year ago |
662-42481 662 days ago |
0-34672 9 hours |
| 12192 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: generalize isLittleO_const_id_atTop/atBot |
From PNT+.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-analysis
|
10/4 |
Mathlib/Analysis/Asymptotics/Asymptotics.lean |
1 |
6 |
['Ruben-VandeVelde', 'llllvvuu', 'urkud'] |
nobody |
594-18052 1 year ago |
698-40148 698 days ago |
1-21749 1 day |
| 10024 |
ADedecker author:ADedecker |
feat: rename `connectedComponentOfOne` to `identityComponent`, prove that it is normal and open |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-topology
awaiting-CI
|
58/24 |
Mathlib/FieldTheory/AbsoluteGaloisGroup.lean,Mathlib/Topology/Algebra/Group/Basic.lean,Mathlib/Topology/Algebra/Group/TopologicalAbelianization.lean,Mathlib/Topology/Algebra/OpenSubgroup.lean,Mathlib/Topology/Connected/Basic.lean |
5 |
0 |
[] |
nobody |
594-18051 1 year ago |
781-10175 781 days ago |
0-832 13 minutes |
| 10521 |
eric-wieser author:eric-wieser |
chore: generalize `IsBoundedLinearMap` to modules |
Most of the lemmas don't actually need the normed on the scalars at all.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-analysis
|
58/42 |
Mathlib/Analysis/NormedSpace/BoundedLinearMaps.lean |
1 |
3 |
['github-actions', 'j-loreaux', 'urkud'] |
nobody |
594-18051 1 year ago |
760-72501 760 days ago |
1-29105 1 day |
| 10594 |
lecopivo author:lecopivo |
feat: `fun_trans` function transformation tactic e.g. for computing derivatives |
feat: `fun_trans` function transformation tactic e.g. for computing derivatives
Function transformation tactic/simproc. For example it can be used for computing derivatives.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-meta
|
1819/56 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/FunProp/Decl.lean,Mathlib/Tactic/FunProp/Elab.lean,Mathlib/Tactic/FunProp/FunctionData.lean,Mathlib/Tactic/FunProp/MorExt.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Tactic/FunTrans/Attr.lean,Mathlib/Tactic/FunTrans/Core.lean,Mathlib/Tactic/FunTrans/Decl.lean,Mathlib/Tactic/FunTrans/Elab.lean,Mathlib/Tactic/FunTrans/Theorems.lean,Mathlib/Tactic/FunTrans/Types.lean,test/fun_prop2.lean,test/fun_prop_dev.lean,test/fun_trans_dev.lean |
17 |
11 |
['github-actions'] |
nobody |
594-18051 1 year ago |
unknown |
0-0 0 seconds |
| 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 |
594-18051 1 year ago |
643-82853 643 days ago |
64-12984 64 days |
| 10842 |
mcdoll author:mcdoll |
chore: simplify proofs using new positivity extensions and tests |
---
- [x] depends on: #10661
- [ ] depends on: #10796
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
blocked-by-other-PR
|
98/50 |
Mathlib/Analysis/Convolution.lean,Mathlib/Analysis/SpecialFunctions/Gaussian.lean,Mathlib/MeasureTheory/Covering/Differentiation.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondexpL1.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Real.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Unique.lean,Mathlib/MeasureTheory/Function/ContinuousMapDense.lean,Mathlib/MeasureTheory/Integral/Bochner.lean,Mathlib/MeasureTheory/Measure/Tilted.lean,Mathlib/Probability/Martingale/Upcrossing.lean,Mathlib/Probability/Moments.lean,Mathlib/Probability/Variance.lean,Mathlib/Tactic/Positivity/Core.lean,test/positivity.lean |
14 |
1 |
['leanprover-community-mathlib4-bot'] |
nobody |
594-18051 1 year ago |
unknown |
0-0 0 seconds |
| 10845 |
Shamrock-Frost author:Shamrock-Frost |
Refactor: Make MonoidalFunctor carry the data of an inverse |
We change the definition of a strong monoidal functor from a lax monoidal functor for which the unitor and tensorator are `IsIso` to a lax monoidal functor with the data of inverses for the unitor and tensorator. This requires fixing a lot of knock on effects.
---
This is a **draft PR**. I would like to talk with people on zulip before merging it, and plan ahead to when we have oplax/colax monoidal functors as well. I'm not sure the approach I took here where `MonoidalFunctor` inherits from `LaxMonoidalFunctor` is a good choice if we want to be lax/oplax symmetric.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
RFC
t-category-theory
|
3799/1589 |
Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/Homology/HomotopyCategory/DegreewiseSplit.lean,Mathlib/CategoryTheory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Adjunction/Mates.lean,Mathlib/CategoryTheory/Adjunction/Opposites.lean,Mathlib/CategoryTheory/Adjunction/Prod.lean,Mathlib/CategoryTheory/Adjunction/Whiskering.lean,Mathlib/CategoryTheory/Bicategory/End.lean,Mathlib/CategoryTheory/Bicategory/SingleObj.lean,Mathlib/CategoryTheory/CatCommSq.lean,Mathlib/CategoryTheory/CatSquares.lean,Mathlib/CategoryTheory/Enriched/Basic.lean,Mathlib/CategoryTheory/Equivalence.lean,Mathlib/CategoryTheory/Iso.lean,Mathlib/CategoryTheory/Monoidal/Adjunction.lean,Mathlib/CategoryTheory/Monoidal/Braided.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/CategoryTheory/Monoidal/CommMon_.lean,Mathlib/CategoryTheory/Monoidal/Discrete.lean,Mathlib/CategoryTheory/Monoidal/End.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/Limits.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/CategoryTheory/Monoidal/NaturalTransformation.lean,Mathlib/CategoryTheory/Monoidal/Opposite.lean,Mathlib/CategoryTheory/Monoidal/Rigid/FunctorCategory.lean,Mathlib/CategoryTheory/Monoidal/Rigid/OfEquivalence.lean,Mathlib/CategoryTheory/Monoidal/Subcategory.lean,Mathlib/CategoryTheory/Monoidal/Transport.lean,Mathlib/CategoryTheory/Monoidal/Types/Basic.lean,Mathlib/CategoryTheory/Opposites.lean,Mathlib/CategoryTheory/Products/Associator.lean,Mathlib/CategoryTheory/Products/Basic.lean,Mathlib/CategoryTheory/Shift/Basic.lean,Mathlib/CategoryTheory/Shift/Pullback.lean,Mathlib/CategoryTheory/Whiskering.lean,Mathlib/RepresentationTheory/Action/Monoidal.lean,Mathlib/RepresentationTheory/GroupCohomology/Resolution.lean,Mathlib/RepresentationTheory/Rep.lean |
41 |
7 |
['Shamrock-Frost', 'joelriou'] |
nobody |
594-18051 1 year ago |
unknown |
0-0 0 seconds |
| 11100 |
eric-wieser author:eric-wieser |
feat(CategoryTheory/Limits): add `Functor.mapBinaryBiconeInv` |
---
- [ ] depends on: #11130
[](https://gitpod.io/from-referrer/)
It's tempting to try to prove something like
```lean
theorem Functor.mapBinaryBiconeInv_toCone [Limits.HasZeroMorphisms C]
[Limits.HasZeroMorphisms D]
(e : D ⥤ C) [IsEquivalence e] {X Y : D} (b : BinaryBicone (e.obj X) (e.obj Y)) :
(e.mapBinaryBiconeInv b).toCone =
(e.mapConeInv <| (Cones.postcompose (pairComp X Y e).symm.hom).obj b.toCone) := by
simp
sorry
theorem Functor.mapBinaryBiconeInv_toCocone [Limits.HasZeroMorphisms C]
[Limits.HasZeroMorphisms D]
(e : D ⥤ C) [IsEquivalence e] {X Y : D} (b : BinaryBicone (e.obj X) (e.obj Y)) :
(e.mapBinaryBiconeInv b).toCocone =
(e.mapCoconeInv <| (Cocones.precompose (pairComp X Y e).hom).obj b.toCocone) := by
sorry
```
but maybe equality is evil here |
merge-conflict
t-category-theory
awaiting-CI
|
52/0 |
Mathlib/CategoryTheory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Equivalence.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Biproducts.lean |
3 |
6 |
['TwoFX', 'eric-wieser', 'leanprover-community-mathlib4-bot'] |
nobody |
594-18051 1 year ago |
unknown |
0-0 0 seconds |
| 8503 |
thorimur author:thorimur |
feat: meta utils for `refine?` |
This PR introduces some metaprogramming infrastructure and utilities that are necessary for `refine?` (#8364).
* `elabTermWithHoles'` (and `withCollectingNewGoalsFrom'`): a more configurable version of `elabTermWithHoles`, which allows: preserving the initial mvar type; *not* tagging untagged goals; and postponing mvars.
* Some `Syntax` and `TSyntax` functionality, including:
* `TSyntax.map`(`M`), for acting on `TSyntax` with functions `f : Syntax -> (m) Syntax`
* Range operations: `includes` and `isEqByRange`
* `setTrailingInfoBy?` and `unsetOriginalTrailing`, which is like `unsetTrailing`, but behaves as expected.
* `Term.withoutModifyingState`, which does not allow unknown mvarIds to escape via the infotree
* `hasNewErrors`, which runs a monad computation and returns the value along with `true` or `false` depending on whether new error messages have been logged
* the option `pp.anonymousMVarSuffixes`, which can be set to `false` to replace all numeric suffixes of anonymous mvars with `✝`, which is useful in tandem with `#guard_msgs` for tests (but is essentially a workaround—although it can make some tactic states more legible).
---
I'm open to suggestions on the location and name of the option/delaborator used for trimming the numeric suffixes of anonymous mvar names (which is used in the tests)—including whether or not it should exist in the first place, as it's essentially just a workaround.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-meta
|
312/5 |
Mathlib.lean,Mathlib/Lean/CoreM.lean,Mathlib/Lean/Elab/Tactic/ElabTerm.lean,Mathlib/Lean/Elab/Term.lean,Mathlib/Util/Delaborators.lean,Mathlib/Util/Syntax.lean |
6 |
2 |
['kmill', 'thorimur'] |
kmill assignee:kmill |
594-18050 1 year ago |
810-76774 810 days ago |
38-46649 38 days |
| 8519 |
eric-wieser author:eric-wieser |
refactor(LinearAlgebra/TensorProduct): golf using `liftAddHom` |
This new `TensorProduct.liftAddHom` doesn't require bilinearity, only that scalar multiplication can be moved between the arguments.
While in theory we only need the `AddMonoidHom` version as it offers exactly the same generality, we first provide an unbundled `liftFun` as this seems to give a sizeable performance boost if used in downstream `lift` variants.
---
- [x] depends on: #8571
- [x] depends on: #8584
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
53/50 |
Mathlib/Algebra/Category/AlgebraCat/Monoidal.lean,Mathlib/LinearAlgebra/TensorProduct.lean,Mathlib/LinearAlgebra/TensorProduct/Tower.lean |
3 |
28 |
['bustercopley', 'eric-wieser', 'jcommelin', 'jjaassoonn', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib-bors'] |
nobody |
594-18050 1 year ago |
833-69813 833 days ago |
5-6524 5 days |
| 8582 |
eric-wieser author:eric-wieser |
wip |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
3/7 |
Mathlib/Algebra/Category/AlgebraCat/Monoidal.lean,Mathlib/LinearAlgebra/TensorProduct.lean |
2 |
4 |
['eric-wieser', 'leanprover-bot'] |
nobody |
594-18050 1 year ago |
unknown |
0-0 0 seconds |
| 8616 |
eric-wieser author:eric-wieser |
feat(Algebra/FreeAlgebra): add right action and `IsCentralScalar` |
---
- [ ] depends on: #8652
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
awaiting-CI
label:t-algebra$ |
30/8 |
Mathlib/Algebra/FreeAlgebra.lean |
1 |
1 |
['leanprover-community-mathlib4-bot'] |
nobody |
594-18050 1 year ago |
841-51992 841 days ago |
2-25170 2 days |
| 8658 |
eric-wieser author:eric-wieser |
feat: support right actions for `Con` |
This adds a new `Con.CompatibleSMul` typeclass that captures exactly the condition when `smul` descends to the quotient.
I was not quite able to merge this with `MulAction.QuotientAction`:
* The imports are such that the congruence relation `QuotientGroup.con` is not yet available in that file
* `QuotientGroup.con` requires the subgroup to be normal, while `MulAction.QuotientAction` does not
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
80/18 |
Mathlib/GroupTheory/Congruence.lean,Mathlib/RingTheory/Congruence.lean |
2 |
6 |
['YaelDillies', 'eric-wieser'] |
nobody |
594-18050 1 year ago |
810-70097 810 days ago |
29-65537 29 days |
| 8788 |
FMLJohn author:FMLJohn |
feat(Algebra/Module/GradeZeroModule): if `A` is a graded semiring and `M` is a graded `A`-module, then each grade of `M` is a module over the 0-th grade of `A`. |
---
- [ ] depends on: #8187
[](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 |
594-18050 1 year ago |
834-7946 834 days ago |
1-57831 1 day |
| 8906 |
jjaassoonn author:jjaassoonn |
feat: add some missing lemmas about linear algebra |
---
- [ ] depends on: #8905 [lifting injective modules to higher universe]
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
45/1 |
Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Module/Injective.lean,Mathlib/LinearAlgebra/Basic.lean,Mathlib/LinearAlgebra/BilinearMap.lean |
4 |
21 |
['AntoineChambert-Loir', 'alreadydone', 'jjaassoonn', 'leanprover-community-mathlib4-bot'] |
nobody |
594-18050 1 year ago |
829-77544 829 days ago |
0-343 5 minutes |
| 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 |
594-18050 1 year ago |
827-49880 827 days ago |
0-1 1 second |
| 9146 |
laughinggas author:laughinggas |
feat(Data/ZMod/Defs): Topological structure on `ZMod` |
Added a discrete topology structure to `ZMod n` for all `n`
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
awaiting-author
t-topology
label:t-algebra$ |
55/3 |
Mathlib.lean,Mathlib/Topology/Algebra/Constructions.lean,Mathlib/Topology/Algebra/Group/Basic.lean,Mathlib/Topology/Instances/ZMod.lean,Mathlib/Topology/Maps.lean |
5 |
61 |
['YaelDillies', 'eric-wieser', 'github-actions', 'jcommelin', 'laughinggas', 'mo271', 'urkud'] |
nobody |
594-18050 1 year ago |
800-62541 800 days ago |
7-11053 7 days |
| 9229 |
eric-wieser author:eric-wieser |
refactor(Algebra/GradedMonoid): Use `HMul` to define `GMul` |
This make the notation much nicer, but I'm pretty sure this is a bad idea for performance / ambiguity reasons.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
label:t-algebra$ |
114/125 |
Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/GradedMulAction.lean,Mathlib/Algebra/Module/GradedModule.lean,Mathlib/Algebra/MonoidAlgebra/ToDirectSum.lean,Mathlib/LinearAlgebra/TensorAlgebra/ToTensorPower.lean,Mathlib/LinearAlgebra/TensorPower.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/Internal.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean |
11 |
6 |
['eric-wieser', 'leanprover-bot'] |
nobody |
594-18050 1 year ago |
unknown |
0-0 0 seconds |
| 9252 |
astrainfinita author:astrainfinita |
chore: remove redundant covariance instances, add priority |
I noticed that the following code is surprisingly slow.
``` lean
import Mathlib
count_heartbeats in
example {n : ℕ} : CovariantClass (Fin (n + 1)) (Fin (n + 1)) (· + ·) (· < ·) := by
try infer_instance
sorry
```
This PR removed some redundant instances. The heartbeats have dropped from 19118 to 11450 (still too slow).
Lean4 still seems to make some redundant attempts. See also https://github.com/leanprover-community/mathlib4/issues/6646#issuecomment-1691792488.
---
[](https://gitpod.io/from-referrer/)
|
WIP
t-algebra
t-order
merge-conflict
slow-typeclass-synthesis
awaiting-author
label:t-algebra$ |
40/32 |
Mathlib/Algebra/CovariantAndContravariant.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/CategoryTheory/Abelian/DiagramLemmas/Four.lean |
4 |
8 |
['astrainfinita', 'leanprover-bot', 'urkud'] |
nobody |
594-18050 1 year ago |
unknown |
0-0 0 seconds |
| 9354 |
chenyili0818 author:chenyili0818 |
feat: monotonicity of gradient on convex real-valued functions |
This file is based on Mathlib.Analysis.Calculus.Gradient.Basic, and describes the calculation properties
co-authored-by: Ziyu Wang [tropicalfish910@gmail.com](mailto:tropicalfish910@gmail.com)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-analysis
|
540/0 |
Mathlib.lean,Mathlib/Analysis/Convex/ConvexFunction.lean |
2 |
15 |
['github-actions', 'winstonyin'] |
nobody |
594-18050 1 year ago |
784-48676 784 days ago |
23-36394 23 days |
| 9356 |
alexjbest author:alexjbest |
feat: assumption? |
A little helper for replacing `assumption`s with `exact` statements quickly
---
If this is approved I will add tests
This begs the question of whether it might simply be better to add some sort of code action for "replace with trythis output"
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-meta
|
24/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/TryAssumption.lean |
4 |
5 |
['alexjbest', 'j-loreaux', 'jcommelin'] |
nobody |
594-18050 1 year ago |
788-54048 788 days ago |
19-26336 19 days |
| 9469 |
dupuisf author:dupuisf |
feat: maximum modulus principle for functions vanishing at infinity |
This PR adds versions of the maximum modulus principle for functions vanishing at infinity that parallel those we already had for functions over a bounded set. These will have applications in e.g. norm interpolation.
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-analysis
|
71/0 |
Mathlib/Analysis/Complex/AbsMax.lean |
1 |
8 |
['dupuisf', 'j-loreaux'] |
nobody |
594-18050 1 year ago |
788-59296 788 days ago |
12-86009 12 days |
| 9482 |
yuma-mizuno author:yuma-mizuno |
refactor(CategoryTheory/Monoidal): add `LaxMonoidalStruct` |
Add a `LaxMonoidalStruct` with only the unit morphism `ε` and the tensorator `μ`. This is used in #6307 to provide two different constructors for `LaxMonoidal` that have common `ε` and `μ` but use the tensor of morphisms or the whiskerings.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-category-theory
|
21/8 |
Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/CategoryTheory/Monoidal/Functorial.lean,Mathlib/CategoryTheory/Monoidal/Limits.lean |
3 |
0 |
[] |
nobody |
594-18050 1 year ago |
unknown |
0-0 0 seconds |
| 9487 |
eric-wieser author:eric-wieser |
feat: the exponential of dual numbers over non-commutative rings |
This is a work in progress, as I don't know my way around the measure theory library.
---
- [x] depends on: #9489
- [x] depends on: #9486
- [x] depends on: #10427
- [ ] depends on: #10452
[](https://gitpod.io/from-referrer/)
|
WIP
t-algebra
t-measure-probability
merge-conflict
t-analysis
label:t-algebra$ |
97/0 |
Mathlib/Analysis/NormedSpace/TrivSqZeroExt.lean |
1 |
7 |
['github-actions', 'leanprover-community-mathlib4-bot'] |
nobody |
594-18050 1 year ago |
unknown |
0-0 0 seconds |
| 9504 |
alreadydone author:alreadydone |
chore: remove some IsSeparable assumptions |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
label:t-algebra$ |
41/14 |
Mathlib/NumberTheory/NumberField/Norm.lean,Mathlib/RingTheory/Norm.lean |
2 |
0 |
[] |
nobody |
594-18050 1 year ago |
unknown |
0-0 0 seconds |
| 9510 |
eric-wieser author:eric-wieser |
feat(Analysis/Calculus/DualNumber): Extending differentiable functions to dual numbers |
This shows that this operation preserves multiplication and composition
---
[](https://gitpod.io/from-referrer/)
|
WIP
t-algebra
t-analysis
awaiting-CI
label:t-algebra$ |
119/0 |
Mathlib/Analysis/Calculus/DualNumber.lean |
1 |
4 |
['github-actions'] |
nobody |
594-18050 1 year ago |
unknown |
0-0 0 seconds |
| 9570 |
eric-wieser author:eric-wieser |
feat(Algebra/Star): Non-commutative generalization of `StarModule` |
[Zulip thread](https://leanprover.zulipchat.com/#narrow/stream/116395-maths/topic/Star.20modules.20over.20non-commutative.20scalars/near/383664005).
Until we address #7152, we have to have both `StarModule` and `StarModule'`.
To prove this generalization is useful, this shows that with it as an assumption, `TrivSqZeroExt` is a `StarRing`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
awaiting-CI
label:t-algebra$ |
66/6 |
Mathlib/Algebra/Star/Basic.lean,Mathlib/Algebra/Star/Pi.lean,Mathlib/Algebra/Star/Prod.lean,Mathlib/Algebra/TrivSqZeroExt.lean |
4 |
0 |
[] |
nobody |
594-18050 1 year ago |
unknown |
0-0 0 seconds |
| 9642 |
eric-wieser author:eric-wieser |
refactor(Analysis/Normed/{Group/Field}/Basic): Let `extends` generate the repeated fields |
New-style structure shenanigans mean that instance constructors randomly complain about a missing field that can be found with `__ : MetricSpace _ := infer_instance`.
---
[](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 |
594-18050 1 year ago |
unknown |
0-0 0 seconds |
| 6580 |
adomani author:adomani |
chore: `move_add`-driven replacements |
This PR accompanies #6576 and uses `move_add/mul` to simplify/streamline a selection of proofs.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
|
12/13 |
Counterexamples/Monic_nonRegular.lean,Mathlib/Algebra/Associated.lean,Mathlib/Data/Polynomial/RingDivision.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean |
4 |
0 |
[] |
nobody |
594-18049 1 year ago |
879-67213 879 days ago |
62-34247 62 days |
| 6630 |
MohanadAhmed author:MohanadAhmed |
feat: Reduced Spectral Theorem |
For A hermitian matrix $A : n \times n$ with rank $A.rank \leq n$, we can eliminate the zero eigenvalues and their corresponding eigenvectors from the (alternate) spectral theorem. As such the matrix $A$ can be written as: $$A = V₁ D V₁ᴴ$$ where
- $V₁$ : $n \times r$ is the matrix of eigenvector with non-zero associated eigenvalues.
- $D$ is $r \times r$ is the diagonal matrix containing only non-zero eigenvalues on its main diagonal.
with $r = A.rank$ being the rank of the matrix
Towards that goal we make several equivalence definitions:
- `{i // hA.eigenvalues i ≠ 0} ≃ Fin (A.rank)` the set of non-zero eigenvalues can be indexed by the numbers from 0 to (r - 1).
- `{i // ¬ hA.eigenvalues i ≠ 0} ≃ Fin (n - A.rank)` the set of non-zero eigenvalues can be indexed by the numbers from 0 to (n - r - 1).
- `{i // hA.eigenvalues i ≠ 0} ⊕ {i // ¬hA.eigenvalues i ≠ 0} ≃ n`: the index set of the matrix (together with the associated eigenvector matrix and eigenvalues matrix ) can be partitioned into two complement groups the ones corresponding to non-zero eigenvalues and the ones corresponding to zero eigenvalues.
- We can then put the previous definitions together to obtain a: `Fin (A.rank) ⊕ Fin (Fintype.card n - A.rank) ≃ n`
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
label:t-algebra$ |
31/0 |
Mathlib/LinearAlgebra/Matrix/Spectrum.lean |
1 |
0 |
[] |
nobody |
594-18049 1 year ago |
unknown |
0-0 0 seconds |
| 6777 |
adomani author:adomani |
chore(Co*variantClass): replace eta-expanded (· * ·), (· + ·), (· ≤ ·), (· < ·) |
Replace `CovariantClass X X (· * ·) (· ≤ ·)` with -> `CovariantClass X X HMul.hMul LE.le` and similarly for `HAdd`, `LT`, `Contravariant`.
This PR is inspired by [Issue #6646](https://github.com/leanprover-community/mathlib4/issues/6646) and, more specifically, [this comment](https://github.com/leanprover-community/mathlib4/issues/6646#issuecomment-1692792066).
Note that https://github.com/leanprover/lean4/pull/2267 would make this unnecessary
---
```bash
# First sed command:
# the first captured pattern is `Co*variantClass `
# the second captured pattern is ``
# the third captured pattern is `+` or `*`
# the fourth captured pattern is `<` or `≤`
# a match for `Co*variantClass (· ·) (· ·)` becomes
# `Co*variantClass replaceop replaceop`
# Second sed command: similar to the first, but looks for `(Function.swap (· ·))`
sed -i '
s=\(Co[ntra]*variantClass \(..*\) \2 \)(· *\([+*]\) *·) (· *\([<≤]\) *·)=\1replaceop\3 replaceop\4=g
s=\(Co[ntra]*variantClass \(..*\) \2 \)(\([Functio\.swap ]*\)(· *\([+*]\) *·)) (· *\([<≤]\) *·)=\1(\3replaceop\4) replaceop\5=g
s=replaceop+=HAdd.hAdd=g
s=replaceop\*=HMul.hMul=g
s=replaceop<=LT.lt=g
s=replaceop≤=LE.le=g
s=\(Co[ntra]*variantClass N N\) (· \* ·) r=\1 HMul.hMul r=g
s=\(Co[ntra]*variantClass N N (swap μ)\) (· ≤ ·)=\1 LE.le=g
s=\(Co[ntra]*variantClass N N\) (swap (· \* ·)) r=\1 (swap HMul.hMul) r=g
s=\(CovariantClass (Filter α) (Filter α)\) (· / ·) (· ≤ ·)=\1 HDiv.hDiv LE.le=g
s=\(CovariantClass (Filter α) (Filter α)\) (swap (· / ·)) (· ≤ ·)=\1 (swap HDiv.hDiv) LE.le=g
s=\(Co[ntra]*variantClass .* (fun x y .> . \* .)\) (· ≤ ·)=\1 LE.le=g
s=\(Co[ntra]*variantClass .* (fun x y .> . \* .)\) (· < ·)=\1 LT.lt=g
s=\(Co[ntra]*variantClass [^}]*\) (· ≤ ·)=\1 LE.le=g
s=\(CovariantClass .* (Filter β)\) (· • ·) LE.le=\1 HSMul.hSMul LE.le=g
' $(git ls-files '*.lean')
```
[](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 |
594-18049 1 year ago |
868-69946 868 days ago |
35-63136 35 days |
| 6791 |
eric-wieser author:eric-wieser |
refactor: Use flat structures for morphisms |
This restores the symmetry we had in Lean3, where we had `MonoidHom.mk f one mul` not `MonoidHom.mk (OneHom.mk f one) mul`, and `f.toFun` wasn't notation for `f.toMulHom.toFun`.
The nesting provided by the previous inheritance is useless to us in the face of `MonoidHomClass.toMonoidHom`, which completely eta-expands the structure anyway.
We call the class `FunLikeFlatHack._` because this means the field is called `to_` which uses up less space in the goal view than any alternative.
---
[](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 |
594-18049 1 year ago |
unknown |
0-0 0 seconds |
| 6930 |
kmill author:kmill |
feat: `resynth_instances` tactic for resynthesizing instances in the goal or local context |
This tactic can be useful for debugging non-canonical instances or for fixing up goals and hypotheses after using the `classical` tactic.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-meta
|
327/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ResynthInstances.lean,test/ResynthInstances.lean |
4 |
0 |
[] |
nobody |
594-18049 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 |
594-18049 1 year ago |
unknown |
0-0 0 seconds |
| 7225 |
jjaassoonn author:jjaassoonn |
some random stuff |
- Consider two commutative rings `R` and `S` and `X` and `(R, S)`-bimodule.
Consider the tensor functor `(X ⊗[R] .)` from the category of `R`-modules to the category of `S`-modules and the hom functor `X →ₗ[S] .` from the category of `S`-modules to the category of `R`-modules, they form an adjunction.
- direct limits of modules commute with tensor product
- A proof of 
Three definitions for flatness:
1. in terms of injectiveness
```lean
def Flat.injective : Prop :=
∀ ⦃N N' : ModuleCat.{u} R⦄ (L : N ⟶ N'),
Function.Injective L → Function.Injective ((tensorRight (ModuleCat.of R M)).map L)
```
2. in terms of ideals
```lean
def Flat.ideal : Prop :=
∀ (I : Ideal R), Function.Injective (TensorProduct.lift ((lsmul R M).comp I.subtype))
```
3. in terms of finitely generated ideal
```lean
def Flat.fg_ideal : Prop :=
∀ ⦃I : Ideal R⦄ (_ : I.FG), Function.Injective (TensorProduct.lift ((lsmul R M).comp I.subtype))
```
and they are all equivalent:
```lean
lemma tfae : List.TFAE
[ Flat.injective R M,
Flat.ideal R M,
Flat.fg_ideal R M ] := by
```
The dependencies between these changed files are:
```
Algebra.Module.LinearMap---------------------------------
| |
| |
v v
Algebra.Category.ModuleCat.TensorProduct -----> Algebra.Character
|
|
|
v
Algebra.DirectLimitAndTensorProduct -------------> RingTheory.Flat
```
to prove equivalence of other definitions, e.g. exact functor, tor, etc should be easier with this because the proof is will be categorical
---
-------------
Some other stuff not about flatness
1. If $S$ is a submonoid and $I$ is maximally disjoint from $S$ then $I$ is prime
2. if $\mathfrak p$ is a minimal prime, then $x \in \mathfrak p$ implies that $x$ is a zero divisor
3. Noetherian rings has only finitely many minimal ideals
4. One version of [the prime avoidance lemma](https://en.wikipedia.org/wiki/Prime_avoidance_lemma): if $E$ is an addsubgroup of a ring and is mutiplicatively closed, and $\mathfrak p_i$ is some prime ideals, then not being any subset of the individual prime ideal implies that not being a subset of their union
----------
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
1828/16 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/TensorProduct.lean,Mathlib/Algebra/Character.lean,Mathlib/Algebra/DirectLimitAndTensorProduct.lean,Mathlib/Algebra/Module/LinearMap.lean,Mathlib/AlgebraicGeometry/PrimeSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/PrimeSpectrum/Noetherian.lean,Mathlib/CategoryTheory/Functor/Fin.lean,Mathlib/CategoryTheory/ShortExactSequence.lean,Mathlib/RingTheory/Flat.lean,Mathlib/RingTheory/Ideal/Basic.lean,Mathlib/RingTheory/Ideal/MinimalPrime.lean,Mathlib/RingTheory/Ideal/PrimeAvoidance.lean |
13 |
6 |
['eric-wieser', 'jjaassoonn'] |
nobody |
594-18049 1 year ago |
unknown |
0-0 0 seconds |
| 7227 |
kmill author:kmill |
feat: flexible binders and integration into notation3 |
Introduces `flexibleBinders`, which is an extensible system for binder notations that allow destructuring, bounded domains, and other niceties. Integrates this into `notation3`, and makes `Finset.sum`/`Finset.prod` use it.
---
- [ ] depends on: #6833
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-meta
|
1215/131 |
Mathlib.lean,Mathlib/Algebra/BigOperators/Basic.lean,Mathlib/Algebra/BigOperators/Intervals.lean,Mathlib/Algebra/BigOperators/NatAntidiagonal.lean,Mathlib/Mathport/Notation.lean,Mathlib/Util/FlexibleBinders.lean,Mathlib/Util/FlexibleBindersFinset.lean,Mathlib/Util/SyntaxFun.lean,test/FlexibleBinders.lean,test/notation3.lean |
10 |
3 |
['eric-wieser', 'kmill', 'leanprover-community-mathlib4-bot'] |
nobody |
594-18049 1 year ago |
unknown |
0-0 0 seconds |
| 7351 |
shuxuezhuyi author:shuxuezhuyi |
feat(Topology/Algebra/Order): extend function on `Ioo` to `Icc` |
Extend a strictly monotone function defined on an open interval.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-order
|
59/0 |
Mathlib.lean,Mathlib/Data/Set/Function.lean,Mathlib/Topology/Algebra/Order/IccExtendFromIoo.lean |
3 |
7 |
['j-loreaux', 'shuxuezhuyi'] |
nobody |
594-18049 1 year ago |
872-73277 872 days ago |
30-32706 30 days |
| 7467 |
ADedecker author:ADedecker |
feat: spectrum of X →ᵇ ℂ is StoneCech X |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-analysis
|
121/23 |
Mathlib/Analysis/NormedSpace/Star/BoundedContinuousFunction.lean,Mathlib/Analysis/NormedSpace/Star/GelfandDuality.lean,Mathlib/Topology/ContinuousFunction/Bounded.lean,Mathlib/Topology/ContinuousFunction/Compact.lean |
4 |
1 |
['github-actions'] |
nobody |
594-18049 1 year ago |
unknown |
0-0 0 seconds |
| 7512 |
Komyyy author:Komyyy |
perf: override the data structures of coinductive types |
The data structures of the model of coinductive types (`Stream'`, `Computation`, `Stream'.Seq`) are inefficient, so we override their data structures.
---
- [x] depends on: #7514
- [ ] depends on: leanprover/lean4#2292
- [x] depends on: leanprover/std4#371
- [x] depends on: #8460
[](https://gitpod.io/from-referrer/)
|
WIP
blocked-by-core-PR
blocked-by-other-PR
merge-conflict
t-meta
|
6919/3700 |
Mathlib.lean,Mathlib/Algebra/ContinuedFractions/Basic.lean,Mathlib/Algebra/ContinuedFractions/Computation/ApproximationCorollaries.lean,Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/ContinuedFractions/Computation/Basic.lean,Mathlib/Algebra/ContinuedFractions/Computation/CorrectnessTerminating.lean,Mathlib/Algebra/ContinuedFractions/Computation/TerminatesIffRat.lean,Mathlib/Algebra/ContinuedFractions/Computation/Translations.lean,Mathlib/Algebra/ContinuedFractions/ContinuantRecurrence.lean,Mathlib/Algebra/ContinuedFractions/EvalEquiv.lean,Mathlib/Algebra/ContinuedFractions/Real.lean,Mathlib/Algebra/ContinuedFractions/TerminatedStable.lean,Mathlib/Algebra/ContinuedFractions/Translations.lean,Mathlib/Combinatorics/Hindman.lean,Mathlib/Control/Fix.lean,Mathlib/Control/LawfulFix.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/Seq/Parallel.lean,Mathlib/Data/Seq/Seq.lean,Mathlib/Data/Seq/WSeq.lean,Mathlib/Data/Stream.lean,lean-toolchain |
22 |
2 |
['digama0', 'leanprover-community-mathlib4-bot'] |
nobody |
594-18049 1 year ago |
unknown |
0-0 0 seconds |
| 7564 |
shuxuezhuyi author:shuxuezhuyi |
feat(Topology/Algebra/Order): extend strictly monotone function on `Ioo` to homeomorphism on `Icc` |
A strictly monotone function between open intervals can be extended to a homeomorphism between the closed intervals.
---
- [ ] depends on: #7351
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-topology
blocked-by-other-PR
|
162/0 |
Mathlib.lean,Mathlib/Topology/Algebra/Order/IccExtendFromIoo.lean |
2 |
1 |
['leanprover-community-mathlib4-bot'] |
nobody |
594-18049 1 year ago |
892-5281 892 days ago |
0-537 8 minutes |
| 7601 |
digama0 author:digama0 |
feat: ring hom support in `ring` |
As [requested on Zulip](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/aroots/near/395750055). Adds support for distributing ring morphisms in `ring`:
```lean
example (p : ℤ[X]) (r : ℤ) : C (2 * r) * p = C r * p + C r * p := by ring
```
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
t-meta
label:t-algebra$ |
257/48 |
Mathlib/Tactic/Ring/Basic.lean,test/linear_combination.lean,test/ring.lean |
3 |
1 |
['eric-wieser'] |
nobody |
594-18049 1 year ago |
827-1652 827 days ago |
62-28836 62 days |
| 7615 |
eric-wieser author:eric-wieser |
chore(LinearAlgebra/Basic): generalize compatibleMaps to semilinear maps |
Spotted while reviewing #7611
---
- [x] depends on: #7611
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
easy
awaiting-CI
label:t-algebra$ |
9/33 |
Mathlib/LinearAlgebra/Basic.lean |
1 |
1 |
['leanprover-community-mathlib4-bot'] |
nobody |
594-18049 1 year ago |
888-52757 888 days ago |
0-1 1 second |
| 7713 |
RemyDegenne author:RemyDegenne |
feat: add_left/right_inj for measures |
`μ + ν₁ = μ + ν₂ ↔ ν₁ = ν₂`, and similarly on the right. This is not true in general for measures, but is true when `μ` is mutually singular with the two other measures or when `μ` is finite.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-measure-probability
|
53/1 |
Mathlib/MeasureTheory/Measure/MutuallySingular.lean,lean-toolchain |
2 |
6 |
['RemyDegenne', 'digama0', 'eric-wieser', 'fpvandoorn'] |
nobody |
594-18049 1 year ago |
882-12187 882 days ago |
0-62955 17 hours |
| 7835 |
shuxuezhuyi author:shuxuezhuyi |
feat(LinearAlgebra/Matrix): `lift` for projective special linear group |
We provide converters to help with the use of "quotient.liftOn" on projective special linear groups.
---
- [x] depends on: #7826
- [x] depends on: #7791
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
52/0 |
Mathlib/LinearAlgebra/Matrix/ProjectiveSpecialLinearGroup.lean |
1 |
3 |
['jcommelin', 'leanprover-community-mathlib4-bot', 'shuxuezhuyi'] |
jcommelin assignee:jcommelin |
594-18049 1 year ago |
740-27880 740 days ago |
1-85797 1 day |
| 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 |
594-18049 1 year ago |
648-34557 648 days ago |
1-47913 1 day |
| 7909 |
mcdoll author:mcdoll |
fix(Tactic/Continuity): remove npowRec and add new tag for Continuous.pow |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-topology
t-meta
|
14/9 |
Mathlib/Tactic/Continuity.lean,Mathlib/Topology/Category/TopCat/Limits/Basic.lean,test/Continuity.lean |
3 |
2 |
['eric-wieser'] |
nobody |
594-18049 1 year ago |
873-43349 873 days ago |
0-72515 20 hours |
| 7932 |
eric-wieser author:eric-wieser |
refactor(Algebra/TrivSqZeroExt): replace with a structure |
This is dogfooding my claim that "one-field structures are the lesser evil in Lean 4".
This runs into the `simp [(stupid_parens)]` bug; or rather, a particular nasty instance of it where the offending simp call is inside `@[simps]`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
awaiting-CI
label:t-algebra$ |
155/73 |
Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/TrivSqZeroExt.lean,Mathlib/Logic/Equiv/TransferInstance.lean,Mathlib/Topology/Instances/TrivSqZeroExt.lean |
4 |
1 |
['github-actions'] |
nobody |
594-18049 1 year ago |
unknown |
0-0 0 seconds |
| 7962 |
eric-wieser author:eric-wieser |
feat: `DualNumber (Quaternion R)` as a `CliffordAlgebra` |
This provides a clifford algebra isomorphic to the dual quaternions
---
- [x] depends on: #7934
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
label:t-algebra$ |
307/7 |
Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/QuaternionBasis.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Equivs.lean |
3 |
16 |
['github-actions', 'leanprover-community-mathlib4-bot'] |
nobody |
594-18049 1 year ago |
unknown |
0-0 0 seconds |
| 8364 |
thorimur author:thorimur |
feat: `refine?` |
This PR adds `refine? e`, which suggests replacing unsynthesized `_`'s in `e` with `?_` in order to make `refine e'` work:
```lean
example : Nat → Nat := by
refine? fun (_ : _) => _ -- Try this: refine fun (_ : _) => ?_
```
Note that this only suggests replacements for `_`'s present in the syntax; to create goals for implicit or instance arguments, the user is expected to use `refine'`.
---
I'm especially open to suggestions on the filename (currently `RefineFix`).
I'm also curious if this behaves as expected! Feel free to try it out "in real life" and comment here on edge cases.
- [ ] depends on: #8503
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-meta
|
684/5 |
Mathlib.lean,Mathlib/Lean/CoreM.lean,Mathlib/Lean/Elab/Tactic/ElabTerm.lean,Mathlib/Lean/Elab/Term.lean,Mathlib/Tactic.lean,Mathlib/Tactic/RefineFix.lean,Mathlib/Util/Delaborators.lean,Mathlib/Util/Syntax.lean,test/RefineFix.lean |
9 |
5 |
['j-loreaux', 'leanprover-community-mathlib4-bot', 'thorimur'] |
nobody |
594-18049 1 year ago |
849-38183 849 days ago |
6-59892 6 days |
| 3575 |
Kha author:Kha |
perf: selectively enable precompilation |
---
This is an initial performance test on Linux. TODO:
- [ ] test on macOS and Windows as well
- [ ] adapt caching |
merge-conflict
WIP
|
3/0 |
lakefile.lean |
1 |
21 |
['Kha', 'kim-em', 'leanprover-bot', 'tydeu'] |
nobody |
594-18048 1 year ago |
unknown |
0-0 0 seconds |
| 4771 |
thorimur author:thorimur |
feat: Backtrack minimize |
Utilities for backtracking in order to attain a minimum according to some arbitrary notion of size when generating lists of parts and alternatives in alternating fashion. Motivated by minimizing the number of generated subgoals under apply-like actions on the goal.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-meta
|
482/1 |
Mathlib/Tactic/Backtracking.lean,test/Backtracking.lean |
2 |
0 |
[] |
nobody |
594-18048 1 year ago |
unknown |
0-0 0 seconds |
| 4775 |
thorimur author:thorimur |
feat: `SubExpr` utilities |
This file contains utilities for handling positions in expressions, including folding over subexpressions along with their positions.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-meta
|
148/0 |
Mathlib.lean,Mathlib/Lean/SubExpr.lean |
2 |
0 |
[] |
nobody |
594-18048 1 year ago |
unknown |
0-0 0 seconds |
| 4785 |
thorimur author:thorimur |
feat: ExprWithLevels |
This introduces `ExprWithLevels`, a means of emulating universe polymorphism for non-constants during metaprogramming. [Description pending]
- [ ] depends on: #4786
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-meta
|
491/1 |
Mathlib.lean,Mathlib/Lean/Meta/AppBuilder.lean,Mathlib/Lean/Meta/Basic.lean,Mathlib/Lean/Meta/ExprWithLevels.lean |
4 |
1 |
['kim-em'] |
nobody |
594-18048 1 year ago |
unknown |
0-0 0 seconds |
| 4871 |
j-loreaux author:j-loreaux |
feat: define the additive submonoid of positive elements in a star ordered ring |
This file defines the `AddSubmonoid` of nonegative elements `StarOrderedRing.positive R` in a star ordered ring `R` with carrier `{ x : R | 0 ≤ x }` (in fact, the definition only requires `OrderedAddCommMonoid R` to allow for other use cases, but it is primarily intended for `StarOrderedRing R`). Equivalently, this is the `AddSubmonoid` generated by the elements of the form `star s * s`. Even though this technically corresponds to the nonnegative elements, the "positive" terminology is standard throughout the literature (at least in C⋆-algebra theory and operator theory), so we choose to prefer that.
The advantage of using this over other definitions of positivity is that it allows us to unify several different concepts under a single umbrella. For example, one might be tempted to consider the collection of bounded linear operators on an Hilbert space and define positivity as `∀ x, 0 ≤ ⟪T x, x⟫`, but this doesn't generalize nicely to C⋆-algebras. Alternatively, one could define positivity as those self-adjoint elements with nonnegative spectrum, but this requires the algebra to be unital. Our definition herein conveniently sidesteps these issues.
---
Note: I declared the `AddMonoidWithOne` and `AddGroupWithOne` instances for `selfAdjoint R` separately because it made the proof of the latter easier.
- [x] depends on: #6229
- [x] depends on: #10209
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
awaiting-CI
label:t-algebra$ |
216/12 |
Mathlib.lean,Mathlib/Algebra/Order/Ring/CharZero.lean,Mathlib/Algebra/Star/Order.lean,Mathlib/Algebra/Star/Positive.lean,Mathlib/Algebra/Star/SelfAdjoint.lean,Mathlib/GroupTheory/Submonoid/Operations.lean |
6 |
28 |
['eric-wieser', 'j-loreaux', 'leanprover-community-mathlib4-bot'] |
nobody |
594-18048 1 year ago |
1007-4100 1007 days ago |
5-55287 5 days |
| 5133 |
kmill author:kmill |
feat: IntermediateField adjoin syntax for sets of elements |
Adds support for both `F⟮S⟯` and `F⟮α⟯`. The term `x` in `F⟮x⟯` is elaborated, and if it has type `Set _` the first interpretation is used, and otherwise the second is.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
label:t-algebra$ |
110/55 |
Mathlib/FieldTheory/Adjoin.lean |
1 |
0 |
[] |
nobody |
594-18048 1 year ago |
1005-19174 1005 days ago |
0-20 20 seconds |
| 5912 |
ADedecker author:ADedecker |
feat(Analysis.Distribution.ContDiffMapSupportedIn): space of smooth maps with support in a fixed compact |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-analysis
|
513/13 |
Mathlib.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Data/FunLike/Basic.lean,Mathlib/Data/Set/Function.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean,Mathlib/Topology/ContinuousFunction/Bounded.lean |
8 |
0 |
[] |
nobody |
594-18048 1 year ago |
unknown |
0-0 0 seconds |
| 6002 |
slerpyyy author:slerpyyy |
feat(Analysis.SpecialFunctions.Gaussian): add `integrable_fun_mul_exp_neg_mul_sq` |
If `f : ℝ → ℝ` is bounded by a polynomial, `fun x : ℝ => f x * exp (-b * x ^ 2)` is integrable.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-analysis
|
26/0 |
Mathlib/Analysis/SpecialFunctions/Gaussian.lean |
1 |
3 |
['ocfnash', 'slerpyyy', 'urkud'] |
nobody |
594-18048 1 year ago |
962-18410 962 days ago |
9-71263 9 days |
| 6079 |
eric-wieser author:eric-wieser |
fix: deduplicate variables |
`variables {A} [Ring A]` meant "update the binder of `A`" in Lean 3, but now means "create a duplicate variable called `A`" (or at least, does so when inspecting the state within the variables line).
This removes a number of porting notes that were stumbling over this behavior.
[Related Zulip thread](https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/unexpected.20.60variable.60.20behaviour.3F/near/360154080)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-CI
|
1012/443 |
Archive/Wiedijk100Theorems/CubingACube.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/CharP/Basic.lean,Mathlib/Algebra/CovariantAndContravariant.lean,Mathlib/Algebra/DirectLimit.lean,Mathlib/Algebra/DirectSum/Finsupp.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/Group/Pi.lean,Mathlib/Algebra/GroupPower/Basic.lean,Mathlib/Algebra/GroupPower/Lemmas.lean,Mathlib/Algebra/Hom/Aut.lean,Mathlib/Algebra/Hom/Equiv/Basic.lean,Mathlib/Algebra/Hom/Group.lean,Mathlib/Algebra/Homology/HomologicalComplex.lean,Mathlib/Algebra/Homology/HomotopyCategory.lean,Mathlib/Algebra/Homology/ImageToKernel.lean,Mathlib/Algebra/Homology/ShortComplex/LeftHomology.lean,Mathlib/Algebra/IndicatorFunction.lean,Mathlib/Algebra/Jordan/Basic.lean,Mathlib/Algebra/Lie/Classical.lean,Mathlib/Algebra/Lie/Subalgebra.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/Algebra/Lie/TensorProduct.lean,Mathlib/Algebra/Module/Injective.lean,Mathlib/Algebra/Module/LinearMap.lean,Mathlib/Algebra/Module/Submodule/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Grading.lean,Mathlib/Algebra/Order/CompleteField.lean,Mathlib/Algebra/Order/Pi.lean,Mathlib/Algebra/Order/Ring/Lemmas.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/Algebra/SMulWithZero.lean,Mathlib/Algebra/Star/Module.lean,Mathlib/Algebra/Support.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Point.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/AlgebraicTopology/DoldKan/Decomposition.lean,Mathlib/AlgebraicTopology/MooreComplex.lean,Mathlib/Analysis/Calculus/ContDiff.lean,Mathlib/Analysis/Calculus/FormalMultilinearSeries.lean,Mathlib/Analysis/Calculus/LocalExtr.lean,Mathlib/Analysis/Calculus/TangentCone.lean,Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/Convex/Combination.lean,Mathlib/Analysis/Convex/Extreme.lean,Mathlib/Analysis/Convex/Function.lean,Mathlib/Analysis/Convex/Hull.lean,Mathlib/Analysis/Convex/Independent.lean,Mathlib/Analysis/Convex/Intrinsic.lean,Mathlib/Analysis/Convex/Join.lean,Mathlib/Analysis/Convex/Quasiconvex.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Analysis/Convex/Star.lean,Mathlib/Analysis/Convex/Uniform.lean,Mathlib/Analysis/Convolution.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Analysis/InnerProductSpace/Calculus.lean,Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Analysis/LocallyConvex/BalancedCoreHull.lean,Mathlib/Analysis/LocallyConvex/Basic.lean,Mathlib/Analysis/LocallyConvex/Bounded.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Group/AddCircle.lean,Mathlib/Analysis/Normed/Group/Hom.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Analysis/NormedSpace/Completion.lean,Mathlib/Analysis/NormedSpace/LinearIsometry.lean,Mathlib/Analysis/NormedSpace/Multilinear.lean,Mathlib/Analysis/NormedSpace/OperatorNorm.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/CategoryTheory/Action.lean,Mathlib/CategoryTheory/Bicategory/LocallyDiscrete.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation.lean,Mathlib/CategoryTheory/Closed/Ideal.lean,Mathlib/CategoryTheory/ConcreteCategory/UnbundledHom.lean,Mathlib/CategoryTheory/Core.lean,Mathlib/CategoryTheory/Endofunctor/Algebra.lean,Mathlib/CategoryTheory/Enriched/Basic.lean,Mathlib/CategoryTheory/EssentialImage.lean,Mathlib/CategoryTheory/FullSubcategory.lean,Mathlib/CategoryTheory/Functor/Category.lean,Mathlib/CategoryTheory/Limits/Fubini.lean,Mathlib/CategoryTheory/Limits/HasLimits.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Kernels.lean,Mathlib/CategoryTheory/Limits/Shapes/BinaryProducts.lean,Mathlib/CategoryTheory/Limits/Shapes/Biproducts.lean,Mathlib/CategoryTheory/Limits/Shapes/Equalizers.lean,Mathlib/CategoryTheory/Limits/Shapes/Images.lean,Mathlib/CategoryTheory/Limits/Shapes/WidePullbacks.lean,Mathlib/CategoryTheory/Linear/LinearFunctor.lean,Mathlib/CategoryTheory/Localization/Construction.lean,Mathlib/CategoryTheory/Monoidal/Braided.lean,Mathlib/CategoryTheory/Monoidal/CommMon_.lean,Mathlib/CategoryTheory/Monoidal/Discrete.lean |
302 |
1 |
['timotree3'] |
nobody |
594-18048 1 year ago |
unknown |
0-0 0 seconds |
| 6195 |
eric-wieser author:eric-wieser |
chore(RingTheory/TensorProduct): golf the `mul` definition |
---
- [x] depends on: #6211
- [x] depends on: #6187
[](https://gitpod.io/from-referrer/)
Strangely this causes a timeout downstream
|
merge-conflict
t-algebra
awaiting-CI
label:t-algebra$ |
4/29 |
Mathlib/RingTheory/TensorProduct.lean |
1 |
1 |
['leanprover-community-mathlib4-bot'] |
nobody |
594-18048 1 year ago |
unknown |
0-0 0 seconds |
| 6210 |
MohanadAhmed author:MohanadAhmed |
feat(Data/IsROrC/Basic): add a `StarOrderedRing` instance |
This PR implements a suggestion by @urkud on [Zulip thread](https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/PartialOrder.20and.20StarOrderedRing.20on.20IsROrC) on how to get a `StarOrderedRing` on the `IsROrC` class. In that discussion the suggested step were:
1. Add PartialOrder K to the list of extends and add le_iff_re_im : z ≤ w ↔ re z ≤ re w ∧ im z = im w to the list of axioms.
2. Prove StarOrderedRing instance for any IsROrC.
3. Add (almost trivial) le_iff_re_im proofs to IsROrC instances for real and complex numbers.
This PR does exactly these three steps
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
t-analysis
label:t-algebra$ |
25/24 |
Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/IsROrC/Basic.lean |
4 |
19 |
['MohanadAhmed', 'eric-wieser', 'j-loreaux'] |
nobody |
594-18048 1 year ago |
950-64556 950 days ago |
12-17588 12 days |
| 6307 |
yuma-mizuno author:yuma-mizuno |
refactor(CategoryTheory/Monoidal): add whiskering operators |
We introduce whiskering operators. This allows us to introduce a simp-normal form for morphisms in monoidal categories. Rewriting into simp-normal forms is especially useful when combined with the coherence tactic.
---
- [x] depends on: #6420
- [x] depends on: #8191
- [x] depends on: #9988
- [x] depends on: #9991
- [x] depends on: #9995
- [x] depends on: #10061
- [x] depends on: #10078
- [x] depends on: #10898
- [x] depends on: #10912
- [x] depends on: #11223
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-category-theory
|
325/280 |
Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/CategoryTheory/Bicategory/End.lean,Mathlib/CategoryTheory/Closed/Ideal.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Monoidal/Free/Coherence.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/FunctorCategory.lean,Mathlib/CategoryTheory/Monoidal/Limits.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/CategoryTheory/Monoidal/NaturalTransformation.lean,Mathlib/CategoryTheory/Monoidal/Opposite.lean,Mathlib/CategoryTheory/Monoidal/Transport.lean,test/CategoryTheory/Coherence.lean |
15 |
38 |
['eric-wieser', 'github-actions', 'grunweg', 'jcommelin', 'kim-em', 'leanprover-community-mathlib4-bot', 'yuma-mizuno'] |
nobody |
594-18048 1 year ago |
732-70722 732 days ago |
60-84345 60 days |
| 6328 |
astrainfinita author:astrainfinita |
chore: make some instance about `Sub...Class` lower priority |
Many similar instances have been marked as lower priority. I'd like to see if this would make things faster.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
awaiting-CI
label:t-algebra$ |
14/14 |
Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean,Mathlib/RingTheory/Subsemiring/Basic.lean,lean-toolchain |
3 |
1 |
['digama0'] |
nobody |
594-18048 1 year ago |
unknown |
0-0 0 seconds |
| 6330 |
astrainfinita author:astrainfinita |
chore: make some instance about `Sub...Class` higher priority than `Sub...` |
The opposite direction to #6328.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
slow-typeclass-synthesis
label:t-algebra$ |
123/128 |
Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/FieldTheory/IsAlgClosed/Basic.lean,Mathlib/FieldTheory/Subfield.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean,Mathlib/RingTheory/Polynomial/Quotient.lean,Mathlib/RingTheory/Subring/Basic.lean,Mathlib/RingTheory/Subsemiring/Basic.lean,lean-toolchain |
11 |
13 |
['astrainfinita', 'digama0', 'leanprover-bot'] |
nobody |
594-18048 1 year ago |
unknown |
0-0 0 seconds |
| 6403 |
astrainfinita author:astrainfinita |
chore: change instance priorities of `Ordered*` hierarchy |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-order
merge-conflict
slow-typeclass-synthesis
awaiting-author
label:t-algebra$ |
253/79 |
Mathlib/Algebra/Order/CompleteField.lean,Mathlib/Algebra/Order/Field/Canonical/Defs.lean,Mathlib/Algebra/Order/Field/Defs.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/Monoid/Basic.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Monoid/WithZero/Defs.lean,Mathlib/Algebra/Order/Ring/Canonical.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/Star.lean,Mathlib/Algebra/Order/WithZero.lean,Mathlib/Analysis/InnerProductSpace/Orientation.lean,Mathlib/LinearAlgebra/Orientation.lean,Mathlib/RingTheory/HahnSeries.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean |
18 |
39 |
['Vierkantor', 'astrainfinita', 'digama0', 'eric-wieser', 'j-loreaux', 'leanprover-bot'] |
nobody |
594-18048 1 year ago |
838-57190 838 days ago |
13-18399 13 days |
| 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 |
594-18048 1 year ago |
866-4048 866 days ago |
83-76369 83 days |
| 7076 |
grunweg author:grunweg |
feat: define measure zero subsets of a manifold |
A topological manifold has no canonical measure, but there is a canonical notion of measure zero subsets.
We show that these are closed under subsets and countable unions (hence define a filter, the almost everywhere filter)
and that a closed nowhere dense has empty interior.
This is necessary for stating the general version of Sard's theorem (in finite dimensions), and a first step towards its proof.
This code was written at LftCM 2023. Thanks for @fpvandoorn for mentoring me! :heart:
---
Unresolved questions/looking for feedback
- Is "measure zero" a good name or would "null set" be better? I tend towards the former, but welcome input from a measure theorist (which I'm not).
- What is the correct definition? One could also define "measure zero" using any `IsOpenPosMeasure` on the charted space.
I think all results in this file still hold then, but for applications (e.g., Sard's theorem), this might be too general.
- define custom notation, similar to the a.e. filter on a measure space? (We could include $J$ instead of $\mu$.)
- what's the right syntax for formulas in docstrings --- use LaTeX or backticks? I don't know how to preview the generated docs, the guidelines are a bit ambiguous for me.
|
merge-conflict
WIP
t-differential-geometry
t-measure-probability
|
165/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/MeasureZero.lean,docs/references.bib |
3 |
27 |
['ADedecker', 'github-actions', 'grunweg', 'mo271', 'sgouezel'] |
ADedecker assignee:ADedecker |
594-18048 1 year ago |
749-15357 749 days ago |
43-56110 43 days |
| 3757 |
thorimur author:thorimur |
feat: config options for `fail_if_no_progress` |
This PR creates config options for `fail_if_no_progress` that allow the user to tweak what exactly counts as "progress". This includes whether to use defeq or `BEq`, what transparency to use, and which parts of the goal and local context to check.
It also splits off the comparison functionality into `Mathlib.Lean.Meta.Compare`, which provides fully configurable comparison functions for common complex metaprogramming types not specific to `fail_if_no_progress`. These types are `Expr`, `LocalDecl`, `LocalContext`, `MetavarDecl`, `MVarId`, and `List MVarId`.
---
See [zulip](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/progress.20on.20fail_if_no_progress) for a couple review questions.
Status update: this PR is now basically done, save for some extra tests which should probably be included.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-meta
|
603/54 |
Mathlib.lean,Mathlib/Lean/Meta.lean,Mathlib/Lean/Meta/Compare.lean,Mathlib/Tactic/FailIfNoProgress.lean,test/fail_if_no_progress.lean |
5 |
38 |
['alexjbest', 'github-actions', 'joneugster', 'kim-em', 'thorimur'] |
nobody |
594-18047 1 year ago |
933-42183 933 days ago |
45-49128 45 days |
| 12353 |
thorimur author:thorimur |
feat: `conv%` |
This PR introduces `conv% e => tac`, along with `simp%`, `norm_num%`, and `push_neg%`, which are defined in terms of `conv%`.
It also introduces `conv%?` (and `simp%?`, `norm_num%?`, and `push_neg%?`) as shortcuts for `show_term ...`.
This is a relatively straightforward refactor of code already present in the implementation of `#conv`, and otherwise relies entirely on simple macros.
This PR also introduces some modifications to existing command syntax for `#conv`, `#simp`, and `#norm_num`:
* The syntax for `#conv` was `#conv tac => e`; however, this is inconsistent with the tactic syntax, and so this has been flipped to `#conv e => tac`. Likewise, `conv%` uses the same (new) syntax `conv% e => tac`.
* `#simp` and `#norm_num` separated their config and `only` syntax from the expression by an optional `=>` (for `#simp`) and an optional `:` (for `#norm_num`) (e.g. `#simp only [lem] => e`). These have both been replaced with an optional`on` (e.g. `#simp only [lem] on e`) which is also used for `simp%` and `norm_num%`.
Although `#whnf` is implemented in terms of `#conv`, this PR doesn't introduce `whnf%` in the same way, as that's probably better off being implemented directly instead of through `conv`.
---
WIP: needs tests.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-meta
|
131/32 |
Mathlib/Tactic/Conv.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/PushNeg.lean,docs/Conv/Guide.lean |
4 |
0 |
[] |
nobody |
589-80757 1 year ago |
693-32399 693 days ago |
0-17 17 seconds |
| 13852 |
astrainfinita author:astrainfinita |
perf: skip some typeclasses in TC search |
---
- [ ] depends on: #7873
[](https://gitpod.io/from-referrer/)
|
merge-conflict
slow-typeclass-synthesis
blocked-by-other-PR
|
45/33 |
Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/RingTheory/Norm.lean |
3 |
21 |
['MichaelStollBayreuth', 'astrainfinita', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
589-74437 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 |
587-6026 1 year ago |
unknown |
0-0 0 seconds |
| 15679 |
adomani author:adomani |
test: refactor in CI |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
213/5 |
.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,Mathlib.lean,Mathlib/Algebra/Homology/HomotopyCategory/SingleFunctors.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unique.lean,Mathlib/Analysis/Convex/Combination.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/CategoryTheory/Bicategory/Adjunction.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/GroupTheory/Coxeter/Matrix.lean,Mathlib/Order/Filter/Cocardinal.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/TestRefactor.lean,Refactor/Main.lean,lakefile.lean,lean-toolchain |
21 |
1 |
['github-actions'] |
nobody |
581-61602 1 year ago |
583-71044 583 days ago |
0-8 8 seconds |
| 7565 |
shuxuezhuyi author:shuxuezhuyi |
feat(Topology/Algebra/Order): extend homeomorphism of `Ioo` to `Icc` |
We extend the homeomorphisms between open intervals to homeomorphisms between the closed intervals.
---
- [ ] depends on: #7018
- [ ] depends on: #7351
- [ ] depends on: #7564
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-topology
blocked-by-other-PR
t-order
|
389/5 |
Mathlib.lean,Mathlib/Data/Set/Intervals/Image.lean,Mathlib/Order/Directed.lean,Mathlib/Topology/Algebra/Order/IccExtendFromIoo.lean,Mathlib/Topology/Algebra/Order/IntermediateValue.lean |
5 |
1 |
['leanprover-community-mathlib4-bot'] |
nobody |
580-11702 1 year ago |
891-78981 891 days ago |
0-222 3 minutes |
| 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 |
580-11593 1 year ago |
706-20430 706 days ago |
53-73442 53 days |
| 9973 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: polynomials formed by lists |
From https://github.com/leanprover-community/mathlib/pull/15476
---
[](https://gitpod.io/from-referrer/)
|
please-adopt
merge-conflict
t-data
|
311/0 |
Mathlib.lean,Mathlib/Data/Polynomial/OfList.lean |
2 |
0 |
[] |
nobody |
580-11126 1 year ago |
unknown |
0-0 0 seconds |
| 12926 |
joelriou author:joelriou |
feat(CategoryTheory): the monoidal category structure induced by a monoidal functor |
In this PR, given a monoidal functor `F : MonoidalFunctor C D`, we define a monoidal category structure on the category `InducedCategory D F.obj`, which has the "same" objects as `C`, but the morphisms between `X` and `Y` identify to `F.obj X ⟶ F.obj Y`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-category-theory
|
105/0 |
Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Induced.lean |
2 |
3 |
['eric-wieser', 'github-actions', 'joelriou'] |
nobody |
580-9525 1 year ago |
671-14730 671 days ago |
0-10 10 seconds |
| 12869 |
adomani author:adomani |
feat: linter and script for `theorem` vs `lemma` |
This PR contains a linter for flagging doc-string-less `theorem`s, as well as a bash script that, once the linter ran on Mathlib, automatically replaces every linter-offending `theorem` by `lemma`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-linter
awaiting-author
|
106/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/ThmLemma.lean,scripts/thmLemma.sh |
4 |
13 |
['adomani', 'github-actions', 'grunweg', 'joneugster'] |
nobody |
579-82689 1 year ago |
634-16784 634 days ago |
38-16364 38 days |
| 14563 |
awueth author:awueth |
feat: if-then-else of exclusive or statement |
---
If `¬(P ∧ Q)` then `ite (P ∨ Q) a 1 = (ite P a 1) * (ite Q a 1)`
[](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 |
579-10441 1 year ago |
609-57423 609 days ago |
6-38745 6 days |
| 14308 |
grhkm21 author:grhkm21 |
feat(Algebra/Category): Direct construction of colimits in algebraic categories |
(Below I only write about colimits since that's what I'm familiar with after working on it the last few days, but maybe it's the same for other categorical constructions)
**Main feature:** Construct colimits in `AddCommGrp`/`ModuleCat`/`FGModuleCat`(/...) directly as coequalizer (i.e. cokernel i.e. quotient) of two maps, allowing one to say $\coprod_j M_j \cong *$
Currently, if you look at how colimits are constructed for [AddCommGrp](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Algebra/Category/Grp/Colimits.lean#L69-L92), you see this massive block of code of all relations generating the quotient relation, but that's kind of bad, you can't say anything concretely about it.
Also as noted in the TODOs of a few files:
```
TODO:
In fact, in `ModuleCat R` there is a much nicer model of colimits as quotients
of finitely supported functions, and we really should implement this as well.
```
I wrote it down [here](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Braided.20left.20rigid.20categories.20are.20right.20rigid/near/447490672), and **have formalised it** in a small file already [here](https://gist.github.com/grhkm21/5b2d938753c0ce0900d21c93a39e3b7d#file-addcommgrpcolimits-lean-L162-L163) (I also have a `ModuleCat` version, and proving existence of colimits in `FGModuleCat` from it).
Usually I will try to merge the file into Mathlib directly (preferably in one sitting), but I have been trying for a while now and been struggling. One issue is I am struggling to understand universes, which I asked [here](https://leanprover.zulipchat.com/#narrow/stream/113489-new-members/topic/Universe.20constraints!/near/448049266) along with many other places. A more concrete issue is that
- [ ] FGModuleCat (and `FullSubcategory` in general) requires morphism and objects to be on the same universe, whereas generally `Category.{v, u}` don't.
So that seems to limit what I can express, and maybe I have to fix it first.
Here are a few more TODOs just so I don't forget, probably done before the one above:
- [ ] Generalise `cokernelIsoQuotient` to other categories.
- [ ] Also prove `coproductIsoDirectSum`
- [ ] Also prove coequalizer (f + h) (g + h) ~ coequalizer f g ~ cokernel (f - g) 0
- [ ] Fix typo `FGModuleCatCat`
If anyone is familiar with universe stuff and can answer my many questions that'll be great too. I need help understanding just [these five lines](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Algebra/Category/Grp/Colimits.lean#L267-L271) |
merge-conflict
WIP
t-algebra
label:t-algebra$ |
10/3 |
Mathlib/Algebra/DirectSum/Module.lean,Mathlib/LinearAlgebra/FreeModule/Basic.lean |
2 |
1 |
['github-actions'] |
nobody |
579-8310 1 year ago |
624-42987 624 days ago |
0-23 23 seconds |
| 13010 |
ADedecker author:ADedecker |
feat: relax universe constraint in stoneCechExtend |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-topology
|
33/3 |
Mathlib/Topology/StoneCech.lean |
1 |
2 |
['ADedecker', 'erdOne'] |
nobody |
579-8107 1 year ago |
unknown |
0-0 0 seconds |
| 12411 |
adomani author:adomani |
feat: more linting of cdots |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-linter
|
953/617 |
Archive/Wiedijk100Theorems/CubingACube.lean,Mathlib.lean,Mathlib/Algebra/Category/GroupCat/Colimits.lean,Mathlib/Algebra/Homology/Exact.lean,Mathlib/Algebra/Homology/LocalCohomology.lean,Mathlib/Algebra/Lie/Nilpotent.lean,Mathlib/Algebra/Module/PID.lean,Mathlib/Algebra/Module/Submodule/Bilinear.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/Order/Archimedean.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Calculus/Deriv/Slope.lean,Mathlib/Analysis/Calculus/InverseFunctionTheorem/ApproximatesLinearOn.lean,Mathlib/Analysis/Calculus/LocalExtr/Basic.lean,Mathlib/Analysis/Calculus/TangentCone.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection.lean,Mathlib/Analysis/MeanInequalitiesPow.lean,Mathlib/Analysis/Normed/Group/ControlledClosure.lean,Mathlib/Analysis/Normed/Group/Pointwise.lean,Mathlib/Analysis/NormedSpace/FiniteDimension.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Separation.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean,Mathlib/Analysis/NormedSpace/Star/Basic.lean,Mathlib/Analysis/NormedSpace/Star/Multiplier.lean,Mathlib/Analysis/NormedSpace/lpSpace.lean,Mathlib/Analysis/PSeries.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/Log/Base.lean,Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Analysis/SpecificLimits/Normed.lean,Mathlib/CategoryTheory/Abelian/Basic.lean,Mathlib/CategoryTheory/Action.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation.lean,Mathlib/CategoryTheory/Category/Cat/Limit.lean,Mathlib/CategoryTheory/Category/PartialFun.lean,Mathlib/CategoryTheory/Category/TwoP.lean,Mathlib/CategoryTheory/Closed/Cartesian.lean,Mathlib/CategoryTheory/Functor/Flat.lean,Mathlib/CategoryTheory/Galois/GaloisObjects.lean,Mathlib/CategoryTheory/Limits/Over.lean,Mathlib/CategoryTheory/Limits/VanKampen.lean,Mathlib/CategoryTheory/Localization/Predicate.lean,Mathlib/CategoryTheory/Monad/Coequalizer.lean,Mathlib/CategoryTheory/Monad/Monadicity.lean,Mathlib/CategoryTheory/Pi/Basic.lean,Mathlib/CategoryTheory/Sites/DenseSubsite.lean,Mathlib/CategoryTheory/Sites/InducedTopology.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/Combinatorics/Additive/PluenneckeRuzsa.lean,Mathlib/Combinatorics/HalesJewett.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Chunk.lean,Mathlib/Computability/Reduce.lean,Mathlib/Data/Holor.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/Data/Nat/Pairing.lean,Mathlib/Data/Real/Cardinality.lean,Mathlib/Data/Real/Hyperreal.lean,Mathlib/Data/Real/Irrational.lean,Mathlib/Data/Set/Card.lean,Mathlib/Dynamics/Circle/RotationNumber/TranslationNumber.lean,Mathlib/FieldTheory/Finite/Polynomial.lean,Mathlib/FieldTheory/Minpoly/IsIntegrallyClosed.lean,Mathlib/FieldTheory/PerfectClosure.lean,Mathlib/FieldTheory/RatFunc.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/Geometry/RingedSpace/PresheafedSpace/Gluing.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/GroupTheory/Perm/Cycle/Factors.lean,Mathlib/GroupTheory/Perm/Finite.lean,Mathlib/GroupTheory/SpecificGroups/Quaternion.lean,Mathlib/GroupTheory/Sylow.lean,Mathlib/LinearAlgebra/Dimension/RankNullity.lean,Mathlib/LinearAlgebra/Dual.lean,Mathlib/LinearAlgebra/LinearIndependent.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean,Mathlib/LinearAlgebra/Prod.lean,Mathlib/LinearAlgebra/QuadraticForm/Complex.lean,Mathlib/LinearAlgebra/Reflection.lean,Mathlib/MeasureTheory/Constructions/Pi.lean,Mathlib/MeasureTheory/Covering/VitaliFamily.lean,Mathlib/MeasureTheory/Measure/Haar/Basic.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/Typeclasses.lean,Mathlib/MeasureTheory/OuterMeasure/Basic.lean,Mathlib/ModelTheory/Skolem.lean,Mathlib/NumberTheory/Dioph.lean,Mathlib/NumberTheory/LegendreSymbol/Basic.lean,Mathlib/NumberTheory/Padics/Hensel.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/Padics/RingHoms.lean,Mathlib/NumberTheory/RamificationInertia.lean,Mathlib/RingTheory/AdjoinRoot.lean |
147 |
2 |
['adomani', 'leanprover-bot'] |
nobody |
579-7970 1 year ago |
unknown |
0-0 0 seconds |
| 12279 |
casavaca author:casavaca |
WIP: feat: Holder's inequality n-ary |
---
- [x] depends on #12291
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-analysis
|
129/0 |
Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean |
2 |
13 |
['github-actions'] |
nobody |
579-7955 1 year ago |
695-69060 695 days ago |
0-50185 13 hours |
| 12093 |
ADedecker author:ADedecker |
feat: tweak the definition of semicontinuity to behave better in nonlinear orders |
Summary of the changes:
- change definitions to make [lowerSemicontinuous_iff_isClosed_preimage](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Semicontinuous.html#lowerSemicontinuous_iff_isClosed_preimage) true without assuming `LinearOrder`, so that semicontinuity corresponds to continuity for lower/upper order topology on the codomain. See discussion on [Zulip](https://leanprover.zulipchat.com/#narrow/stream/116395-maths/topic/Semicontinuity.20definition.20for.20non-linear.20orders/near/432898278)
- add new `iff` lemmas for unfolding the definition
- add `iff` lemmas with the old definition in the linearly ordered case
- some basic lemmas need to be changed in an easy way
- minimize assumptions for continuity => semicontinuity
- prove the semicontinuity criterion for indicators using "preimage of Ici/Iic" instead of a direct proof, because the proof is more natural (especially because we have no `filter_upwards` for `Frequently`)
- in the rest of the file (which is about linear orders anyway), we don't touch the statements and just rewrite to the old definition. Some of these could be generalized, but we keep that for a later PR.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-topology
|
274/130 |
Mathlib/Analysis/BoundedVariation.lean,Mathlib/MeasureTheory/Integral/FundThmCalculus.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Topology/Semicontinuous.lean |
4 |
0 |
[] |
nobody |
579-7917 1 year ago |
unknown |
0-0 0 seconds |
| 11520 |
thorimur author:thorimur |
feat: `linting_rules` and deprecated syntax |
---
Experimental. WIP. Might not be performance-viable.
- [ ] depends on: #11519
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-meta
|
1016/0 |
Mathlib.lean,Mathlib/Command/Linter.lean,Mathlib/Command/Linter/Deprecated.lean,Mathlib/Command/Linter/LintingRules.lean,Mathlib/Command/SyntaxRules.lean,Mathlib/Command/SyntaxRules/Attr.lean,Mathlib/Command/SyntaxRules/Elab.lean,Mathlib/Command/SyntaxRules/Header.lean,Mathlib/Command/SyntaxRules/Util.lean,Mathlib/Tactic/Common.lean,scripts/noshake.json |
11 |
11 |
['leanprover-bot', 'leanprover-community-mathlib4-bot', 'thorimur'] |
nobody |
579-7907 1 year ago |
unknown |
0-0 0 seconds |
| 11519 |
thorimur author:thorimur |
feat: `syntax_rules` |
---
Experimental. WIP.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-meta
|
485/0 |
Mathlib.lean,Mathlib/Command/SyntaxRules.lean,Mathlib/Command/SyntaxRules/Attr.lean,Mathlib/Command/SyntaxRules/Elab.lean,Mathlib/Command/SyntaxRules/Header.lean,Mathlib/Command/SyntaxRules/Util.lean,scripts/noshake.json |
7 |
0 |
[] |
nobody |
579-7893 1 year ago |
unknown |
0-0 0 seconds |
| 11393 |
mcdoll author:mcdoll |
feat(Analysis/Distribution/SchwartzSpace): The Heine-Borel property |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-analysis
|
688/3 |
Mathlib.lean,Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/UniformSpace/Ascoli.lean,Mathlib/Topology/UniformSpace/Pi.lean,Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean |
6 |
0 |
[] |
nobody |
579-7883 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 |
579-7802 1 year ago |
801-7229 801 days ago |
1-62292 1 day |
| 8931 |
hmonroe author:hmonroe |
feat(Computable): define P, NP, and NP-complete |
Revised to focus on languages that are binary strings, given the issue of non-acceptable encodings of unspecified Types
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-computability
awaiting-author
|
381/5 |
Mathlib.lean,Mathlib/Computability/Complexity copy.lean,Mathlib/Computability/Complexity.lean,Mathlib/Computability/Encoding.lean,Mathlib/Computability/TMComputable.lean,Mathlib/Computability/TuringMachine.lean,Mathlib/Computability/halting example.lean,docs/references.bib |
8 |
3 |
['fpvandoorn', 'github-actions', 'hmonroe'] |
nobody |
579-7767 1 year ago |
735-17149 735 days ago |
93-64275 93 days |
| 10641 |
newell author:newell |
feat(Topology/MetricSpace/WellSpaced): Define sets that are *well-spaced*. |
Create a new file `Mathlib.Topology.MetricSpace.WellSpaced` that contains definitions of sets which are in some sense *well-spaced*.
Some examples are Delone and Meyer sets, which find applications in Quasicrystals and Coding Theory, among others.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-topology
|
1073/14 |
Mathlib.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Topology/EMetricSpace/Basic.lean,Mathlib/Topology/GMetric/Basic.lean,Mathlib/Topology/GMetric/GInfSep.lean,Mathlib/Topology/GMetric/WellSpaced.lean,Mathlib/Topology/GPseudoMetric/Basic.lean,Mathlib/Topology/MetricSpace/WellSpaced.lean |
8 |
1 |
['edegeltje'] |
nobody |
579-7735 1 year ago |
unknown |
0-0 0 seconds |
| 10387 |
adomani author:adomani |
feat(Tactic/ComputeDegree): add `polynomial` tactic |
Introducing the `polynomial` tactic, summing up `compute_degree, monicity` and adding support for `leadingCoeff`.
This is more of a proof of concept: if there is interest in this tactic, I can polish it up.
See [this Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/113489-new-members/topic/Compute.20roots.20of.20polynomials/near/420713624).
---
[](https://gitpod.io/from-referrer/)
|
WIP
RFC
t-meta
|
24/0 |
Mathlib/Tactic/ComputeDegree.lean |
1 |
0 |
[] |
nobody |
579-7589 1 year ago |
622-77019 622 days ago |
143-73801 143 days |
| 9154 |
astrainfinita author:astrainfinita |
feat: `npow` / `nsmul` / `Nat.cast`/ `zpow` / `zsmul` implemented using `Nat.binaryRec` |
---
- [ ] depends on: https://github.com/leanprover/lean4/pull/3756
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
blocked-by-other-PR
label:t-algebra$ |
168/359 |
Mathlib/Algebra/Group/Defs.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/Primrec.lean,Mathlib/Data/Bool/Basic.lean,Mathlib/Data/Int/Bitwise.lean,Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Digits.lean,Mathlib/Data/Nat/EvenOddRec.lean,Mathlib/Data/Nat/Fib/Basic.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/Data/Nat/Order/Basic.lean,Mathlib/Data/Nat/Parity.lean,Mathlib/Data/Nat/Size.lean,Mathlib/Data/Num/Lemmas.lean,Mathlib/Init/Data/Nat/Bitwise.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/Internal.lean,Mathlib/Logic/Basic.lean,Mathlib/Logic/Denumerable.lean,Mathlib/Logic/Encodable/Basic.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/Logic/Equiv/Nat.lean,lake-manifest.json,lakefile.lean,test/zmod.lean |
25 |
7 |
['astrainfinita', 'eric-wieser', 'kim-em', 'leanprover-community-mathlib4-bot'] |
nobody |
579-7380 1 year ago |
unknown |
0-0 0 seconds |
| 6603 |
tydeu author:tydeu |
feat: automatically try `cache get` before build |
---
A quick proof-of-concept. With this, `lake build` will always try `cache get` before building mathlib.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
CI
|
29/0 |
lakefile.lean |
1 |
3 |
['kim-em', 'tydeu'] |
nobody |
579-7354 1 year ago |
933-23877 933 days ago |
11-2031 11 days |
| 6058 |
apurvnakade author:apurvnakade |
feat: duality theory for cone programs |
This PR tracks the development of duality theory for cone programs.
[Reference](https://ti.inf.ethz.ch/ew/courses/ApproxSDP09/notes/conelp.pdf)
---
[](https://gitpod.io/from-referrer/)
- [x] depends on: #6059
- [ ] define direct sum of cones
- [ ] weak duality
- [ ] regular duality
- [ ] slater condition
- [ ] strong duality |
merge-conflict
WIP
t-analysis
|
159/0 |
Mathlib.lean,Mathlib/Analysis/Convex/Cone/ConeLinearProgram.lean |
2 |
1 |
['leanprover-community-mathlib4-bot'] |
nobody |
579-7299 1 year ago |
968-44207 968 days ago |
0-9 9 seconds |
| 6449 |
ADedecker author:ADedecker |
feat: functions with finite fibers |
---
This has been discussed before on [Zulip](https://leanprover.zulipchat.com/#narrow/stream/217875-Is-there-code-for-X.3F/topic/.E2.9C.94.20Cofinite.20maps.3F) and it came up again while working with @kkytola's student. As explained in the docstring, we could absolutely just use `Tendsto f cofinite cofinite` all the time, but (1) we lack some API for it (2) the API is nicer to setup if we have a separate def (e.g for dot notation) and (3) mentioning filters for such a simple concept is really not beginner-friendly.
I'm not sure at all about the name.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-topology
|
203/0 |
Mathlib.lean,Mathlib/Logic/Function/HasFiniteFibers.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Cofinite.lean |
4 |
14 |
['ADedecker', 'YaelDillies', 'alexjbest', 'kkytola'] |
nobody |
579-7293 1 year ago |
945-5347 945 days ago |
6-70040 6 days |
| 8100 |
digama0 author:digama0 |
feat: add support for other types in norm_num |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-meta
|
177/12 |
Mathlib/Tactic/NormNum/Basic.lean,Mathlib/Tactic/NormNum/Eq.lean,Mathlib/Tactic/NormNum/Ineq.lean,Mathlib/Tactic/NormNum/Pow.lean,Mathlib/Tactic/NormNum/Result.lean,Mathlib/Tactic/NormNum/Structural.lean,test/norm_num.lean |
7 |
4 |
['dwrensha'] |
nobody |
579-7161 1 year ago |
unknown |
0-0 0 seconds |
| 13163 |
erdOne author:erdOne |
feat(.vscode/module-docstring.code-snippet): Prevent auto-complete from firing on `do` |
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-meta
|
5/0 |
.vscode/module-docstring.code-snippets |
1 |
5 |
['erdOne', 'grunweg', 'robertylewis', 'trivial1711'] |
nobody |
579-5903 1 year ago |
611-20095 611 days ago |
50-78405 50 days |
| 15585 |
astrainfinita author:astrainfinita |
test make `HasQuotient.quotient'` reducible |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
8/1 |
Mathlib/Algebra/Quotient.lean,Mathlib/GroupTheory/Coset.lean |
2 |
1 |
['github-actions'] |
nobody |
577-39569 1 year ago |
unknown |
0-0 0 seconds |
| 15586 |
astrainfinita author:astrainfinita |
test make `HasQuotient` out put a `setoid` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
22/36 |
Mathlib/Algebra/Lie/CartanExists.lean,Mathlib/Algebra/Lie/Quotient.lean,Mathlib/Algebra/Lie/Weights/Basic.lean,Mathlib/Algebra/Quotient.lean,Mathlib/Analysis/Normed/Group/AddCircle.lean,Mathlib/GroupTheory/Commensurable.lean,Mathlib/GroupTheory/Coset.lean,Mathlib/GroupTheory/CosetCover.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/GroupTheory/QuotientGroup.lean,Mathlib/LinearAlgebra/Quotient.lean,Mathlib/RingTheory/Ideal/Quotient.lean,Mathlib/Topology/Algebra/UniformRing.lean |
14 |
5 |
['astrainfinita', 'github-actions', 'leanprover-bot'] |
nobody |
577-39569 1 year ago |
unknown |
0-0 0 seconds |
| 13791 |
digama0 author:digama0 |
refactor: Primrec and Partrec |
General cleanup of the `Primrec` and `Partrec` files, to better adjust to lean 4 things. The main user-visible change is that `Primrec₂` is no longer a `def` but an `abbrev`, because it was causing inference issues in lean 4. I also removed all the nonterminal `simp`s in `PartrecCode.lean`.
---
[](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-60838 1 year ago |
639-50424 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-60697 1 year ago |
703-77638 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-60596 1 year ago |
661-70580 661 days ago |
29-50022 29 days |
| 9978 |
astrainfinita author:astrainfinita |
chore(FieldTheory/KummerExtension): move some lemmas earlier |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
197/177 |
Mathlib.lean,Mathlib/Data/Polynomial/FieldDivision.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Polynomial/Irreducible.lean |
5 |
5 |
['alreadydone', 'grunweg', 'riccardobrasca'] |
nobody |
575-60388 1 year ago |
773-54570 773 days ago |
8-83342 8 days |
| 12429 |
adomani author:adomani |
feat: toND -- auto-generating natDegree |
This is an experiment to automatically translate theorems about `degree` to theorems about `natDegree`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
RFC
merge-conflict
awaiting-author
t-meta
label:t-algebra$ |
167/132 |
Mathlib.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/Algebra/Polynomial/Degree/Lemmas.lean,Mathlib/Algebra/Polynomial/EraseLead.lean,Mathlib/Algebra/Polynomial/HasseDeriv.lean,Mathlib/Algebra/Polynomial/Inductions.lean,Mathlib/Algebra/Polynomial/Mirror.lean,Mathlib/Algebra/Polynomial/Reverse.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ToNatDegree.lean,scripts/noshake.json |
11 |
2 |
['adomani', 'grunweg'] |
nobody |
575-59699 1 year ago |
687-7372 687 days ago |
3-76602 3 days |
| 15823 |
eric-wieser author:eric-wieser |
Quotients of rings in model theory |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-logic
|
55/13 |
Mathlib/ModelTheory/Algebra/Ring/FreeCommRing.lean,Mathlib/ModelTheory/Syntax.lean |
2 |
1 |
['github-actions'] |
nobody |
575-38262 1 year ago |
unknown |
0-0 0 seconds |
| 12178 |
joneugster author:joneugster |
feat(Data/Matrix/Basic): add notation for `m×n`-Matrices |
Introduce the notation `Mat[m,n][R]` for `Matrix (Fin m) (Fin n) R`.
[Zulip thread](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Why.20does.20.60Matrix.2Erow.60.20use.20.20.60Unit.60.20instead.20of.20.60Fin.201.60.3F/near/427949223)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
139/135 |
Mathlib/Algebra/Lie/CartanMatrix.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Data/Matrix/Basic.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/Data/Matrix/Rank.lean,Mathlib/Data/Matrix/Reflection.lean,Mathlib/GroupTheory/Coxeter/Matrix.lean,Mathlib/LinearAlgebra/Matrix/Adjugate.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean,Mathlib/LinearAlgebra/Matrix/Determinant.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/Matrix/Trace.lean,Mathlib/LinearAlgebra/Matrix/Transvection.lean,Mathlib/LinearAlgebra/PID.lean,Mathlib/LinearAlgebra/Vandermonde.lean,Mathlib/NumberTheory/Modular.lean,Mathlib/NumberTheory/ModularForms/CongruenceSubgroups.lean,Mathlib/NumberTheory/ModularForms/SlashActions.lean,Mathlib/NumberTheory/ModularForms/SlashInvariantForms.lean,Mathlib/NumberTheory/RamificationInertia.lean,Mathlib/RingTheory/SimpleModule.lean,test/matrix.lean |
22 |
9 |
['YaelDillies', 'eric-wieser', 'grunweg', 'joneugster'] |
nobody |
575-15386 1 year ago |
694-5779 694 days ago |
5-76679 5 days |
| 12751 |
Command-Master author:Command-Master |
feat: add lemmas for Nat/Bits, Nat/Bitwise and Nat/Size |
Remove `@[simp]` from `Nat.bit_false` and `Nat.bit_true`, as `bit0` and `bit1` are deprecated, and add some lemmas to `Bits`, `Bitwise` and `Size`.
---
[](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-81750 1 year ago |
610-1572 610 days ago |
56-40668 56 days |
| 15448 |
urkud author:urkud |
chore(*): deprecate `Option.elim'` |
Use `Option.elim` instead.
---
[](https://gitpod.io/from-referrer/) |
merge-conflict
awaiting-author
tech debt
|
54/50 |
Mathlib/Algebra/BigOperators/Option.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/Calculus/LagrangeMultipliers.lean,Mathlib/CategoryTheory/Category/PartialFun.lean,Mathlib/Computability/TMToPartrec.lean,Mathlib/Data/Option/Defs.lean,Mathlib/LinearAlgebra/Basis.lean,Mathlib/Logic/Embedding/Set.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/NumberTheory/Dioph.lean,Mathlib/Topology/Compactness/Paracompact.lean,Mathlib/Topology/LocallyFinite.lean |
17 |
12 |
['Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'grunweg', 'urkud'] |
nobody |
574-70803 1 year ago |
584-30565 584 days ago |
7-18420 7 days |
| 10350 |
Shamrock-Frost author:Shamrock-Frost |
feat(Data/Setoid): add the operations of taking the equivalence class of an element and of saturating a set wrt an equivalence relation |
I'm open to suggestions about changing the name "saturate", someone on zulip rightly pointed out this is a very overloaded term in math. That said, I think it's unlikely to cause confusion and that there's only one reasonable interpretation in the context of setoids.
---
- [x] depends on: #10347
- [x] depends on: #10348
[](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-84024 1 year ago |
691-75652 691 days ago |
19-74546 19 days |
| 13573 |
Shamrock-Frost author:Shamrock-Frost |
feat: add multivariate polynomial modules |
Add a type synonym for multivariate polynomials with coefficients in a module.
---
Multivariate polynomials with module coefficients are sort of silly, but they sometimes show up in commutative algebra (eg in the definition of a quasi regular sequence). Writing this code involved a lot of copy and pasting from `PolynomialModule` and `MvPolynomial`. The API is definitely lacking at this stage but it's a start.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
691/6 |
Mathlib.lean,Mathlib/Algebra/MvPolynomial/Module/Basic.lean,Mathlib/Algebra/MvPolynomial/Module/MvAEval.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean |
4 |
9 |
['Shamrock-Frost', 'erdOne', 'github-actions'] |
nobody |
572-84004 1 year ago |
608-76372 608 days ago |
39-72752 39 days |
| 6517 |
MohanadAhmed author:MohanadAhmed |
feat: discrete Fourier transform of a finite sequence |
# Discrete Fourier Transform (DFT) Matrix and DFT of a (finite) sequence
This file defines the `dft` opertaion on a sequence (also a vecotr) and the DFT operation matrix
## Main definitions
- `dft v`: given a sequence (v : (Fin n) → ℂ) we can transform it into a sequence (V : (Fin n) →ℂ)
such that
$$V [p] = ∑_{k = 0}^{N - 1} e^{-j*2πkp/n} v [k]$$
- `idft V` : given a sequence (V : (Fin n) → ℂ) we can transform it into a sequence
(v : (Fin n) → ℂ)
such that
$$v [k] = \frac{1}{N}∑_{p = 0}^{n - 1} e^{j*2πkp/N} v [p]$$
- `dftMatrix n` : the dft matrix of dimensions $n \times n$ with the `k, p` entry equal to
$$Wₙ[k, p] = e^{-j2πkp/n}$$
- `(dftMatrix n)⁻¹` : the idft matrix of dimensions $n \times n$ with the `k, p` entry equal to
$$Wₙ[k, p] = (1/N) e^{j2πkp/n}$$
## Main results
- `dft v = (dftMatrix n) v` : the dft operation on a sequence is the same as the dft matrix applied to the vector
- `idft V = (dftMatrix n)⁻¹ V` : the idft operation on a sequence is the same as the idft matrix applied to the vector
- `dft (idft v) = dft ( idft v) = v` the dft and idft operations are inverses
- `Wₙ = vandermonde (w)` : the dft matrix is vandermonde with `w` being the first row of the dft matrix
- `circulant t = (dftMatrix n)⁻¹ ⬝ diagonal (dft t) ⬝ (dftMatrix n)` : a circulant matrix is diagonalizable by the dft and idft matrix pair.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
294/0 |
Mathlib.lean,Mathlib/LinearAlgebra/Matrix/DFT.lean |
2 |
26 |
['MohanadAhmed', 'ericrbg'] |
nobody |
572-83842 1 year ago |
882-21658 882 days ago |
65-20427 65 days |
| 13155 |
alreadydone author:alreadydone |
feat(NumberTheory/EllipticDivisibilitySequence): show elliptic relations follow from even-odd recursion |
This PR is centered around the (generalized) elliptic relations (`rel₄`)
$E(a,b,c,d): W_{a+b}W_{a-b}W_{c+d}W_{c-d}=W_{a+c}W_{a-c}W_{b+d}W_{b-d}-W_{a+d}W_{a-d}W_{b+c}W_{b-c}$.
For an integer-indexed sequence W valued in a commutative ring, the relation makes sense only when a,b,c,d are all integers or all half integers. For convenience of formalization, we instead consider integers a,b,c,d of the same parity and divide all subscripts by 2. We extract the subexpression $W_{(a+b)/2}W_{(a-b)/2}$ (which appear six times) as `addMulSub W a b`.
The collection of all $E(a,b,c,d)$ is equivalent to Stange's axiom for elliptic nets (`net`), and the literature (e.g. Silverman) commonly consider only the three-index special case $E(m,n,r,0)$ (`Rel₃`). Important special cases of these relations are
(i) $E(m+1,m,1,0): W_{2m+1}W_1^3=W_{m+2}W_m^3-W_{m+1}^3 W_{m-1}$ (`oddRec`) and
(ii) $E(m+1,m-1,1,0): W_{2m}W_2 W_1^2=W_m(W_{m+2}W_{m-1}^2-W_{m-2}W_{m+1}^2)$ (`evenRec`),
which suffice to uniquely specify $W$ on all positive integers recursively from four initial values $W_1, W_2, W_3, W_4$ (`IsEllSequence.ext`, if $W_1 W_2$ is not a zero divisor). In the usual setting where $W_1=1$ and $W_2\mid W_4$, there does exist a sequence (`normEDS`) satisfying (i) and (ii) given initial values $W_2, W_3$ and $W_4/W_2$. It turns out the same non-zerodivisor condition also guarantees that W is an odd function with $W_0=0$, which naturally extends W to all integers.
The main result of this PR (`rel₄_of_oddRec_evenRec`, `IsEllSequence.of_oddRec_evenRec`) is a purely algebraic proof that the sequence W defined by the single-parameter elliptic relations (i) and (ii) implies all $E(a,b,c,d)$, based on my original argument first published on [Math.SE](https://math.stackexchange.com/a/4903422/12932). It's based on the observation that a nonzerodivisor-multiple of $E(a,b,c,d)$ can be expressed as a linear combination of various $E(a,b,c_\min,d_\min)$ with the two smallest indices fixed at their minimal possible values, which can be transformed (`transf`) to an elliptic relation with smaller `a` (which can be assumed to hold by induction), unless they are of the form (i) or (ii) which hold by assumption. For this argument it's necessary to assume `a > b > c > d ≥ 0` (see `StrictAnti₄` and `Rel₄OfValid`), but it's easy to extend to arbitrary a,b,c,d by symmetry properties of `rel₄` under negation and permutations of indices.
In the subsequent PR #13057, we show all normalized EDSs (`normEDS`), defined using the even-odd recursion (i)-(ii), are elliptic (i.e. satisfy the elliptic relations) divisibility sequences. This PR doesn't directly apply because a normEDS doesn't always satisfy the nonzerodivisor condition, but they are specializations of the universal normEDS, which does satisfy the condition. The technique of reducing to the universal case will be applied many times, and relies on the naturality (`map`) lemmas.
We also change the `ℕ` in the definition `IsDivSequence` to `ℤ` which is more natural given that W is a `ℤ`-indexed sequence.
---
- [x] depends on: #13153
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
awaiting-author
t-number-theory
label:t-algebra$ |
565/12 |
Mathlib/NumberTheory/EllipticDivisibilitySequence.lean |
1 |
55 |
['Multramate', 'alreadydone', 'github-actions', 'grunweg', 'leanprover-community-mathlib4-bot'] |
nobody |
567-11046 1 year ago |
616-12933 616 days ago |
26-39367 26 days |
| 15600 |
adomani author:adomani |
feat: lint also `let` vs `have` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-linter
|
77/26 |
Mathlib/Tactic/Linter/HaveLetLinter.lean,test/HaveLetLinter.lean |
2 |
1 |
['github-actions'] |
nobody |
565-65722 1 year ago |
586-59420 586 days ago |
0-8 8 seconds |
| 16253 |
Shreyas4991 author:Shreyas4991 |
feat: Basics of Discrete Fair Division in Mathlib |
This PR adds the basics of discrete fair division in mathlib. We include the definitions of allocations, valuations, properties of valuations, and the following notions : Envy-Freeness (EF), Envy-Freeness upto 1 good (EF1), and envy freeness upto any good (EFX). We also include the various implications between these notions.
---
[](https://gitpod.io/from-referrer/)
|
WIP
awaiting-author
|
144/0 |
Mathlib/GameTheory/FairDivision/Discrete/Basic.lean |
1 |
9 |
['Shreyas4991', 'eric-wieser', 'github-actions'] |
nobody |
564-63635 1 year ago |
564-67896 564 days ago |
0-20853 5 hours |
| 13970 |
adomani author:adomani |
feat: a linter to flag unnecessary uses of `nolint simpNF` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-linter
awaiting-author
|
230/0 |
Mathlib.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/Quaternion.lean,Mathlib/CategoryTheory/Comma/Arrow.lean,Mathlib/CategoryTheory/Monoidal/End.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/Data/Rat/Defs.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Even.lean,Mathlib/LinearAlgebra/CliffordAlgebra/EvenEquiv.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/UnnecessarySyntax.lean,test/UnnecessarySyntax.lean |
13 |
4 |
['adomani', 'github-actions', 'grunweg', 'leanprover-bot'] |
nobody |
564-2536 1 year ago |
unknown |
0-0 0 seconds |
| 15162 |
adomani author:adomani |
feat: checkAsSorry linter |
A very preliminary version of the `checkAsSorry` linter.
It flags declarations whose type is not equal to the 'asSorry'ed one.
[Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Running.20Mathlib.20under.20.60set_option.20debug.2EbyAsSorry.60)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-linter
|
119/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/CheckAsSorry.lean,test/CheckAsSorry.lean |
4 |
1 |
['github-actions'] |
nobody |
564-1524 1 year ago |
unknown |
0-0 0 seconds |
| 14669 |
Command-Master author:Command-Master |
feat(Data/Nat/PartENat): add lemmas for PartENat |
Add some missing lemmas for `PartENat`, as well as the additive homomorphism from it to `WithTop Int`.
---
[](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 |
562-7240 1 year ago |
613-14762 613 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-56585 1 year ago |
593-15844 593 days ago |
7-3203 7 days |
| 15895 |
madvorak author:madvorak |
feat(Computability/ContextFreeGrammar): mapping between two types of nonterminal symbols |
---
[](https://gitpod.io/from-referrer/)
|
t-computability
WIP
|
172/0 |
Mathlib/Computability/ContextFreeGrammar.lean |
1 |
43 |
['YaelDillies', 'github-actions', 'madvorak'] |
nobody |
560-73378 1 year ago |
565-20487 565 days ago |
1-43047 1 day |
| 14038 |
adomani author:adomani |
test/decl diff in lean dev |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
231/2 |
.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,.github/workflows/mk_build_yml.sh,Mathlib/Tactic/Eval.lean,scripts/decls_diff_hybrid.sh,scripts/list_decls.lean |
8 |
3 |
['github-actions'] |
nobody |
559-81438 1 year ago |
632-51557 632 days ago |
0-8 8 seconds |
| 14046 |
adomani author:adomani |
test: diff of declarations in lean |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
231/2 |
.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,.github/workflows/mk_build_yml.sh,Mathlib/Tactic/Eval.lean,scripts/decls_diff_hybrid.sh,scripts/list_decls.lean |
8 |
2 |
['github-actions'] |
nobody |
559-81438 1 year ago |
unknown |
0-0 0 seconds |
| 12107 |
yuma-mizuno author:yuma-mizuno |
feat(Mathlib/Tactic/Widget/StringDiagram): support 2-morphisms in bicategories |
---
- [x] depends on: #11080
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-category-theory
t-meta
|
1158/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Coherence.lean,Mathlib/Tactic/Widget/StringDiagram.lean,scripts/noshake.json,test/StringDiagram.lean,widget/src/penrose/monoidal.dsl,widget/src/penrose/monoidal.sty |
8 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
554-76182 1 year ago |
unknown |
0-0 0 seconds |
| 15925 |
yuma-mizuno author:yuma-mizuno |
feat(CategoryTheory/Monoida): proof producing coherence tactic |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-category-theory
t-meta
|
5018/265 |
Mathlib.lean,Mathlib/CategoryTheory/Bicategory/Adjunction.lean,Mathlib/CategoryTheory/Bicategory/Kan/Adjunction.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/CoherenceLemmas.lean,Mathlib/CategoryTheory/Monoidal/Opposite.lean,Mathlib/CategoryTheory/Monoidal/Rigid/Basic.lean,Mathlib/CategoryTheory/Monoidal/Rigid/Braided.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/BicategoricalComp.lean,Mathlib/Tactic/CategoryTheory/Bicategory/Normalize.lean,Mathlib/Tactic/CategoryTheory/Bicategory/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/Coherence.lean,Mathlib/Tactic/CategoryTheory/Coherence/Basic.lean,Mathlib/Tactic/CategoryTheory/Coherence/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Coherence/Normalize.lean,Mathlib/Tactic/CategoryTheory/Coherence/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/CoherenceNew.lean,Mathlib/Tactic/CategoryTheory/Monoidal.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Basic.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Normalize.lean,Mathlib/Tactic/CategoryTheory/Monoidal/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/MonoidalComp.lean,Mathlib/Tactic/Widget/StringDiagram.lean,lake-manifest.json,scripts/noshake.json,test/CategoryTheory/Bicategory.lean,test/CategoryTheory/Coherence.lean,test/CategoryTheory/CoherenceNew.lean,test/CategoryTheory/Monoidal.lean,test/CategoryTheory/Monoidal/Basic.lean,test/CategoryTheory/Monoidal/Normalize.lean,test/CategoryTheory/MonoidalComp.lean,test/StringDiagram.lean |
35 |
1 |
['github-actions'] |
nobody |
554-36319 1 year ago |
unknown |
0-0 0 seconds |
| 7861 |
shuxuezhuyi author:shuxuezhuyi |
feat(Geometry/Hyperbolic/UpperHalfPlane): instance IsometricSMul PSL(2, ℝ) ℍ |
---
- [ ] depends on: #7835
- [ ] depends on: #7791
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-euclidean-geometry
|
98/0 |
Mathlib.lean,Mathlib/Geometry/Hyperbolic/UpperHalfPlane/Basic.lean,Mathlib/LinearAlgebra/Matrix/ProjectiveSpecialLinearGroup.lean |
3 |
1 |
['leanprover-community-mathlib4-bot'] |
nobody |
554-17379 1 year ago |
614-57907 614 days ago |
43-50453 43 days |
| 16570 |
yuma-mizuno author:yuma-mizuno |
chore(Tactic/CategoryTheory): change `TermElabM` to `MetaM` |
Separated from #15335.
To use `Qq`, we need to modify `Qq` to support universe matching. See [Zulip](https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.2315335.20meta.20code.20for.20monoidal.20categories).
---
- [ ] depends on: #15335
[](https://gitpod.io/from-referrer/)
|
WIP
t-meta
|
26/15 |
Mathlib/Tactic/CategoryTheory/BicategoryCoherence.lean,Mathlib/Tactic/CategoryTheory/Coherence.lean |
2 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mergify'] |
nobody |
553-80244 1 year ago |
unknown |
0-0 0 seconds |
| 6475 |
joneugster author:joneugster |
refactor(LinearAlgebra/Span): replace ∙ with • as notation for `span R {x}` |
Change the notation for `Submodule.span R {x}` from `R ∙ x` to the bullet `R • x`, which is also used for scalar multiplication.
---
(this was an experiment originating from a [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/.2E.C2.B7.E2.AC.9D.20.5Brant.5D), I don't have a clear opinion if this is actually a desired thing to do...)
Generally this works and Lean seems to do fine figuring out the difference between `r • x` and `R • x` (The former is scalar multiplication in an `R`-module `M`, the latter is the `Submodule R M` generated by `x`).
Encountered a few regressions that should be considered (the first two might be also bugs that could be looked at independently):
1. `(· • ·)`, and general simple function syntax, does not work as notation for `HSMul.hSMul` anymore. For this reason, I introduced the notation `scoped` to minimise the effect of this. Now it's only a problem if you `open Span`. Note that `fun x₁ x₂ ↦ x₁ • x₂` works flawlessly all the time.
4. `change` and `convert` have troubles to deal with the two competing notations. `have := _; convert this` works.
5. `R • x - y` is not valid anymore and needs parentheses: `R • (x - y)`. I do think this actually helps readability, so I don't mind.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
RFC
label:t-algebra$ |
323/240 |
Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Lie/Engel.lean,Mathlib/Algebra/Lie/Normalizer.lean,Mathlib/Algebra/Module/PID.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/InnerProductSpace/GramSchmidtOrtho.lean,Mathlib/Analysis/InnerProductSpace/Orthogonal.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/InnerProductSpace/Projection.lean,Mathlib/Analysis/InnerProductSpace/TwoDim.lean,Mathlib/Analysis/NormedSpace/ContinuousLinearMap.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Extension.lean,Mathlib/Analysis/NormedSpace/OperatorNorm.lean,Mathlib/Data/ZMod/Quotient.lean,Mathlib/Geometry/Euclidean/Angle/Oriented/Basic.lean,Mathlib/Geometry/Euclidean/Inversion/Calculus.lean,Mathlib/Geometry/Euclidean/MongePoint.lean,Mathlib/Geometry/Euclidean/PerpBisector.lean,Mathlib/Geometry/Euclidean/Sphere/SecondInter.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace.lean,Mathlib/LinearAlgebra/AffineSpace/FiniteDimensional.lean,Mathlib/LinearAlgebra/BilinearForm.lean,Mathlib/LinearAlgebra/DFinsupp.lean,Mathlib/LinearAlgebra/Dimension.lean,Mathlib/LinearAlgebra/FiniteDimensional.lean,Mathlib/LinearAlgebra/LinearIndependent.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/ProjectiveSpace/Basic.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/Quotient.lean,Mathlib/LinearAlgebra/SesquilinearForm.lean,Mathlib/LinearAlgebra/Span.lean,Mathlib/MeasureTheory/Integral/Periodic.lean,Mathlib/RingTheory/Coprime/Ideal.lean,Mathlib/RingTheory/Finiteness.lean,Mathlib/RingTheory/Ideal/AssociatedPrime.lean,Mathlib/RingTheory/Ideal/IdempotentFG.lean,Mathlib/RingTheory/Noetherian.lean,Mathlib/Topology/Instances/AddCircle.lean |
42 |
3 |
['eric-wieser', 'joneugster', 'leanprover-bot'] |
nobody |
553-14675 1 year ago |
947-10013 947 days ago |
2-35869 2 days |
| 10591 |
adri326 author:adri326 |
feat(Topology/Algebra/ConstMulAction): properties of continuous actions in Hausdorff spaces |
Defines some useful properties of `ContinuousConstSMul` group actions on Hausdorff spaces:
- `MulAction.isClosed_fixedBy`, which proves that the `fixedBy α m` set is closed
- `t2_separation_smul`, which constructs an open set `s` such that `s` and `g • s` are disjoint
- `Set.InjOn.t2_separation_smul`, the extension of `t2_separation_smul` to a set of group elements whose action is injective
---
This PR belongs my series of PR around the formalization of Rubin's theorem. `MulAction.isClosed_fixedBy` is used in several places along the proof, and the separation lemmas are primarily used in showing that `(fixedBy α g)ᶜ` and `(fixedBy α h)ᶜ` are disjoint under some intricate but fully group-theoretic condition.
[](https://gitpod.io/from-referrer/)
|
t-topology
awaiting-author
t-algebra
label:t-algebra$ |
57/0 |
Mathlib/Topology/Algebra/ConstMulAction.lean |
1 |
9 |
['ADedecker', 'adri326', 'j-loreaux', 'jcommelin'] |
ADedecker assignee:ADedecker |
552-72236 1 year ago |
704-84978 704 days ago |
55-82204 55 days |
| 7545 |
shuxuezhuyi author:shuxuezhuyi |
feat: APIs of `Function.extend f g e'` when `f` is injective |
We characterizes `range g`, `Injective g`, `Surjective g` and `Bijective g` in terms of `extend f g e'`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-logic
|
50/0 |
Mathlib.lean,Mathlib/Logic/Function/ApiForExtend.lean |
2 |
1 |
['fpvandoorn'] |
nobody |
552-30211 1 year ago |
860-64393 860 days ago |
32-32325 32 days |
| 16658 |
adomani author:adomani |
add tips file |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
awaiting-author
test-ci
|
51/508 |
.github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,scripts/Tips.lean |
5 |
1 |
['github-actions'] |
nobody |
548-59144 1 year ago |
unknown |
0-0 0 seconds |
| 14078 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat(CI): continue after mk_all fails |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
CI
|
43/0 |
.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,Mathlib/Data/Nat/Test.lean |
5 |
2 |
['bryangingechen', 'github-actions'] |
nobody |
548-39444 1 year ago |
631-6004 631 days ago |
0-13311 3 hours |
| 11283 |
hmonroe author:hmonroe |
feat(ModelTheory/Satisfiability): define theory with independent sentence |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-logic
|
8/0 |
Mathlib/ModelTheory/Satisfiability.lean |
1 |
2 |
['fpvandoorn', 'hmonroe'] |
nobody |
546-9998 1 year ago |
732-70068 732 days ago |
3-63452 3 days |
| 16914 |
siddhartha-gadgil author:siddhartha-gadgil |
Loogle syntax with non-reserved |
This is PR mainly to test that loogle syntax does not break stuff downstream
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
4/4 |
lake-manifest.json,lakefile.lean |
2 |
1 |
['github-actions'] |
nobody |
543-85007 1 year ago |
544-82096 544 days ago |
0-14835 4 hours |
| 13782 |
alreadydone author:alreadydone |
feat(EllipticCurve): ZSMul formula in terms of division polynomials |
The formula $[n]P = (\phi_n(x,y) : \omega_n(x,y) : \psi_n(x,y))$ in Jacobian coordinates for $P=(x,y)$ a nonsingular point on a Weierstrass/elliptic curve.
---
- [x] depends on: #12883
- [x] depends on: #13399
- [ ] depends on: #13057
- [ ] depends on: #13155
- [x] depends on: #13845
- [x] depends on: #13846
- [ ] depends on: #13847
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-number-theory
blocked-by-other-PR
merge-conflict
t-algebraic-geometry
label:t-algebra$ |
2462/232 |
Mathlib.lean,Mathlib/Algebra/MvPolynomial/PDeriv.lean,Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/ZSMul.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Group.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Universal.lean,Mathlib/NumberTheory/EllipticDivisibilitySequence.lean |
10 |
8 |
['Multramate', 'alreadydone', 'github-actions', 'leanprover-community-mathlib4-bot'] |
nobody |
541-47972 1 year ago |
unknown |
0-0 0 seconds |
| 8118 |
iwilare author:iwilare |
feat(CategoryTheory): add dinatural transformations |
A starting point to define [dinatural transformations](https://ncatlab.org/nlab/show/dinatural+transformation).
This is my first PR so style comments and improvements are very welcome!
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-category-theory
|
147/7 |
Mathlib.lean,Mathlib/CategoryTheory/DinatTrans.lean,Mathlib/CategoryTheory/Functor/Category.lean,Mathlib/CategoryTheory/Products/Bifunctor.lean |
4 |
49 |
['Shamrock-Frost', 'github-actions', 'iwilare', 'joelriou'] |
Shamrock-Frost assignee:Shamrock-Frost |
539-20893 1 year ago |
643-1370 643 days ago |
21-30729 21 days |
| 14242 |
js2357 author:js2357 |
feat: Prove equivalence of `isDedekindDomain` and `isDedekindDomainDvr` |
Prove that `isDedekindDomainDvr` is equivalent to both `isDedekindDomain` and `isDedekindDomainInv`.
Specifically, prove `isDedekindDomainDvr A → isDedekindDomainInv A`, because `isDedekindDomain A → isDedekindDomainDvr A` and `IsDedekindDomain A ↔ IsDedekindDomainInv A` are already in Mathlib.
- [x] depends on: #14099
- [x] depends on: #14216
- [ ] depends on: #14237
---
[](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-67644 1 year ago |
626-56591 626 days ago |
0-273 4 minutes |
| 17171 |
astrainfinita author:astrainfinita |
test extends carrier and property |
---
We need https://github.com/leanprover/lean4/issues/2666 ...
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
433/309 |
Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/Directed.lean,Mathlib/Algebra/DirectSum/Decomposition.lean,Mathlib/Algebra/Field/Subfield.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Subgroup/MulOpposite.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Group/Submonoid/MulOpposite.lean,Mathlib/Algebra/Group/Submonoid/Pointwise.lean,Mathlib/Algebra/Group/Submonoid/Units.lean,Mathlib/Algebra/Group/Subsemigroup/Basic.lean,Mathlib/Algebra/Group/Subsemigroup/Operations.lean,Mathlib/Algebra/Module/Submodule/Basic.lean,Mathlib/Algebra/Module/Submodule/Lattice.lean,Mathlib/Algebra/Module/Submodule/Map.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/MulOpposite.lean,Mathlib/Algebra/Ring/Subsemiring/Order.lean,Mathlib/Algebra/Star/Subalgebra.lean,Mathlib/Algebra/Star/Subsemiring.lean,Mathlib/Data/Complex/Module.lean,Mathlib/Data/SetLike/Basic.lean,Mathlib/Deprecated/Subfield.lean,Mathlib/Deprecated/Subgroup.lean,Mathlib/Deprecated/Submonoid.lean,Mathlib/Deprecated/Subring.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean,Mathlib/GroupTheory/DoubleCoset.lean,Mathlib/GroupTheory/Finiteness.lean,Mathlib/GroupTheory/GroupAction/SubMulAction.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace.lean,Mathlib/LinearAlgebra/Span.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean,Mathlib/SetTheory/Cardinal/Subfield.lean,Mathlib/Topology/Algebra/Algebra.lean,Mathlib/Topology/Algebra/OpenSubgroup.lean |
42 |
1 |
['github-actions'] |
nobody |
534-65986 1 year ago |
unknown |
0-0 0 seconds |
| 7516 |
ADedecker author:ADedecker |
perf: use `abbrev` to prevent unifying useless data |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
4/3 |
Mathlib/Topology/ContinuousFunction/Bounded.lean |
1 |
3 |
['ADedecker', 'leanprover-bot', 'mattrobball'] |
nobody |
533-37646 1 year ago |
894-1863 894 days ago |
0-16 16 seconds |
| 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 |
533-32689 1 year ago |
533-32689 533 days ago |
4-72805 4 days |
| 16887 |
metinersin author:metinersin |
feat(ModelTheory/Complexity): define conjunctive and disjunctive formulas |
Defines `FirstOrder.Language.BoundedFormula.IsConjunctive` and `FirstOrder.Language.BoundedFormula.IsDisjunctive`.
---
- [ ] depends on: #16885
[](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-63622 1 year ago |
546-5296 546 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-63622 1 year ago |
546-5297 546 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-63621 1 year ago |
546-1047 546 days ago |
0-613 10 minutes |
| 5995 |
astrainfinita author:astrainfinita |
feat: add APIs about `Quotient.choice` |
Some docs in this PR refer to the definition in #5576.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
RFC
t-data
|
76/6 |
Mathlib/Data/Quot.lean |
1 |
3 |
['YaelDillies', 'astrainfinita', 'gebner'] |
eric-wieser assignee:eric-wieser |
523-77831 1 year ago |
649-12092 649 days ago |
285-35716 285 days |
| 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 |
521-23772 1 year ago |
unknown |
0-0 0 seconds |
| 13156 |
erdOne author:erdOne |
refactor(Algebra/Module/LocalizedModule): Redefine `LocalizedModule` in terms of `OreLocalization`. |
---
- [x] depends on: #13151
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
519/628 |
Mathlib.lean,Mathlib/Algebra/Module/LocalizedModule.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/OreLocalization/Basic.lean,Mathlib/RingTheory/OreLocalization/Module.lean,Mathlib/RingTheory/OreLocalization/Ring.lean |
8 |
4 |
['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mattrobball'] |
nobody |
518-84971 1 year ago |
521-82669 521 days ago |
49-319 49 days |
| 16348 |
urkud author:urkud |
refactor(Topology): require `LinearOrder` with `OrderTopology` |
While the definition formally makes sense for a preorder,
this topology is usually not the right one for a non-linear order (e.g., `Real × Real`).
See [Zulip thread](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Open.20Ioi)
---
This PR doesn't cleanup any API, I'm going to do it in a later PR.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-topology
t-order
|
33/46 |
Mathlib/Analysis/Asymptotics/SuperpolynomialDecay.lean,Mathlib/Topology/Algebra/Order/LiminfLimsup.lean,Mathlib/Topology/Instances/Sign.lean,Mathlib/Topology/Order/Basic.lean,Mathlib/Topology/Order/Filter.lean,Mathlib/Topology/Order/MonotoneContinuity.lean |
6 |
10 |
['YaelDillies', 'github-actions', 'jcommelin', 'urkud'] |
nobody |
518-84595 1 year ago |
559-30529 559 days ago |
3-83049 3 days |
| 13965 |
pechersky author:pechersky |
feat(Data/DigitExpansion): reals via digit expansion are complete |
---
[](https://gitpod.io/from-referrer/)
- [ ] depends on: #13964 |
merge-conflict
blocked-by-other-PR
t-data
|
3876/0 |
Mathlib.lean,Mathlib/Data/DigitExpansion/Add.lean,Mathlib/Data/DigitExpansion/Defs.lean,Mathlib/Data/DigitExpansion/Hensel.lean,Mathlib/Data/DigitExpansion/Integer/Basic.lean,Mathlib/Data/DigitExpansion/Integer/Mul.lean,Mathlib/Data/DigitExpansion/Real/Basic.lean,Mathlib/Data/DigitExpansion/Real/CompleteSpace.lean,Mathlib/Data/DigitExpansion/Real/ConditionallyComplete.lean,docs/references.bib |
10 |
4 |
['github-actions', 'leanprover-community-mathlib4-bot'] |
nobody |
517-35363 1 year ago |
635-67982 635 days ago |
0-600 10 minutes |
| 16984 |
hrmacbeth author:hrmacbeth |
feat: extend `module` tactic to handle multiple rings, not strictly ordered by inclusion |
The `module` tactic currently in Mathlib handles scalars from multiple rings, but only if for any two rings `R` and `S` which appear, either `R` is an algebra over `S` or vice versa. This PR extends the tactic by providing a syntax `module T`, which will handle scalars from any ring `R` which `T` is an algebra over.
For example,
```lean
example : (2:ℤ) • x = (2:ℚ≥0) • x := by module
```
fails since `ℤ` is not a `ℚ≥0`-algebra and `ℚ≥0` is not a `ℤ`-algebra, but
```lean
example : (2:ℤ) • x = (2:ℚ≥0) • x := by module ℚ
```
works since `ℚ` is both a `ℤ`-algebra and a `ℚ≥0`-algebra.
This PR is a quick proof-of-concept implementation, just to record the desired approach and tactic syntax. It should not be merged as-is. It has with a lot of code duplication and should be rewritten more efficiently (for example, `parse` and `parseEnsuringType` should be merged to a single function, and the `some`/`none` cases in `matchScalarsAux` should be merged to a uniform treatment) before being considered for merging to Mathlib.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-meta
|
158/35 |
Mathlib/Tactic/Module.lean,test/module.lean |
2 |
1 |
['github-actions'] |
nobody |
515-20635 1 year ago |
unknown |
0-0 0 seconds |
| 10796 |
mcdoll author:mcdoll |
feat(Tactic/Positivity): non-negativity of functions |
---
This makes the `Finset.sum` and `integral_nonneg` extensions even more useful.
[](https://gitpod.io/from-referrer/)
|
WIP
t-meta
|
27/0 |
Mathlib/Tactic/Positivity/Core.lean |
1 |
1 |
['YaelDillies'] |
nobody |
513-17217 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-86279 1 year ago |
661-68377 661 days ago |
16-49744 16 days |
| 12414 |
adomani author:adomani |
test: lint and unlint `·` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
64/14 |
Archive/Wiedijk100Theorems/CubingACube.lean,Mathlib/Algebra/Module/Submodule/Bilinear.lean,Mathlib/Tactic/Linter/Multigoal.lean,test/Multigoal.lean |
4 |
4 |
['adomani', 'github-actions', 'grunweg', 'leanprover-bot'] |
nobody |
510-82820 1 year ago |
unknown |
0-0 0 seconds |
| 16925 |
YnirPaz author:YnirPaz |
feat(SetTheory/Cardinal/Cofinality): aleph index of singular cardinal has infinite cofinality |
Prove `Ordinal.aleph0_le_cof_of_not_isRegular`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-set-theory
|
6/0 |
Mathlib/SetTheory/Cardinal/Cofinality.lean |
1 |
4 |
['YnirPaz', 'github-actions', 'vihdzp'] |
nobody |
509-54402 1 year ago |
542-9589 542 days ago |
2-57220 2 days |
| 16647 |
eric-wieser author:eric-wieser |
feat: partitions of lists |
The length of this list is the bell numbers.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-combinatorics
t-data
|
311/0 |
Mathlib.lean,Mathlib/Data/List/Partition.lean |
2 |
1 |
['github-actions'] |
nobody |
508-16894 1 year ago |
unknown |
0-0 0 seconds |
| 13514 |
madvorak author:madvorak |
feat(Computability/ContextFreeGrammar): closure under union |
- [ ] depends on: #15895
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-computability
blocked-by-other-PR
|
448/4 |
Mathlib/Computability/ContextFreeGrammar.lean |
1 |
50 |
['Rida-Hamadani', 'YaelDillies', 'github-actions', 'leanprover-community-mathlib4-bot', 'madvorak'] |
nobody |
500-11207 1 year ago |
577-71588 577 days ago |
72-28417 72 days |
| 5364 |
thorimur author:thorimur |
feat: `wlog ... replacing` |
This allows hypotheses to be removed from the set of generalized hypotheses. E.g. `wlog h : P replacing h'` will remove `h'` from the hypotheses of the type of `this` and from the context of the goal that will suppose `h`. See [zulip](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/wlog.20.2E.2E.2E.20replacing.20.2E.2E.2E.3F).
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-meta
|
125/18 |
Mathlib/Tactic/WLOG.lean,test/wlog.lean |
2 |
2 |
['thorimur', 'urkud'] |
nobody |
498-44246 1 year ago |
unknown |
0-0 0 seconds |
| 9654 |
urkud author:urkud |
feat: add `@[mk_eq]` version of `@[mk_iff]` |
The new attribute generates theorems like
```lean
List.chain_eq : @List.Chain = fun {α} R a a_1 => a_1 = [] ∨ ∃ b l, R a b ∧ List.Chain R b l ∧ a_1 = b :: l
```
and is useful to rewrite in a theorem that argues about the properties of an unapplied inductive predicate.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-meta
|
63/9 |
Mathlib/Lean/Meta.lean,Mathlib/Tactic/MkIffOfInductiveProp.lean,test/MkIffOfInductive.lean |
3 |
6 |
['Vierkantor', 'github-actions', 'urkud'] |
nobody |
498-44000 1 year ago |
770-7299 770 days ago |
25-70825 25 days |
| 16704 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(Mathlib.Data.Ordering.Dickson): Dickson orders |
Dickson orders are a particular class of well founded orders
characterized by the fact that every nonempty set has finitely many minimal elements.
They appear in the classical theory of Groebner bases because it is easier to prove
that some sets are well founded using this property.
WiP. In the `tfae` function, property 2 is exactly `Set.PartiallyWellOrderedOn`, so the PR should be rewritten so as to use that property (and not define `IsDickson`).
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-order
|
324/0 |
Mathlib.lean,Mathlib/Data/Ordering/Dickson.lean,scripts/noshake.json |
3 |
9 |
['AntoineChambert-Loir', 'b-mehta', 'github-actions'] |
nobody |
498-22557 1 year ago |
549-11388 549 days ago |
2-84515 2 days |
| 16355 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: odd_{add,sub}_one |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
awaiting-author
t-number-theory
label:t-algebra$ |
12/0 |
Mathlib/Algebra/Ring/Int.lean,Mathlib/Algebra/Ring/Parity.lean |
2 |
4 |
['Ruben-VandeVelde', 'github-actions', 'urkud'] |
nobody |
497-56754 1 year ago |
562-45200 562 days ago |
0-57608 16 hours |
| 8638 |
alreadydone author:alreadydone |
refactor: noncommutative tensor product |
Co-authored-by: Eric Wieser
Co-authored-by: Jujian Zhang
This draft PR currently only generalizes a single file TensorProduct.lean; it allows TensorProduct to be taken over a non-commutative ring. Most of the declarations in TensorProduct.lean are now generalized to the non-commutative setting, and very few are deleted (their commutative version will be restored in another file).
Next plans:
+ Change the namespace in TensorProduct.lean from TensorProduct to NonCommTensorProduct, and remove the #aligns
+ I plan to use the same notation for the non-commutative and the commutative TensorProduct, and the user will need to `open scoped` different namespaces to use the one of their choice.
+ Start a new file TensorProduct/Comm.lean, copy the content of TensorProduct.lean on master into it, change the definition TensorProduct to be semi-reducibly defeq to NonCommTensorProduct (in order to support more instances or unify non-defeq instances that become prop-eq in the commutative setting, e.g. we've chosen the R-action on a tensor product over commutative R to come from the left factor, since the action from the right factor is the same), and reuse the NonComm constructions as much as possible. We then change all files that imports TensorProduct.lean to import TensorProduct/Comm.lean instead. Once we do that, mathlib would compile and this PR would be complete. We can gradually generalize other files about tensor products this way.
In this PR:
`TensorProduct.map` is now defined in terms of `lTensor` and `rTensor` rather than the other way around, which requires moving `lTensor` and `rTensor` up from their original location. The definition of `rid` also becomes more challenging and is moved down.
An evident observation is that actions on the domain of AddMonoidHom / LinearMap is really natural in the context of tensor products and Hom-tensor adjunction (`TensorProduct.lift`), not the default actions on the codomain. For example, it allows us to write the "balanced biadditive monoid homs" in #8536 as simply `N →ₗ[R] M →+ P` (where the right R-action on M turns into the left action on `M →+ P`).
For this reason, we disable the default instances `AddMonoidHom/LinearMap.module` at the beginning of the file and enable the `AddMonoidHom/LinearMap.domModule` instances instead. (The action on the codomain would be necessary for the non-commutative version of [TensorProduct.lTensorHomToHomLTensor](https://leanprover-community.github.io/mathlib4_docs/Mathlib/LinearAlgebra/TensorProduct.html#TensorProduct.lTensorHomToHomLTensor) (in the form of `P ⊗[R] (M →+ Q) →+ M →+ P ⊗[R] Q`), but I've deleted it for now.)
We register actions on the left factor of a tensor product as the default instance, but we also talk about actions on the right factor (`attribute [local instance] rightModule`).
The Tensor-Hom adjunction #8495 is now `uncurryEquiv` in this PR.
#8519 is now included in this PR and #8584 is now called `lift` in this PR.
`CharacterModule.homEquiv` in #8559 can be obtained by combining `liftEquiv` and `flipMop` in this PR (except for a mop). To refactor the commutative tensor product, we'd need to transfer many R^mop-action to R-action and R^mop-LinearMaps to R-LinearMaps, which can be achieved via `Module.compHom` and `LinearMap.restrictScalars` (requires `LinearMap.CompatibleSMul` instance) given `RingEquiv.toOpposite`. `LinearMap.characterfy` and `CharacterModule.cong` could be obtained from `LinearMap.compAddMonoidHom` in this PR.
TODO:
+ Move delarations that belong to other files.
+ Change docstrings that are no longer accurate.
+ Fix some argument order to be more natural.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
label:t-algebra$ |
793/676 |
Mathlib/Algebra/Module/LinearMap.lean,Mathlib/GroupTheory/GroupAction/DomAct/Basic.lean,Mathlib/LinearAlgebra/TensorProduct.lean |
3 |
6 |
['alreadydone', 'eric-wieser', 'grhkm21', 'jjaassoonn'] |
nobody |
496-82967 1 year ago |
unknown |
0-0 0 seconds |
| 14598 |
Command-Master author:Command-Master |
chore: add typeclasses to unify various `add_top`, `add_eq_top`, etc. |
Add the four typeclasses `IsTopAbsorbing`, `IsBotAbsorbing`, `NoTopSum`, `NoBotSum`, as additive equivalents for `MulZeroClass` and `NoZeroDivisors`. Add instances of these for `ENNReal`, `WithTop α`, `WithBot α`, `PUnit`, `EReal`, `PartENat`, `Measure`, `Interval` and `Filter`.
Also split `Algebra/Order/AddGroupWithTop` to `Algebra/Order/Group/WithTop` and `Algebra/Order/Monoid/WithTop`
---
Previous usages of lemmas with quantified names like `WithTop.add_top` have to be changed to just `add_top`.
`add_lt_top` is `@[simp]`, in accordance with `ENNReal.add_lt_top` being `@[simp]`. This affects `WithTop.add_lt_top` which previously hadn't been `@[simp]`.
[](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 |
496-28155 1 year ago |
496-28155 496 days ago |
7-45599 7 days |
| 18636 |
adomani author:adomani |
Test/latest import report dev |
This PR is a test accompanying #18631.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
CI
|
147/0 |
.github/workflows/latest_import.yml,lakefile.lean |
2 |
1 |
['github-actions'] |
nobody |
495-15426 1 year ago |
unknown |
0-0 0 seconds |
| 16885 |
metinersin author:metinersin |
feat(ModelTheory/Complexity): define literals |
Defines `FirstOrder.Language.BoundedFormula.IsLiteral` and `FirstOrder.Language.BoundedFormula.simpleNot` - an auxiliary operation that takes the negation of a formula and does some simplification.
---
- [x] depends on: #16800
[](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-70676 1 year ago |
529-59988 529 days ago |
0-19926 5 hours |
| 18716 |
jjaassoonn author:jjaassoonn |
feat(Algebra/Module/GradedModule): quotient and subgrading |
- [ ] depends on: #9820
[](https://gitpod.io/from-referrer/)
|
WIP
t-algebra
blocked-by-other-PR
awaiting-CI
merge-conflict
label:t-algebra$ |
997/191 |
Counterexamples/HomogeneousPrimeNotPrime.lean,Mathlib.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Module/GradedModule/Basic.lean,Mathlib/Algebra/Module/GradedModule/QuotientGrading.lean,Mathlib/Algebra/Module/GradedModule/Subgrading.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Submodule.lean,Mathlib/RingTheory/GradedAlgebra/Quotient.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean,scripts/no_lints_prime_decls.txt |
12 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
493-70307 1 year ago |
unknown |
0-0 0 seconds |
| 9341 |
winstonyin author:winstonyin |
feat: Naturality of integral curves |
Let `v` and `v'` be sections of the tangent bundle of manifolds `M` and `M'`, respectively, and let `f : M → M'` be a differentiable map. Then `f` maps integral curves of `v` to integral curves of `v'` if and only if `v` and `v'` are `f`-related.
- [x] depends on: #8483
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-differential-geometry
|
45/0 |
Mathlib/Geometry/Manifold/IntegralCurve.lean,Mathlib/Topology/Algebra/Module/Basic.lean |
2 |
9 |
['github-actions', 'grunweg', 'leanprover-community-mathlib4-bot', 'winstonyin'] |
nobody |
490-36099 1 year ago |
798-6169 798 days ago |
0-28222 7 hours |
| 13248 |
hcWang942 author:hcWang942 |
feat: basic concepts of auction theory |
## Description
Formalise some core concepts and results in auction theory: this includes definitions for first-price and second-price auctions, as well as several fundamental results and helping lemmas.
This is the very first PR of the project formalizing core concepts and results in auction theory.
Our group is working on more contributions on the formalization of game theory prefix.
Co-authored-by: Ma Jiajun
## Reference
Roughgarden, Tim. ***Twenty Lectures on Algorithmic Game Theory***. Cambridge University Press, 2020. [Link](https://www.cambridge.org/core/books/twenty-lectures-on-algorithmic-game-theory/A9D9427C8F43E7DAEF8C702755B6D72B)
---
- [x] Will depend on #14163 once that PR is merged. The Fintype lemmas introduced by this PR have been added in that PR and will be removed from here once that PR gets merged
## Current plan for formalization of Game Theory
The current plan for the formalizing of Game Theory include:
#### 1. Auction Theory. 🎉 _(200+ lines, this PR)_
- Essential definitions of Sealed-bid auction, First-price auction and Second-price auction.
- First-price auction has no dominant strategy.
- Second-price auction has dominant strategy. (Second-price auction is DSIC)
#### 2. Mechanism design & Myerson's Lemma. 🎉 (400+ lines, pending for modification to Mathlib Standard)
- Mechanism design
An allocation rule is implementable if there exists
- Dominant Strategy Incentive Compatible (DSIC) payment rule
- An allocation rule is monotone if for every bidder’s gain is nondecreasing w.r.t. her/his bid
- Myerson's Lemma
Implementable ⇔ Monotone
In the above case, the DSIC payment rule is unique.
#### 3. von Neumann‘s Minimax Theorem. 🎉 (800+ lines, pending for modification to Mathlib Standard)
- Equilibrium in zero sum game
- Formalization strategy: via Loomis’s theorem.
#### 4. Nash Equilibrium. 🎉 (pending for modification to Mathlib Standard)
#### 5. Brouwer fixed-point theorem. (Work in Progress)
#### 6. More Mechanism design. (Planning)
|
merge-conflict
awaiting-author
new-contributor
t-logic
|
204/0 |
Mathlib.lean,Mathlib/GameTheory/Auction/Basic.lean,docs/references.bib |
3 |
148 |
['Shreyas4991', 'YaelDillies', 'eric-wieser', 'faenuccio', 'github-actions', 'grunweg', 'hcWang942', 'tb65536', 'urkud', 'vihdzp'] |
hcWang942 assignee:hcWang942 |
489-23108 1 year ago |
503-9296 503 days ago |
109-82807 109 days |
| 17675 |
astrainfinita author:astrainfinita |
perf: do not search algebraic hierarchy when searching `FunLike` hierarchy |
---
Unification is still very slow.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
slow-typeclass-synthesis
t-algebra
label:t-algebra$ |
144/4 |
Mathlib.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Algebra/Rat.lean,Mathlib/Algebra/Group/Equiv/Basic.lean,Mathlib/Algebra/GroupWithZero/Hom.lean,Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Order/Hom/Basic.lean,Mathlib/Algebra/Ring/CentroidHom.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/Algebra/Ring/Hom/Defs.lean,Mathlib/Algebra/Star/StarAlgHom.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Operator/LinearIsometry.lean,Mathlib/GroupTheory/GroupAction/Hom.lean,Mathlib/RingTheory/Bialgebra/Equiv.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/Coalgebra/Equiv.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Util/SetSynthOrder.lean,MathlibTest/TCSynth.lean,scripts/noshake.json |
24 |
5 |
['astrainfinita', 'github-actions', 'leanprover-bot'] |
nobody |
488-84641 1 year ago |
unknown |
0-0 0 seconds |
| 9344 |
erdOne author:erdOne |
feat: Add `AddGroup.FG` -> `Module.Finite ℤ` as instances |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
4/0 |
Mathlib/RingTheory/Finiteness.lean |
1 |
4 |
['alreadydone', 'erdOne', 'leanprover-bot'] |
nobody |
488-7501 1 year ago |
787-7944 787 days ago |
21-27905 21 days |
| 12133 |
ADedecker author:ADedecker |
feat: generalize instIsLowerProd to arbitrary products |
Also change a bit the proof of the product case to match my own taste, feel free to tell if you prefer the old one.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-topology
t-order
|
34/14 |
Mathlib/Topology/Constructions.lean,Mathlib/Topology/Order/LowerUpperTopology.lean |
2 |
13 |
['Ruben-VandeVelde', 'TwoFX', 'github-actions', 'jcommelin', 'mans0954', 'mathlib-bors', 'riccardobrasca'] |
nobody |
487-17255 1 year ago |
638-12891 638 days ago |
63-69226 63 days |
| 16637 |
astrainfinita author:astrainfinita |
perf: reorder `extends` of `(Add)Monoid` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
label:t-algebra$ |
46/51 |
Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/BigOperators/Ring/List.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/Algebra/Ring/SumsOfSquares.lean,Mathlib/CategoryTheory/Preadditive/FunctorCategory.lean,Mathlib/Data/Finset/NoncommProd.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Torsion.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/Order/Filter/Germ/Basic.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/Coalgebra/Hom.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean |
20 |
3 |
['astrainfinita', 'github-actions', 'leanprover-bot'] |
nobody |
487-16493 1 year ago |
552-23849 552 days ago |
1-49655 1 day |
| 18765 |
astrainfinita author:astrainfinita |
chore: changing `outParam` of `MulActionSemiHomClass` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
60/34 |
Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Category/ModuleCat/Limits.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/GroupTheory/GroupAction/Hom.lean |
4 |
4 |
['astrainfinita', 'github-actions', 'leanprover-bot'] |
nobody |
486-59154 1 year ago |
unknown |
0-0 0 seconds |
| 15822 |
kmill author:kmill |
feat: greedy colorings of finite graphs |
Proves that the greedy coloring only takes `G.maxDegree + 1` colors.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-combinatorics
|
159/0 |
Mathlib/Combinatorics/SimpleGraph/ConcreteColorings.lean |
1 |
1 |
['github-actions'] |
nobody |
483-84347 1 year ago |
unknown |
0-0 0 seconds |
| 8661 |
joelriou author:joelriou |
feat(CategoryTheory/Sites): descent of sheaves |
In this PR, it is shown that the category of sheaves on a site `(C, J)` identifies as a full subcategory of a category of families of sheaves equipped with a descent data (for a family of objects which cover the final object). Under suitable conditions, it shall be shown that this is an equivalence of categories (TODO).
---
This shall be split in small PRs later.
- [x] depends on: #8622
- [x] depends on: #8632
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-category-theory
|
1396/26 |
Mathlib.lean,Mathlib/CategoryTheory/Over.lean,Mathlib/CategoryTheory/Sites/CoverPreserving.lean,Mathlib/CategoryTheory/Sites/Descent.lean,Mathlib/CategoryTheory/Sites/EqualizerSheafCondition.lean,Mathlib/CategoryTheory/Sites/InducedTopology.lean,Mathlib/CategoryTheory/Sites/ObjectsCoverTop.lean,Mathlib/CategoryTheory/Sites/Over.lean,Mathlib/CategoryTheory/Sites/SheafHom.lean,Mathlib/CategoryTheory/Sites/Sieves.lean |
10 |
3 |
['github-actions', 'leanprover-community-mathlib4-bot'] |
nobody |
483-79875 1 year ago |
unknown |
0-0 0 seconds |
| 19055 |
JLimperg author:JLimperg |
Test precompilation (batteries + aesop) again |
|
merge-conflict |
9/8 |
lake-manifest.json,lakefile.lean |
2 |
5 |
['JLimperg', 'github-actions', 'leanprover-bot'] |
nobody |
483-61518 1 year ago |
unknown |
0-0 0 seconds |
| 10476 |
shuxuezhuyi author:shuxuezhuyi |
feat(Topology/UniformSpace): define uniform preordered space |
We define the semi-uniform structure and the uniform preordered space.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-topology
|
94/0 |
Mathlib.lean,Mathlib/Topology/UniformSpace/UniformOrder.lean,docs/references.bib |
3 |
2 |
['shuxuezhuyi'] |
nobody |
482-66529 1 year ago |
711-7557 711 days ago |
52-19273 52 days |
| 17593 |
astrainfinita author:astrainfinita |
chore(Algebra/Order/GroupWithZero/Unbundled): deprecate useless lemmas, use `ZeroLEOneClass` |
There are still some useless lemmas that were simply ported from `Algebra.Order.Monoid.Lemmas`, such as just chain an existing lemma with an assumption and lemmas whose assumptions imply `1 ≤ 0`. This PR removes them.
Also, some lemmas have both assumptions like `1 < a` `0 < a`. This PR uses `ZeroLEOneClass` to remove redundant assumptions.
---
- [ ] depends on: #17623
Ported from https://github.com/leanprover-community/mathlib/pull/16525 and https://github.com/leanprover-community/mathlib/pull/18158
Adapted from #9250. This version is easier to review.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
blocked-by-other-PR
t-order
label:t-algebra$ |
188/48 |
Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Counting.lean,Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/Order/Field.lean |
6 |
4 |
['astrainfinita', 'github-actions', 'mathlib4-dependent-issues-bot', 'vihdzp'] |
nobody |
482-3471 1 year ago |
522-75452 522 days ago |
0-74903 20 hours |
| 17623 |
astrainfinita author:astrainfinita |
feat(Algebra/Order/GroupWithZero/Unbundled): add some lemmas |
Some lemmas in `Algebra.Order.GroupWithZero.Unbundled` have incorrect or unsatisfactory names, or assumptions that can be omitted using `ZeroLEOneClass`. The lemmas added in this PR are versions of existing lemmas that use the correct or better name or `ZeroLEOneClass` to omit an assumption. The original lemmas will be deprecated in #17593.
| New name | Old name |
|-------------------------|-------------------------|
| `mul_le_one_left₀` | `Left.mul_le_one_of_le_of_le` |
| `mul_lt_one_of_le_of_lt_left₀` (`0 ≤ ·` version) / `mul_lt_one_of_le_of_lt_of_pos_left` | `Left.mul_lt_of_le_of_lt_one_of_pos` |
| `mul_lt_one_of_lt_of_le_left₀` | `Left.mul_lt_of_lt_of_le_one_of_nonneg` |
| `mul_le_one_right₀` | `Right.mul_le_one_of_le_of_le` |
| `mul_lt_one_of_lt_of_le_right₀` (`0 ≤ ·` version) / `mul_lt_one_of_lt_of_le_of_pos_right` | `Right.mul_lt_one_of_lt_of_le_of_pos` |
| `mul_lt_one_of_le_of_lt_right₀` | `Right.mul_lt_one_of_le_of_lt_of_nonneg` |
The following lemmas use `ZeroLEOneClass`.
| New name | Old name |
|-------------------------|-------------------------|
| `(Left.)one_le_mul₀` | `Left.one_le_mul_of_le_of_le` |
| `Left.one_lt_mul_of_le_of_lt₀` | `Left.one_lt_mul_of_le_of_lt_of_pos` |
| `Left.one_lt_mul_of_lt_of_le₀` | `Left.lt_mul_of_lt_of_one_le_of_nonneg` / `one_lt_mul_of_lt_of_le` (still there) |
| `(Left.)one_lt_mul₀` | |
| `Right.one_le_mul₀` | `Right.one_le_mul_of_le_of_le` |
| `Right.one_lt_mul_of_lt_of_le₀` | `Right.one_lt_mul_of_lt_of_le_of_pos` |
| `Right.one_lt_mul_of_le_of_lt₀` | `Right.one_lt_mul_of_le_of_lt_of_nonneg` / `one_lt_mul_of_le_of_lt` (still there) / `one_lt_mul` (still there) |
| `Right.one_lt_mul₀` | `Right.one_lt_mul_of_lt_of_lt` |
---
Split from #17593.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
awaiting-zulip
t-order
label:t-algebra$ |
146/44 |
Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled.lean |
2 |
11 |
['YaelDillies', 'astrainfinita', 'github-actions', 'j-loreaux'] |
nobody |
482-3471 1 year ago |
488-82430 488 days ago |
33-53295 33 days |
| 18969 |
alreadydone author:alreadydone |
chore: generalize Module to NonUnitalSemiring |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
label:t-algebra$ |
94/75 |
Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/End.lean,Mathlib/Algebra/Group/Action/Prod.lean,Mathlib/Algebra/Group/Action/TypeTags.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/Module/Defs.lean,Mathlib/Algebra/Module/Submodule/Defs.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/Laurent.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Group.lean,Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/GroupTheory/CoprodI.lean,Mathlib/LinearAlgebra/FreeModule/IdealQuotient.lean,Mathlib/LinearAlgebra/LinearDisjoint.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean,Mathlib/LinearAlgebra/TensorProduct/Submodule.lean,Mathlib/RingTheory/Filtration.lean,Mathlib/RingTheory/Flat/FaithfullyFlat.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/Ideal/Defs.lean,Mathlib/RingTheory/Ideal/Lattice.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Prod.lean,Mathlib/RingTheory/Presentation.lean,Mathlib/RingTheory/Smooth/Kaehler.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean |
31 |
11 |
['alreadydone', 'eric-wieser', 'github-actions', 'leanprover-bot'] |
nobody |
480-27123 1 year ago |
unknown |
0-0 0 seconds |
| 17624 |
astrainfinita author:astrainfinita |
feat(Algebra/Order/GroupWithZero/Unbundled): generalize lemmas |
---
- [ ] depends on: #17623
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
blocked-by-other-PR
t-order
label:t-algebra$ |
121/26 |
Mathlib/Algebra/Order/GroupWithZero/Unbundled.lean |
1 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
478-40643 1 year ago |
522-74322 522 days ago |
0-465 7 minutes |
| 17513 |
astrainfinita author:astrainfinita |
perf: do not search algebraic hierarchies when using `map_*` lemmas |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
awaiting-bench
label:t-algebra$ |
5/3 |
Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/GroupTheory/GroupAction/Hom.lean |
2 |
10 |
['astrainfinita', 'github-actions', 'grunweg', 'leanprover-bot'] |
nobody |
476-86065 1 year ago |
521-1530 521 days ago |
4-72589 4 days |
| 17515 |
astrainfinita author:astrainfinita |
perf: do not need `simp low` now |
---
- [ ] depends on: #17513
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
blocked-by-other-PR
label:t-algebra$ |
12/10 |
Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Analysis/SpecialFunctions/Bernstein.lean,Mathlib/GroupTheory/GroupAction/Hom.lean,Mathlib/NumberTheory/LucasLehmer.lean |
4 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
476-86064 1 year ago |
525-73576 525 days ago |
0-380 6 minutes |
| 19212 |
Julian author:Julian |
feat(LinearAlgebra): add a variable_alias for VectorSpace |
Taken directly from the variable_alias docs.
Zulip: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/why.20.5Bvariable_alias.5D.20attribute.20is.20not.20used.20in.20Mathlib.3F
---
This is the first actual variable alias added to mathlib. I haven't reviewed variable_alias fully, but it seems like there's at least 3 ways they could be distributed in Mathlib:
* alongside whatever subfolder they "belong to" (which is what I've tentatively done here)
* In a file called `Aliases` somewhere near the thing they alias (which seems less discoverable to me)
* In a single file, a la `Mathlib.TrainingWheels` (with some less playful name) which is meant to define a bunch of more "friendly" aliases all in one place.
I kind of like the idea of the third thing as a future module but perhaps it can be synthesized if/when there are more aliases? For now as I say I've done the first one, but please let me know if someone prefers something else.
[](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 |
476-4910 1 year ago |
476-4910 476 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-67387 1 year ago |
473-67387 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 |
462-33056 1 year ago |
462-33056 462 days ago |
31-53021 31 days |
| 19125 |
yhtq author:yhtq |
feat: add theorems to transfer `IsGalois` between pairs of fraction rings |
feat: add theorems to transfer `IsGalois` between pairs of fraction rings.
- [x] depends on: #18404
- [x] depends on: #19124
---
[](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-45525 1 year ago |
486-6907 486 days ago |
0-1980 33 minutes |
| 18841 |
hrmacbeth author:hrmacbeth |
chore: change some `linarith`s to `linear_combination`s |
Change 100 `linarith`s to `linear_combination`s; this is generally a slight speedup.
---
[](https://gitpod.io/from-referrer/)
- [x] depends on: #18714 (not strictly blocked by this, but the speed comparison will be more informative after it)
|
merge-conflict
WIP
|
106/107 |
Archive/Imo/Imo1959Q2.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2013Q5.lean,Archive/Imo/Imo2021Q1.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Complex/AbelLimit.lean,Mathlib/Analysis/Convex/Gauge.lean,Mathlib/Analysis/Convex/Slope.lean,Mathlib/Analysis/Convex/SpecificFunctions/Basic.lean,Mathlib/Analysis/Convex/Uniform.lean,Mathlib/Analysis/Convex/Visible.lean,Mathlib/Analysis/FunctionalSpaces/SobolevInequality.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/PSeries.lean,Mathlib/Analysis/SpecialFunctions/Gamma/BohrMollerup.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Analysis/SpecificLimits/FloorPow.lean,Mathlib/MeasureTheory/Covering/BesicovitchVectorSpace.lean,Mathlib/MeasureTheory/Measure/Lebesgue/VolumeOfBalls.lean,Mathlib/NumberTheory/Modular.lean,Mathlib/NumberTheory/Transcendental/Liouville/LiouvilleWith.lean,Mathlib/Probability/Distributions/Pareto.lean |
30 |
29 |
['github-actions', 'grunweg', 'hrmacbeth', 'jcommelin', 'leanprover-bot', 'mathlib4-dependent-issues-bot'] |
nobody |
458-6451 1 year ago |
480-28697 480 days ago |
3-28253 3 days |
| 11142 |
hmonroe author:hmonroe |
feat(ProofTheory): Define logical symbols abstractly; opens new top-level section, drawing from lean4-logic |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-logic
|
468/1 |
Mathlib.lean,Mathlib/Data/Fin/VecNotation.lean,Mathlib/ProofTheory/LogicSymbol.lean |
3 |
19 |
['PatrickMassot', 'YaelDillies', 'avigad', 'fpvandoorn', 'github-actions'] |
nobody |
452-16271 1 year ago |
648-76320 648 days ago |
94-3235 94 days |
| 11210 |
hmonroe author:hmonroe |
Test commit |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
1950/1 |
Mathlib.lean,Mathlib/Data/Fin/VecNotation.lean,Mathlib/ProofTheory/Calculus.lean,Mathlib/ProofTheory/FirstOrder/Arith/Language.lean,Mathlib/ProofTheory/FirstOrder/Basic/Syntax/Term.lean,Mathlib/ProofTheory/LogicSymbol.lean,Mathlib/ProofTheory/Matrix.lean,Mathlib/ProofTheory/Semantics.lean,Mathlib/ProofTheory/System.lean,docs/references.bib |
10 |
100 |
['github-actions'] |
nobody |
452-16270 1 year ago |
738-5751 738 days ago |
2-67901 2 days |
| 19621 |
Command-Master author:Command-Master |
feat: Multiplicity and prime-adic valuation of derivations |
---
- [ ] depends on: #19596
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
blocked-by-other-PR
large-import
label:t-algebra$ |
397/13 |
Mathlib.lean,Mathlib/Algebra/Order/AddGroupWithTop.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/Order/WithBot.lean,Mathlib/RingTheory/Derivation/Multiplicity.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/PrimeMultiplicity.lean |
9 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
451-84931 1 year ago |
472-24176 472 days ago |
0-370 6 minutes |
| 18262 |
joelriou author:joelriou |
feat(Algebra/Category/ModuleCat/Presheaf): exterior powers of presheaves of modules |
---
- [x] depends on: #18261
- [ ] depends on: #18236
- [ ] depends on: #18197
[](https://gitpod.io/from-referrer/)
|
WIP
t-algebra
blocked-by-other-PR
t-category-theory
merge-conflict
label:t-algebra$ |
874/0 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/ExteriorPower.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/ExteriorPower.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/FunctorOfNatTrans.lean,Mathlib/Algebra/Category/ModuleCat/Pseudofunctor.lean |
6 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
451-76226 1 year ago |
unknown |
0-0 0 seconds |
| 18294 |
astrainfinita author:astrainfinita |
perf: make `Mul.toSMul` higher priority |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-bench
t-algebra
label:t-algebra$ |
2/5 |
Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Order/Field/Pointwise.lean,Mathlib/Combinatorics/Additive/AP/Three/Defs.lean,Mathlib/Topology/Algebra/Module/WeakBilin.lean |
4 |
4 |
['astrainfinita', 'github-actions', 'leanprover-bot'] |
nobody |
446-83863 1 year ago |
unknown |
0-0 0 seconds |
| 15269 |
kkytola author:kkytola |
feat: Add ENNReal.floor |
A right-continuous floor function on `ENNReal`.
---
- [x] depends on: #13938
- [ ] depends on: #15773 (general type class for `ENat`-valued floor functions)
- [x] depends on: #15380 (topology on `ENat` is needed to state right continuity of the floor function)
[](https://gitpod.io/from-referrer/)
|
t-algebra
blocked-by-other-PR
t-order
merge-conflict
awaiting-author
label:t-algebra$ |
445/0 |
Mathlib.lean,Mathlib/Algebra/Order/EFloor.lean,Mathlib/Data/ENNReal/Floor.lean,Mathlib/Data/Nat/Lattice.lean |
4 |
18 |
['YaelDillies', 'github-actions', 'kkytola', 'leanprover-community-mathlib4-bot', 'urkud'] |
nobody |
438-57160 1 year ago |
587-52226 587 days ago |
0-3440 57 minutes |
| 15773 |
kkytola author:kkytola |
feat: Add type class for ENat-valued floor functions |
This PR adds a type class for extended natural number -valued floor functions. This is split off from #15269, where the suggestions were to make the floor function on ENNReal ENat-valued and to have an API mimicling FloorSemirings. Besides ENNReal, at least ENNRat would naturally satisfy the general type class.
---
Two things are worth noting:
* To fully mimic `FloorSemiring` API, also ceiling functions need to be added. The plan is to do that in a later PR.
* The PR introduces the class `CastNatENatClass` to ensure that `natCast` and a coercion from `ENat` behave in the natural and order-respecing manner. This feels a little ad hoc, but such assumptions are needed for general `ENat`-valued floor functions to behave well.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-order
|
231/0 |
Mathlib.lean,Mathlib/Algebra/Order/EFloor.lean,Mathlib/Data/ENat/Basic.lean |
3 |
5 |
['YaelDillies', 'github-actions', 'kkytola', 'urkud'] |
nobody |
438-57037 1 year ago |
514-56390 514 days ago |
66-24436 66 days |
| 3251 |
kmill author:kmill |
feat: deriving `LinearOrder` for simple enough inductive types |
Uses the same machinery underlying the `Fintype` derive handler to derive a lexicographical `LinearOrder` for non-recursive inductive types that have no indices.
In principle more complicated types can have `LinearOrder`s, but that would require a more sophisticated implementation.
---
- [x] depends on: #3198
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
awaiting-author
t-meta
|
82/0 |
Mathlib.lean,Mathlib/Tactic/DeriveLinearOrder.lean |
2 |
5 |
['ChrisHughes24', 'kim-em', 'kmill', 'vihdzp'] |
nobody |
436-31690 1 year ago |
1062-33721 1062 days ago |
1-80343 1 day |
| 3610 |
TimothyGu author:TimothyGu |
feat: derive Infinite automatically for inductive types |
Deals with recursive types, but not mutually recursive types or types with indices right now. See docstring for details.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-meta
|
517/0 |
Mathlib.lean,Mathlib/Tactic/DeriveInfinite.lean,test/DeriveInfinite.lean |
3 |
11 |
['TimothyGu', 'digama0', 'eric-wieser', 'grunweg', 'kim-em', 'kmill'] |
kmill assignee:kmill |
436-31689 1 year ago |
1048-26731 1048 days ago |
9-24079 9 days |
| 16120 |
awainverse author:awainverse |
feat(ModelTheory/Algebra/Ring/Basic): Ring homomorphisms are a `StrongHomClass` for the language of rings |
Adds an `IsAlgebraic` instance to the language of rings
Adds a `StrongHomClass` instance to the type of ring homomorphisms between rings with `CompatibleRing` structures
---
[](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-49230 1 year ago |
434-49230 434 days ago |
135-29017 135 days |
| 20459 |
Ruben-VandeVelde author:Ruben-VandeVelde |
chore: fix names of roots_C_mul_X_{add,sub}_C_of_IsUnit |
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-algebra
label:t-algebra$ |
11/5 |
Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/Roots.lean |
2 |
2 |
['eric-wieser', 'github-actions'] |
nobody |
432-73673 1 year ago |
432-73673 432 days ago |
4-64422 4 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-80262 1 year ago |
427-80262 427 days ago |
6-66637 6 days |
| 17739 |
Aaron1011 author:Aaron1011 |
feat(Topology/Order/DenselyOrdered): prove Not (IsOpen) for intervals |
Prove that Iic/Ici/Ioc/Ico/Icc intervals are not open in densely ordered topologies with no min/max element
---
[](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-67537 1 year ago |
518-59107 518 days ago |
0-4704 1 hour |
| 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-67292 1 year ago |
425-67292 425 days ago |
76-67978 76 days |
| 20656 |
Komyyy author:Komyyy |
feat(Mathlib/Geometry/Manifold/VectorBundle/Sphere): convert orthogonal smooth `M → 𝕊ⁿ` & `M → ℝⁿ⁺¹` to smooth `M → T𝕊ⁿ` |
Current Mathlib has no easy way to define function from a manifold to tangent bundles of sphere: `T𝕊ⁿ`.
This PR gives this: `sphereTangentMap`. This convert orthogonal smooth `M → 𝕊ⁿ` & `M → ℝⁿ⁺¹` to smooth `M → T𝕊ⁿ`.
I also proved that if `f : M → 𝕊ⁿ` & `g : M → ℝⁿ⁺¹` are smooth then `sphereTangentMap` of `f` & `g` is smooth too.
---
⚠ **CAUTION**
I formalized this in my spare time.
I don't have the energy to maintain the PR, but I create this PR so this may helps everyone.
The only one thing to do is proof cleanup.
TODO:
- [x] `contDiff_uncurry_stereoInvFunAux` & `coe_sphere_comp_stereoInvFun` may have to be moved to `Mathlib.Geometry.Manifold.Instances.Sphere`.
- [ ] Proof cleanup. Current proof may be redundant and ugly.
[](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 |
425-15826 1 year ago |
unknown |
0-0 0 seconds |
| 15711 |
znssong author:znssong |
feat(Combinatorics/SimpleGraph): Some lemmas about walk, cycle and Hamiltonian cycle |
---
These lemmas are separated from the `meow-sister/BondyChvatal` branch and will be needed for the proof of the Bondy-Chvátal theorem.
- [x] depends on: #15536
- [x] depends on: #16294 |
merge-conflict
awaiting-author
t-combinatorics
new-contributor
|
407/3 |
Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Path.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean |
4 |
22 |
['Rida-Hamadani', 'YaelDillies', 'github-actions', 'mathlib4-dependent-issues-bot', 'znssong'] |
nobody |
425-223 1 year ago |
546-11384 546 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-52542 1 year ago |
464-52155 464 days ago |
33-8818 33 days |
| 14412 |
jjaassoonn author:jjaassoonn |
feat: show stalk of presheaf of modules is a module over stalk of ring |
---
- [x] depends on: #14413
- [ ] depends on: #14501
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebraic-geometry
blocked-by-other-PR
workshop-AIM-AG-2024
|
966/2 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/OverColimitsRing'.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/OverColimitsRing.lean,Mathlib/CategoryTheory/Filtered/Basic.lean,Mathlib/CategoryTheory/Limits/ConcreteCategory.lean,Mathlib/Geometry/RingedSpace/Basic.lean,Mathlib/Geometry/RingedSpace/Module.lean,Mathlib/Topology/Sheaves/Stalks.lean |
8 |
5 |
['github-actions', 'jjaassoonn', 'leanprover-community-mathlib4-bot', 'smorel394'] |
nobody |
422-71125 1 year ago |
unknown |
0-0 0 seconds |
| 8362 |
urkud author:urkud |
feat(Asymptotics): define `ReflectsGrowth` |
---
- [x] depends on: #8349
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-analysis
|
268/0 |
Mathlib.lean,Mathlib/Analysis/Asymptotics/ReflectsGrowth.lean |
2 |
14 |
['YaelDillies', 'fpvandoorn', 'github-actions', 'leanprover-community-mathlib4-bot', 'urkud'] |
nobody |
422-59796 1 year ago |
614-25223 614 days ago |
240-47513 240 days |
| 6692 |
prakol16 author:prakol16 |
feat: disjoint indexed union of local homeomorphisms |
Add disjoint indexed union of local equivs and local homeomorphisms
---
This is leading up to PRing some things related to covering spaces that I wrote a long time ago in lean 3 but never submitted a PR for. Note that this was converted using mathport.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-topology
|
126/0 |
Mathlib/Logic/Equiv/PartialEquiv.lean,Mathlib/Topology/PartialHomeomorph.lean |
2 |
4 |
['alreadydone', 'github-actions', 'winstonyin'] |
nobody |
422-44392 1 year ago |
514-54411 514 days ago |
118-5497 118 days |
| 18461 |
hannahfechtner author:hannahfechtner |
feat: left and right common multiples mixins |
add mixins for left and right common multiples. These carry the data of what factors are used to create the common multiples
---
[](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 |
421-13722 1 year ago |
421-13722 421 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-74201 1 year ago |
425-41602 425 days ago |
27-52347 27 days |
| 19352 |
hrmacbeth author:hrmacbeth |
chore: change some `nlinarith`s to `linear_combination`s |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
13/13 |
Archive/Imo/Imo2021Q1.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Mathlib/Analysis/Normed/Group/AddCircle.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Ring/Units.lean,Mathlib/Analysis/SpecialFunctions/Complex/LogBounds.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean,Mathlib/NumberTheory/Modular.lean |
8 |
4 |
['github-actions', 'hrmacbeth', 'leanprover-bot'] |
nobody |
418-17012 1 year ago |
480-28717 480 days ago |
0-8636 2 hours |
| 20372 |
jvlmdr author:jvlmdr |
feat(MeasureTheory/Function): Add ContinuousLinearMap.bilinearCompLp(L) |
Introduce ContinuousLinearMap.bilinearCompLp and bilinearCompLpL.
Generalize eLpNorm_le_eLpNorm_mul_eLpNorm theorems to include constant C in bound condition.
---
Expect this may be useful for defining tempered distributions from functions in `L^p`.
The definitions more or less follow `ContinuousLinearMap.compLp...`. Names are loosely analogous to `ContinuousLinearMap.bilinearComp` and `SchwartzMap.bilinLeftCLM`.
Note: I preferred the spelling `hpqr : p⁻¹ + q⁻¹ = r⁻¹` with `f` in `L^p` and `g` in `L^q` to `hpqr : 1 / p = 1 / q + 1 / r`. It's easier to obtain from `ENNReal.IsConjExponent` too.
A few questions:
- [ ] I defined `bilinear{Left,Right}LpL` in addition to `bilinearCompLpL` because `LinearMap.mkContinuous₂` is marked as `noncomputable` and `LinearMap.mkContinuous` is not. Is this worth the extra definitions? (Note: This is not visible in the source due to `noncomputable section`.)
- [ ] Should I use `C : ℝ` instead of `C : NNReal` for `eLpNorm_le_eLpNorm_mul_eLpNorm'_of_norm'`?
- [ ] Is it going to be painful to have `[Fact (1 ≤ p)] [Fact (1 ≤ q)] [Fact (1 ≤ r)]`? I don't think there's a way to avoid it though. Maybe providing specialized versions for `p.IsConjExponent q` with `L^1`?
Naming:
- [ ] Is it satisfactory to add a `'` to the `eLpNorm_le_eLpNorm_mul_eLpNorm ` definitions in `CompareExp.lean` where `≤ ‖f x‖ * ‖g x‖` has been replaced with `≤ C * ‖f x‖ * ‖g x‖`? These could replace the existing theorems, although I don't want to break backwards compatibility. There are 5 instances: `eLpNorm_le_eLpNorm_top_mul_eLpNorm'`, `eLpNorm_le_eLpNorm_mul_eLpNorm_top'`, `eLpNorm'_le_eLpNorm'_mul_eLpNorm''`, `eLpNorm_le_eLpNorm_mul_eLpNorm_of_nnnorm'`, `eLpNorm_le_eLpNorm_mul_eLpNorm'_of_norm'` (I'm not sure why the existing theorem `eLpNorm_le_eLpNorm_mul_eLpNorm'_of_norm` has an internal `'`)
- [ ] Is `bilinearLeftLpL` a suitable name? Other options: `bilinearCompLpLeftL`, `bilinearCompLeftLpL`, `bilinLeftLpL` (analogous to `SchwartzMap.bilinLeftCLM`)
[](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 |
413-5149 1 year ago |
413-5149 413 days ago |
27-43617 27 days |
| 2605 |
eric-wieser author:eric-wieser |
chore: better error message in linarith |
On this mwe:
```lean
import Mathlib.Tactic.Linarith
example (s : Set ℕ) (h : s = s) : 0 ≤ 1 :=
by linarith
```
this now indicates where the internal error is coming from.
Is there a better way of chaining errors than this?
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-meta
|
12/1 |
Mathlib/Tactic/Linarith/Preprocessing.lean |
1 |
3 |
['Vierkantor', 'harahu', 'kim-em', 'mo271'] |
nobody |
410-82142 1 year ago |
1058-27281 1058 days ago |
51-42225 51 days |
| 11837 |
trivial1711 author:trivial1711 |
feat: completion of a uniform multiplicative group |
Multiplicativize `Topology.Algebra.GroupCompletion`. That is, rewrite it in the multiplicative setting and recover the original results using `@[to_additive]`.
- Because `@[to_additive]` doesn't work with `noncomputable section` (https://github.com/leanprover/lean4/pull/2610), some instances with `@[to_additive]` need to be explicitly marked with `noncomputable instance`.
- One might be tempted to multiplicativize this definition from `Topology.Algebra.GroupCompletion`:
```lean
instance [UniformSpace α] [Add α] : Add (Completion α) :=
⟨Completion.map₂ (· + ·)⟩
```
to this:
```lean
@[to_additive]
instance [UniformSpace α] [Mul α] : Mul (Completion α) :=
⟨Completion.map₂ (· * ·)⟩
```
However, as Eric Wieser pointed out, doing so would create a bad diamond with the definition
```lean
instance [UniformSpace α] [TopologicalRing α] [UniformAddGroup α] [Ring α] : Mul (Completion α) :=
⟨curry <| (denseInducing_coe.prod denseInducing_coe).extend ((↑) ∘ uncurry (· * ·))⟩
```
in `Topology.Algebra.UniformRing`.
How should this diamond be resolved? Well, the definition of multiplication that uses `curry <| (denseInducing_coe.prod denseInducing_coe).extend ((↑) ∘ uncurry (· * ·))` is the "correct" one. For example, it yields the correct result if `α` is `ℚ`, unlike the definition that uses `Completion.map₂ (· * ·)`. (This is because `Completion.map₂` yields junk values if used on a function which is not uniformly continuous. Note, however, that if multiplication on `α` *is* uniformly continuous, then `Completion.map₂ (· * ·)` and `curry <| (denseInducing_coe.prod denseInducing_coe).extend ((↑) ∘ uncurry (· * ·))` are propositionally equal.) So, following Eric's suggestion, we remove the definition that uses `Completion.map₂ (· * ·)`, and generalize the other definition to any uniform space with a multiplication operation:
```lean
@[to_additive]
noncomputable instance [UniformSpace α] [Mul α] : Mul (Completion α) :=
⟨curry <| (denseInducing_coe.prod denseInducing_coe).extend ((↑) ∘ uncurry (· * ·))⟩
```
This requires slightly modifying some of the proofs in `Topology.Algebra.GroupCompletion`. For example, suppose that `α` is a uniform group. Since we can no longer use `Completion.continuous_map₂`, it becomes more efficient to prove that the multiplication, inversion, and division operations on `Completion α` are uniformly continuous *before* we prove that `Completion α` is a group.
- Previously, `Topology.Algebra.GroupCompletion` had an instance:
```lean
instance [UniformSpace α] [Sub α] : Sub (Completion α) := ...
```
Naively multiplicativizing this would yield
```lean
@[to_additive]
instance [UniformSpace α] [Inv α] : Inv (Completion α) := ...
```
Unfortunately, this would conflict with `Topology.Algebra.UniformField`, which already instantiates `Inv (Completion α)` when `α` is a uniform field. Instead, we use two different `instance` declarations. (If `α` is an additive group, then this instantiates `Neg (Completion α)` twice, and the instances are syntactically equal.)
```lean
@[to_additive]
noncomputable instance [UniformSpace α] [Group α] : Inv (Completion α) := ...
instance [UniformSpace α] [Neg α] : Neg (Completion α) := ...
```
This avoids the bad diamond (because a uniform field can never be a `Group`) while remaining backward compatible. Note that the `@[to_additive]` is necessary here, because it maintains the link between the additive setting and multiplicative setting. We use a similar method to instantiate `Div (Completion α)`.
- Some definitions in this file involve a module structure on `α`. We leave these as is and do not attempt to multiplicativize them at all.
- The instance of `DistribMulAction` must be multiplicativized to an instance of `MulDistribMulAction` manually.
Zulip thread: https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Completion.20of.20a.20uniform.20multiplicative.20group
---
# (Small) Issue
Recall the following trick that this pull request uses to define inversion and negation on uniform spaces. The idea is that we define negation on the completion of any uniform space that has a negation operation, but we define inversion on only the completion of a uniform space that has the structure of a multiplicative group. We do this to avoid creating a bad diamond with the inversion operation on a uniform field.
```lean
@[to_additive]
noncomputable instance {α : Type*} [UniformSpace α] [Group α] : Inv (Completion α) := ...
instance {α : Type*} [UniformSpace α] [Neg α] : Neg (Completion α) := ...
```
Now, suppose that we want to prove `coe_inv_of_group` (resp. `coe_neg`), which states that the coercion `α → Completion α` commutes with inversion (resp. negation). In the current version of this pull request, `coe_inv_of_group` (resp. `coe_neg`) only applies to uniform multiplicative (resp. additive) groups. However, we do not use the fact that multiplication (resp. addition) on `α` is uniformly continuous to prove it. We only use the fact that inversion (resp. negation) is continuous. So, what we really want is to have more general statements that look like this:
```lean
theorem coe_inv_of_group {α : Type*} [UniformSpace α] [Group α] [ContinuousInv α] : ...
theorem coe_neg {α : Type*} [UniformSpace α] [Neg α] [ContinuousNeg α] : ...
```
Note that `coe_inv_of_group` needs the assumption `[Group α]`, because otherwise inversion is not defined on `Completion α` at all. However, `coe_neg` does not need the analogous assumption `[AdditiveGroup α]`.
The question is: If `coe_inv_of_group` and `coe_neg` are written in this more general form, how can we link them using `@[to_additive]`? Here is one option, but it obviously leaves something to be desired.
```lean
@[to_additive coe_neg_do_not_use_this_use_the_more_general_version]
theorem coe_inv_of_group {α : Type*} [UniformSpace α] [Group α] [ContinuousInv α] : ...
theorem coe_neg {α : Type*} [UniformSpace α] [Neg α] [ContinuousNeg α] : ...
```
Co-authored-by: Eric Wieser
---
[](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-59647 1 year ago |
439-71926 439 days ago |
101-64856 101 days |
| 12670 |
trivial1711 author:trivial1711 |
feat: completion of a nonarchimedean multiplicative group |
We prove that the completion of a nonarchimedean multiplicative group is a nonarchimedean multiplicative group.
---
- [x] depends on: #12669
- [ ] depends on: #11837
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
t-topology
blocked-by-other-PR
label:t-algebra$ |
358/228 |
Mathlib/Analysis/InnerProductSpace/Completion.lean,Mathlib/Analysis/Normed/Group/HomCompletion.lean,Mathlib/Analysis/Normed/Module/Completion.lean,Mathlib/Topology/Algebra/GroupCompletion.lean,Mathlib/Topology/Algebra/InfiniteSum/GroupCompletion.lean,Mathlib/Topology/Algebra/Nonarchimedean/Completion.lean,Mathlib/Topology/Algebra/UniformField.lean,Mathlib/Topology/Algebra/UniformMulAction.lean,Mathlib/Topology/Algebra/UniformRing.lean |
9 |
2 |
['github-actions', 'leanprover-community-mathlib4-bot'] |
nobody |
410-59524 1 year ago |
437-40980 437 days ago |
50-17994 50 days |
| 21384 |
alreadydone author:alreadydone |
experiment: make submodule quotient reducibly defeq to additive group quotient |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
1/1 |
Mathlib/LinearAlgebra/Quotient/Defs.lean |
1 |
1 |
['github-actions'] |
nobody |
406-71289 1 year ago |
unknown |
0-0 0 seconds |
| 9449 |
hmonroe author:hmonroe |
feat: Add Turing machine with the quintet definition (TMQ) and a chainable step function for each TM type |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-computability
awaiting-author
|
458/1 |
Mathlib/Computability/TuringMachine.lean,Mathlib/Logic/PartArith.lean |
2 |
8 |
['eric-wieser', 'github-actions', 'hmonroe'] |
nobody |
405-24326 1 year ago |
711-6949 711 days ago |
91-37374 91 days |
| 18719 |
astrainfinita author:astrainfinita |
perf: lower the priority of `SemilinearMapClass.toAddHomClass` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
slow-typeclass-synthesis
t-algebra
awaiting-bench
label:t-algebra$ |
14/7 |
Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unique.lean,MathlibTest/TCSynth.lean |
3 |
4 |
['astrainfinita', 'github-actions', 'leanprover-bot'] |
nobody |
403-85543 1 year ago |
unknown |
0-0 0 seconds |
| 19697 |
quangvdao author:quangvdao |
feat(BigOperators/Fin): Sum/product over `Fin` intervals |
This PR adds new theorems about the sum/product of some vector over `Fin` intervals. One example is:
```
@[to_additive]
theorem prod_Iic_succ (i : Fin n) :
∏ j ∈ Iic i.succ, v j = (∏ j ∈ Iic i.castSucc, v j) * v i.succ
```
---
- [x] depends on: #20360
This is in preparation for reworking `finSigmaFinEquiv` and `finProdFinEquiv` in #19013.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-data
|
87/12 |
Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Data/Fintype/Fin.lean,Mathlib/Order/Interval/Finset/Fin.lean |
3 |
20 |
['Ruben-VandeVelde', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib4-dependent-issues-bot', 'quangvdao'] |
nobody |
402-66744 1 year ago |
437-16274 437 days ago |
6-25961 6 days |
| 19353 |
hrmacbeth author:hrmacbeth |
chore: golf some term/rw proofs using `linear_combination` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
47/102 |
Archive/Wiedijk100Theorems/SumOfPrimeReciprocalsDiverges.lean,Mathlib/Analysis/Convex/Slope.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/MeasureTheory/Integral/RieszMarkovKakutani.lean,Mathlib/NumberTheory/Modular.lean,Mathlib/NumberTheory/Zsqrtd/Basic.lean,Mathlib/Topology/ContinuousMap/ZeroAtInfty.lean |
7 |
5 |
['github-actions', 'grunweg', 'hrmacbeth', 'leanprover-bot'] |
grunweg assignee:grunweg |
401-65865 1 year ago |
480-28709 480 days ago |
0-7781 2 hours |
| 20248 |
peabrainiac author:peabrainiac |
feat(Topology/Compactness): first-countable locally path-connected spaces are delta-generated |
Shows that all first-countable locally path-connected spaces are delta-generated (so in particular all normed spaces and convex subsets thereof are), and that delta-generated spaces are equivalently generated by the unit interval or standard simplices.
---
- [ ] depends on: #21616
In principle, this should be close to all that's required to show that all simplicial complexes and CW-complexes are delta-generated; I just haven't done it yet because I'm not sure which file to best do it in.
[](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-48859 1 year ago |
407-13376 407 days ago |
39-21495 39 days |
| 21610 |
JLimperg author:JLimperg |
Aesop forward benchmark: forward precomp |
Not a real PR, just for benchmarking.
|
merge-conflict |
30/27 |
Mathlib/Data/List/InsertIdx.lean,Mathlib/Tactic/Recall.lean,Mathlib/Topology/List.lean,Test.lean,lake-manifest.json,lakefile.lean,lean-toolchain |
7 |
3 |
['JLimperg', 'github-actions', 'leanprover-bot'] |
nobody |
399-84750 1 year ago |
unknown |
0-0 0 seconds |
| 21611 |
JLimperg author:JLimperg |
Aesop forward benchmark: master no-precomp |
Not a real PR, just for benchmarking. |
merge-conflict |
30/27 |
Mathlib/Data/List/InsertIdx.lean,Mathlib/Tactic/Recall.lean,Mathlib/Topology/List.lean,Test.lean,lake-manifest.json,lakefile.lean,lean-toolchain |
7 |
4 |
['JLimperg', 'github-actions', 'leanprover-bot'] |
nobody |
399-84749 1 year ago |
unknown |
0-0 0 seconds |
| 21612 |
JLimperg author:JLimperg |
Aesop forward benchmark: master precomp |
Not a real PR, just for benchmarking. |
merge-conflict |
30/27 |
Mathlib/Data/List/InsertIdx.lean,Mathlib/Tactic/Recall.lean,Mathlib/Topology/List.lean,Test.lean,lake-manifest.json,lakefile.lean,lean-toolchain |
7 |
3 |
['JLimperg', 'github-actions', 'leanprover-bot'] |
nobody |
399-84748 1 year ago |
unknown |
0-0 0 seconds |
| 10678 |
adri326 author:adri326 |
feat(Topology/UniformSpace): prove that a uniform space is completely regular |
Provides the pseudometric definition of a uniform space (for any open set `s` and `x ∈ s`, there exists a finite family of pseudometric spaces on `X` and an `ε > 0`, such that the intersection of the balls of these pseudometric spaces is a subset of `s`),
and uses it to prove that `UniformSpace X` implies `CompletelyRegularSpace X`.
---
This PR aims to close the gap of pi-base's theorem [T345](https://topology.pi-base.org/theorems/T000345), which says that topological groups are completely regular. We already have a proof that topological groups are uniform, but it turns out that we do not have any connection between `UniformSpace X` and `CompletelyRegularSpace X`.
There is an equivalence between `UniformSpace X` and `CompletelyRegularSpace X`: the former implies the latter, and the latter implies *the existence of* the former. This PR provides the first half of this equivalence.
The construction of the pseudometric definition is based on N. Bourbaki, Chapter 9, Theorem 4.1
The proof that a uniform space is completely regular is based on [the outline on mathexchange](https://math.stackexchange.com/questions/494718/how-to-prove-that-every-uniform-space-is-completely-regular).
I tried to outline the major steps of the different proofs inside of comments; I can happily be more verbose to clear up any confusion.
See [the corresponding Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Some.20missing.2C.20accessible.2C.20topology.20results) for more context.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-topology
|
332/0 |
Mathlib.lean,Mathlib/Topology/UniformSpace/Basic.lean,Mathlib/Topology/UniformSpace/CompletelyRegular.lean |
3 |
6 |
['ADedecker', 'adri326'] |
ADedecker assignee:ADedecker |
399-60276 1 year ago |
740-83955 740 days ago |
17-44804 17 days |
| 18785 |
erdOne author:erdOne |
feat(CategoryTheory): command that generates instances for `MorphismProperty` |
Co-authored-by: Calle Sönne
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-category-theory
t-meta
|
369/0 |
Mathlib.lean,Mathlib/CategoryTheory/MorphismProperty/Tactic.lean,MathlibTest/AddMorphismPropertyInstances.lean,scripts/noshake.json |
4 |
19 |
['alexjbest', 'chrisflav', 'erdOne', 'github-actions', 'grunweg', 'jcommelin', 'joelriou'] |
nobody |
397-76786 1 year ago |
419-18656 419 days ago |
52-4018 52 days |
| 16311 |
madvorak author:madvorak |
feat(Computability): regular languages are context-free |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-computability
|
72/0 |
Mathlib.lean,Mathlib/Computability/Chomsky.lean,Mathlib/Computability/ContextFreeGrammar.lean |
3 |
7 |
['Rida-Hamadani', 'YaelDillies', 'github-actions', 'madvorak'] |
nobody |
395-83205 1 year ago |
unknown |
0-0 0 seconds |
| 19943 |
AlexLoitzl author:AlexLoitzl |
feat(Computability): Add Chomsky Normal Form Grammar and translation |
- Define Chomsky normal form grammars
- Add language-preserving translation between context-free grammars and Chomsky normal form grammars
Co-authored-by: Martin Dvorak martin.dvorak@matfyz.cz
---
[](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-82958 1 year ago |
403-8180 403 days ago |
37-29014 37 days |
| 17005 |
YnirPaz author:YnirPaz |
feat(SetTheory/Cardinal/Regular): define singular cardinals |
Define singular cardinals and prove basic lemmas about them.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-set-theory
|
94/1 |
Mathlib.lean,Mathlib/SetTheory/Cardinal/Regular.lean,Mathlib/SetTheory/Ordinal/Basic.lean |
3 |
28 |
['YaelDillies', 'YnirPaz', 'github-actions', 'vihdzp'] |
nobody |
393-29914 1 year ago |
506-49481 506 days ago |
34-16079 34 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-51729 1 year ago |
390-51729 390 days ago |
13-33168 13 days |
| 12054 |
adomani author:adomani |
feat: auto-bugs |
This PR introduces a linter for suggesting bugs in tactics.
See
* #12077
* #12083
* #12084
for some bugs exposed by the test suite.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-meta
|
737/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/MetaTesting.lean,scripts/noshake.json,test/MetaTesting.lean |
5 |
20 |
['adomani', 'eric-wieser', 'github-actions', 'joneugster', 'kim-em'] |
joneugster assignee:joneugster |
390-39386 1 year ago |
603-11404 603 days ago |
45-6051 45 days |
| 5062 |
adomani author:adomani |
feat(Tactic/Prune + test/Prune): add `prune` tactic, for removing unnecessary hypotheses |
This tactic removes very conservatively all local declarations that
1. do not appear in the main goal,
2. do not appear in a declaration that appears in the main goal,
3. ... and so on recursively.
The main motivation for this tactic is that all available variables in the current `namespace/section` appear in the goal state, not just the ones that are needed for the statement to type-check. Using `prune` mitigates this situation.
The tactic also admits an optional natural number argument: `prune n` removes all variables that have not appeared at the `(n+1)`-st stage in the above list. Thus, `prune 0` only leaves the variables needed for the statement to type-check. Also, for sufficiently large `n`, `prune n` is a synonym for `prune`.
[Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/substitute.20for.20.60include.2Fomit.60.3F)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
modifies-tactic-syntax
awaiting-author
t-meta
|
181/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Prune.lean,test/Prune.lean |
4 |
5 |
['adomani', 'j-loreaux', 'kmill'] |
nobody |
390-6693 1 year ago |
810-78424 810 days ago |
195-57118 195 days |
| 22169 |
JLimperg author:JLimperg |
Aesop forward benchmark: forward no-precomp naive |
Not a real PR, just for benchmarking. |
merge-conflict |
31/27 |
Mathlib/Data/List/InsertIdx.lean,Mathlib/Tactic/Recall.lean,Mathlib/Topology/List.lean,Test.lean,lake-manifest.json,lakefile.lean,lean-toolchain |
7 |
6 |
['JLimperg', 'github-actions', 'leanprover-bot'] |
nobody |
388-58757 1 year ago |
unknown |
0-0 0 seconds |
| 21433 |
grunweg author:grunweg |
chore: change more lemmas to be about enorm instead of nnnorm |
---
- [x] depends on: #21782
- [x] depends on: #21783 (and this PR modifies the file split, and file splits are painful to merge over)
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
carleson
t-measure-probability
|
172/71 |
Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/ContinuousFunctions.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean |
9 |
18 |
['RemyDegenne', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib4-dependent-issues-bot'] |
nobody |
388-57946 1 year ago |
395-54011 395 days ago |
2-38741 2 days |
| 22171 |
JLimperg author:JLimperg |
Aesop forward benchmark: forward no-precomp naive rpinf pr-release |
Not a real PR, just for benchmarking. |
merge-conflict |
31/27 |
Mathlib/Data/List/InsertIdx.lean,Mathlib/Tactic/Recall.lean,Mathlib/Topology/List.lean,Test.lean,lake-manifest.json,lakefile.lean,lean-toolchain |
7 |
5 |
['JLimperg', 'github-actions', 'leanprover-bot'] |
nobody |
387-66630 1 year ago |
unknown |
0-0 0 seconds |
| 20454 |
urkud author:urkud |
chore(TangentCone): review names |
Also add some `@[simp]` attrs.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-analysis
|
201/139 |
Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/Deriv/Abs.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Equiv.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/Calculus/FDeriv/RestrictScalars.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Calculus/IteratedDeriv/Lemmas.lean,Mathlib/Analysis/Calculus/MeanValue.lean,Mathlib/Analysis/Calculus/TangentCone.lean,Mathlib/Analysis/Calculus/Taylor.lean,Mathlib/Analysis/Calculus/VectorField.lean,Mathlib/Analysis/Convex/SpecificFunctions/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/InverseDeriv.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/Geometry/Manifold/MFDeriv/UniqueDifferential.lean,Mathlib/Geometry/Manifold/VectorBundle/Tangent.lean,Mathlib/MeasureTheory/Integral/FundThmCalculus.lean |
25 |
3 |
['github-actions', 'sgouezel', 'urkud'] |
nobody |
384-18126 1 year ago |
392-20756 392 days ago |
4-9045 4 days |
| 21608 |
JLimperg author:JLimperg |
Aesop forward benchmark: forward no-precomp rpinf pr-release |
Not a real PR, just for benchmarking. |
merge-conflict |
38/29 |
Mathlib/Data/List/InsertIdx.lean,Mathlib/Data/Nat/Prime/Defs.lean,Mathlib/Tactic/Recall.lean,Mathlib/Topology/List.lean,Test.lean,lake-manifest.json,lakefile.lean,lean-toolchain |
8 |
13 |
['JLimperg', 'github-actions', 'leanprover-bot'] |
nobody |
383-79259 1 year ago |
unknown |
0-0 0 seconds |
| 21609 |
JLimperg author:JLimperg |
Aesop forward benchmark: forward no-precomp |
Not a real PR, just for benchmarking. |
merge-conflict |
38/29 |
Mathlib/Data/List/InsertIdx.lean,Mathlib/Data/Nat/Prime/Defs.lean,Mathlib/Tactic/Recall.lean,Mathlib/Topology/List.lean,Test.lean,lake-manifest.json,lakefile.lean,lean-toolchain |
8 |
13 |
['JLimperg', 'github-actions', 'leanprover-bot'] |
nobody |
383-77623 1 year ago |
unknown |
0-0 0 seconds |
| 16550 |
awainverse author:awainverse |
feat(ModelTheory): A typeclass for languages expanding other languages |
Defines `L.Expands L'` to consist of a privileged injective inclusion, `L'.Inclusion L`, from `L'` to `L`, corresponding to one language being a subset of the other in set-theoretic foundations.
Replaces `L.IsOrdered` with `L.Expands Language.order` and `L.OrderLHom` with `Language.order.Inclusion L`
Redefines `leSymb` in terms of `Language.order.Inclusion L`
Deletions:
- `FirstOrder.Language.IsOrdered`
- `FirstOrder.Language.OrderLHom`
- `instance : IsOrdered Language.order`
- `sum.instIsOrdered`
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-logic
|
97/43 |
Mathlib/ModelTheory/LanguageMap.lean,Mathlib/ModelTheory/Order.lean |
2 |
9 |
['YaelDillies', 'awainverse', 'github-actions'] |
nobody |
383-56994 1 year ago |
556-1825 556 days ago |
0-61590 17 hours |
| 10823 |
alexkeizer author:alexkeizer |
feat: convert curried type functions into uncurried type functions |
Adds a conversion `TypeFun.ofCurried : CurriedTypeFun.{u, v} n -> TypeFun.{u, v} n`,
where `CurriedTypeFun.{u,v} n` is a (def-eq) abbreviation for `Type u -> ... -> Type u -> Type v`, i.e., the type of *curried* functions taking `n` arguments of type `Type u` to return an element of `Type v`, and
`TypeFun.{u, v} n` is an abbreviation for `TypeVec.{u} n -> Type v`.
It is generally more idiomatic to define type functions with multiple arguments in the curried style, but in the QPF development we use the uncurried equivalent `TypeVec n -> Type _`. Thus, having a canonical conversion from curried functions to uncurried gives us a canonical way to ask if a curried type function, say `Sum` is a QPF (namely, "is there an instance of `MvQPF (TypeFun.ofCurried Sum)`").
---
This is code ported from https://github.com/alexkeizer/QpfTypes, where this conversion is crucial in presenting a high-level interface, in terms of idiomatic, curried, type functions to users, while being built on QPFs (and thus, uncurried typefunctions) underneath.
There is also a conversion in the other direction, from uncurried to curried, which I've decided to PR later, to keep this PR smaller and hopefully easier to review.
- [x] depends on: #10818 (all changes to `Fin2.lean` are part of 10818, not the current PR)
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-data
|
66/0 |
Mathlib.lean,Mathlib/Data/TypeFun.lean |
2 |
9 |
['YaelDillies', 'alexkeizer', 'github-actions', 'leanprover-community-mathlib4-bot'] |
nobody |
380-69587 1 year ago |
631-54187 631 days ago |
15-9013 15 days |
| 13648 |
urkud author:urkud |
feat(Topology/Module): generalize `ContinuousLinearMap.compSL` |
Generalize `ContinuousLinearMap.compSL` to topological vector spaces.
---
- [ ] depends on: #15217
This PR is not polished yet, but the main statement is there.
@ADedecker This answers a question I asked you on Zulip a few months ago.
[](https://gitpod.io/from-referrer/)
|
t-algebra
merge-conflict
awaiting-author
t-topology
t-analysis
label:t-algebra$ |
23/18 |
Mathlib/Analysis/NormedSpace/OperatorNorm/Bilinear.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean |
2 |
5 |
['fpvandoorn', 'github-actions', 'mathlib4-dependent-issues-bot', 'urkud'] |
nobody |
379-6277 1 year ago |
616-75604 616 days ago |
28-69042 28 days |
| 19372 |
Command-Master author:Command-Master |
find defeq abuse using diagnostics |
---
[](https://gitpod.io/from-referrer/)
- [ ] depends on: #19177 |
merge-conflict
blocked-by-other-PR
large-import
|
169/1 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/FindDefEqAbuse.lean,MathlibTest/FindDefEqAbuse.lean,lakefile.lean |
6 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
379-5777 1 year ago |
unknown |
0-0 0 seconds |
| 22408 |
JLimperg author:JLimperg |
Aesop forward bench: precomp only rpinf |
---
Not a real PR (yet), just for benchmarking.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
dependency-bump
|
5/3 |
lake-manifest.json,lakefile.lean,scripts/bench/fake-root/lib/lean/libleanshared.so,scripts/bench/run |
4 |
6 |
['JLimperg', 'github-actions', 'leanprover-bot'] |
nobody |
378-81081 1 year ago |
unknown |
0-0 0 seconds |
| 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-33980 1 year ago |
436-56464 436 days ago |
93-453 93 days |
| 20636 |
eric-wieser author:eric-wieser |
feat: multiplication of intervals in rings |
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-algebra
label:t-algebra$ |
36/1 |
Mathlib/Algebra/Order/Interval/Basic.lean |
1 |
16 |
['Timeroot', 'YaelDillies', 'eric-wieser', 'github-actions'] |
nobody |
377-64646 1 year ago |
413-68423 413 days ago |
17-17852 17 days |
| 16000 |
YaelDillies author:YaelDillies |
feat: Croot-Sisask Almost Periodicity |
Almost periodicity is nowadays a standard tool in additive combinatorics.
From LeanAPAP
---
- [ ] depends on: #15443
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
t-analysis
blocked-by-other-PR
|
0/0 |
|
0 |
4 |
['github-actions', 'leanprover-community-mathlib4-bot', 'mergify'] |
nobody |
377-7567 1 year ago |
574-1238 574 days ago |
0-159 2 minutes |
| 22340 |
sinhp author:sinhp |
feat(CategoryTheory): Locally Cartesian Closed Categories (Beck-Chevalley Conditions) |
Building on top of the API of `ExponentiableMorphism` in #22321, we state and prove Beck-Chevalley conditions. This will be crucial for our development of polynomial functors along exponentiable morphisms.
Co-authored-by: Emily Riehl
---
- [ ] depends on: #22321
- [ ] depends on: #22319
- [ ] depends on: #21525
[](https://gitpod.io/from-referrer/)
|
WIP
blocked-by-other-PR
t-category-theory
large-import
merge-conflict
|
1144/24 |
Mathlib.lean,Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/Comma/Over/Pullback.lean,Mathlib/CategoryTheory/Comma/Over/Sections.lean,Mathlib/CategoryTheory/Galois/Examples.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/Basic.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/BeckChevalley.lean,docs/references.bib |
8 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
376-81228 1 year ago |
383-63155 383 days ago |
0-17 17 seconds |
| 21959 |
BGuillemet author:BGuillemet |
feat(Topology/ContinuousMap): Stone-Weierstrass theorem for MvPolynomial |
Add the subalgebra of multivariate polynomials and prove it separates points, on the same model as `ContinuousMap/Polynomial.lean`.
Prove the Stone-Weierstrass theorem and some variations for multivariate polynomials.
---
[](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-77570 1 year ago |
376-77570 376 days ago |
16-76141 16 days |
| 19177 |
adomani author:adomani |
test: the findDefEqAbuse linter |
This is a prototype, as per [this Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Locating.20defeq.20abuse)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
large-import
|
126/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/FindDefEqAbuse.lean,MathlibTest/FindDefEqAbuse.lean |
5 |
1 |
['github-actions'] |
nobody |
374-79583 1 year ago |
unknown |
0-0 0 seconds |
| 22359 |
adomani author:adomani |
feat(whitespace): do not allow indented doc-strings |
In a doc-string, Do not allow the first character after the first line break to be a space.
---
There are approximately 2.5k exceptions. I think that they should be unindented, judging from the sample that I looked at, but won't act on it, unless there is a clear plan to fix and merge this modification!
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-linter
large-import
|
222/70 |
Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Mathlib.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/AlgebraicTopology/SimplicialSet/NerveAdjunction.lean,Mathlib/Analysis/Asymptotics/ExpGrowth.lean,Mathlib/Data/Matroid/Circuit.lean,Mathlib/Init.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Encode.lean,Mathlib/LinearAlgebra/Dimension/StrongRankCondition.lean,Mathlib/LinearAlgebra/LinearIndependent/Basic.lean,Mathlib/LinearAlgebra/LinearIndependent/Defs.lean,Mathlib/Tactic.lean,Mathlib/Tactic/FunProp/Decl.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/DocString.lean,Mathlib/Topology/Path.lean,Mathlib/Topology/UnitInterval.lean,MathlibTest/LintDocstring.lean,lakefile.lean |
20 |
1 |
['github-actions'] |
nobody |
374-78502 1 year ago |
383-18191 383 days ago |
0-2574 42 minutes |
| 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-48997 1 year ago |
372-48997 372 days ago |
129-16341 129 days |
| 16944 |
YnirPaz author:YnirPaz |
feat(SetTheory/Cardinal/Cofinality): lemmas about limit ordinals and cofinality |
Prove that a singular cardinal has a limit aleph index and that a limit ordinal and positive cofinality.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-set-theory
|
18/0 |
Mathlib/SetTheory/Cardinal/Cofinality.lean |
1 |
8 |
['YnirPaz', 'github-actions', 'vihdzp'] |
nobody |
371-41873 1 year ago |
542-9551 542 days ago |
1-84890 1 day |
| 17368 |
Felix-Weilacher author:Felix-Weilacher |
feat(Topology/Baire/BaireMeasurable): add the Kuratowski-Ulam theorem |
Add the Kuratowski-Ulam theorem, which one can think of as a "Fubini" for Baire category.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-topology
|
187/1 |
Mathlib/MeasureTheory/MeasurableSpace/Basic.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Topology/Baire/BaireMeasurable.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/GDelta/Basic.lean |
5 |
6 |
['Felix-Weilacher', 'github-actions', 'urkud'] |
nobody |
370-73066 1 year ago |
507-84585 507 days ago |
22-48253 22 days |
| 8767 |
eric-wieser author:eric-wieser |
refactor(Cache): tidy lake-manifest parsing in Cache |
This now respects local copies of Mathlib dependencies (though in practice these invalidate the *online* cache because to point to local copies of Mathlib, the hash for `lakefile.lean` and `lake-manifest.json` is first invalidated).
---
- [x] depends on: #11492
[](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-48729 1 year ago |
551-14679 551 days ago |
119-35643 119 days |
| 22434 |
qawbecrdtey author:qawbecrdtey |
feat(Mathlib/Analysis/Normed/Lp/WithLp): Added more instances for `WithLp` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-analysis
|
51/22 |
Mathlib/Analysis/Normed/Lp/WithLp.lean |
1 |
11 |
['eric-wieser', 'github-actions', 'leanprover-bot', 'qawbecrdtey'] |
nobody |
368-78168 1 year ago |
375-47433 375 days ago |
1-79072 1 day |
| 15578 |
znssong author:znssong |
feat(Function): Fixed points of function `f` with `f(x) >= x` |
We added some lemmas of fixed points of function `f` with `f(x) >= x`, where `f : α → α` is a function on a finite type `α`. This will be needed in proof of Bondy-Chvátal theorem.
---
See also branch `meow-sister/BondyChvatal`.
[](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-73396 1 year ago |
551-76625 551 days ago |
29-48368 29 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 |
365-13425 1 year ago |
365-13425 365 days ago |
10-48025 10 days |
| 13999 |
adomani author:adomani |
feat: a linter to flag potential confusing conventions |
Currently, the linter flags all uses of
* `a - b` where `a b : Nat`;
* `a / b` where `a b : Nat` or `a b : Int`;
* `a / 0` more or less whenever the type of `a` has a `0` and a division.
This comes up often when starting to use Lean and hopefully the flag can help mitigate initial confusions.
When the local context contains the relevant inequality/divisibility hypothesis, the linter is quiet.
A recent [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/113489-new-members/topic/not.20understanding.20deliberate.20error.20with.20.60ring.60.20over.20.E2.84.95/near/445879310)
---
To make sure that the linter does not produce errors, #14007 activates the linter on "all" of mathlib. The expectation is that no error is thrown, just warnings.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-linter
awaiting-author
|
251/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/Papercut.lean,MathlibTest/Papercut.lean |
4 |
24 |
['Julian', 'YaelDillies', 'adomani', 'eric-wieser', 'github-actions'] |
nobody |
364-45459 11 months ago |
625-22950 625 days ago |
7-47589 7 days |
| 19013 |
quangvdao author:quangvdao |
feat(Algebra/BigOperators/Fin): Add `finSigmaFinEquiv` |
This PR adds `finSigmaFinEquiv` which is the equivalence `(i : Fin m) × Fin (n i) ≃ Fin (∑ i, n i)`. This is the dependent version of `finProdFinEquiv`.
CI should be passing, but there are two things I'd like feedback on:
1. When defining the mappings, I have to consider `m = 0` separately. Is there a more uniform definition?
2. I'm proving this as a step toward defining `Fin.join`, which is the analogue of `List.join`. I can now technically define `Fin.join` as:
```
variable {a : Fin n → ℕ} {α : (i : Fin n) → (j : Fin (a i)) → Sort*}
def join (v : (i : Fin n) → (j : Fin (a i)) → α i j) (k : Fin (∑ i, a i)) :
α (finSigmaFinEquiv.invFun k).1 (finSigmaFinEquiv.invFun k).2 :=
v (finSigmaFinEquiv.invFun k).1 (finSigmaFinEquiv.invFun k).2
```
but this looks horrible. This highly motivates refactoring `invFun` as two new definitions:
```
def func1 {n : ℕ} (a : Fin n → ℕ) (k : Fin (∑ i, a i)) : Fin n := sorry
def func2 {n : ℕ} (a : Fin n → ℕ) (k : Fin (∑ i, a i)) : Fin (a (func1 a k)) := sorry
```
I'm not sure what to call these functions. The analogues in the non-dependent case are `divNat` and `modNat`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
92/16 |
Mathlib/Algebra/BigOperators/Fin.lean |
1 |
14 |
['YaelDillies', 'eric-wieser', 'github-actions', 'quangvdao'] |
nobody |
362-67492 11 months ago |
484-45420 484 days ago |
3-28829 3 days |
| 20389 |
eric-wieser author:eric-wieser |
feat: generalize results to `WithLp 0` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-analysis
|
116/53 |
Mathlib/Analysis/Normed/Lp/PiLp.lean |
1 |
1 |
['github-actions'] |
nobody |
361-56040 11 months ago |
unknown |
0-0 0 seconds |
| 19189 |
YnirPaz author:YnirPaz |
feat(SetTheory/Ordinal/Arithmetic): order isomorphism between omega and the natural numbers |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-set-theory
|
44/0 |
Mathlib/Order/SuccPred/Limit.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean |
2 |
21 |
['YaelDillies', 'YnirPaz', 'github-actions', 'vihdzp'] |
nobody |
361-37125 11 months ago |
436-56766 436 days ago |
47-37012 47 days |
| 19227 |
adomani author:adomani |
fix(CI): unwrap `lake test` in problem matcher |
... and also add a `#guard_msgs` in `AssertImported` test, so that `lake test` properly fails.
[Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/CI.3A.20noisy.20.22test.20mathlib.22/near/483126955)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
CI
|
9/20 |
.github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,MathlibTest/AssertImported.lean |
5 |
2 |
['bryangingechen', 'github-actions'] |
nobody |
360-128 11 months ago |
460-40799 460 days ago |
21-82868 21 days |
| 15774 |
kkytola author:kkytola |
feat: Topology on `ENat` |
This PR may contain some results that are not in the PR that adds a toppology on `ENat`.
---
The immediate motivation is to be able to make the right continuity statement of the extended floor function on `ENNReal`, when this floor function is made `ENat`valued as suggested in the PR review of #15269.
The API here is modelled on the early parts of [the corresponding ENNReal file](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Instances/ENNReal.html#top), although much of this case is more trivial.
- [x] depends on: #15380
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-topology
t-order
|
161/9 |
Mathlib/Data/ENat/Basic.lean,Mathlib/Topology/Instances/ENat.lean |
2 |
4 |
['YaelDillies', 'github-actions', 'leanprover-community-mathlib4-bot'] |
nobody |
355-44060 11 months ago |
580-73603 580 days ago |
0-6819 1 hour |
| 16810 |
urkud author:urkud |
feat: define `(a : ENat) ^ (b : ENat)` |
The definition agrees with `Cardinal.toENat`, i.e., `#(α → β) = #β ^ #α`,
where `#` is the not-yet-defined `ENat.card α = Cardinal.toENat (Cardinal.mk α)`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-set-theory
t-data
|
51/0 |
Mathlib.lean,Mathlib/Data/ENat/Pow.lean |
2 |
1 |
['github-actions'] |
nobody |
354-23253 11 months ago |
unknown |
0-0 0 seconds |
| 16009 |
Command-Master author:Command-Master |
acyclic graph |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-combinatorics
|
232/0 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean |
1 |
1 |
['github-actions'] |
nobody |
353-78609 11 months ago |
unknown |
0-0 0 seconds |
| 20222 |
eric-wieser author:eric-wieser |
feat: generalize lemmas about derivatives |
Rather than creating a huge diff by shuffling things around, this generalizes everything in-place and swaps between `section`s for topological and normed vector spaces.
The rationale for this approach is that:
* we may further generalize the results of this file, and this avoids us jumbling up the order multiple times unnecessarily.
* this greatly reduces the chance of merge conflicts
---
- [ ] depends on: #21065
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-analysis
|
554/50 |
Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,MathlibTest/Recall.lean |
3 |
8 |
['adomani', 'eric-wieser', 'github-actions', 'leanprover-bot', 'mathlib4-dependent-issues-bot'] |
nobody |
351-14328 11 months ago |
413-46402 413 days ago |
7-31913 7 days |
| 21018 |
markimunro author:markimunro |
feat(Data/Matrix): add file with key definitions and theorems about elementary row operations |
Prove that each elementary row operation is equivalent to a multiplication by an elementary matrix, has another row operation which inverts it, and that each elementary matrix has a left inverse.
This is a very large PR and I understand it will take time. This is my first one and will likely have issues but I will be ready to answer questions/fix them as soon as possible.
Co-authored-by: Christopher Lynch
---
[](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 |
350-22395 11 months ago |
375-51351 375 days ago |
23-22681 23 days |
| 23514 |
eric-wieser author:eric-wieser |
refactor: smooth over Lattice/LinearOrder inheritance |
This fixes the forgetful inheritance in `CompleteLinearOrder` and `ConditionallyCompleteLinearOrder`, which previously did not carry `compare` fields. (edit: moved to #23515)
The following is the inheritance diagram before, where the dotted lines are manual instances. Note that every lattice typeclass that extends `LinearOrder` has to implement another dotted line edge, and remember to copy all the necessary data fields.
```mermaid
graph TD
LinearOrder --> Min,Max;
LinearOrder --> PartialOrder;
Lattice --> PartialOrder;
CompleteLinearOrder --> Lattice;
ConditionallyCompleteLinearOrder --> Lattice;
LinearOrder-.-> Lattice;
CompleteLinearOrder -.-> LinearOrder;
ConditionallyCompleteLinearOrder -.-> LinearOrder;
```
This change introduces two new auxiliary typeclasses, to encapsulate these troublesome edges. `LinearOrderedLattice` can be thought of as `LinearOrder`, but with `sup`/`inf` instead of `min`/`max`. This is crucial, because it ensures the duplicate fields are merged in `extends CompleteLattice X, LinearOrderedLattice X`, which would not be the case for `extends CompleteLattice X, LinearOrder X`. The result is:
```mermaid
graph TD
LinearOrder --> Min,Max;
LinearOrder --> LinearOrderBase;
LinearOrderBase --> PartialOrder;
Lattice --> PartialOrder;
LinearOrderedLattice -.-> LinearOrder;
LinearOrderedLattice --> LinearOrderBase;
LinearOrderedLattice --> Lattice;
CompleteLinearOrder --> LinearOrderedLattice;
ConditionallyCompleteLinearOrder --> LinearOrderedLattice;
```
---
- [ ] depends on: #23515
- [ ]
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
85/66 |
Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Order/Basic.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/Defs/LinearOrder.lean,Mathlib/Order/Lattice.lean |
7 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
349-48225 11 months ago |
350-52382 350 days ago |
0-949 15 minutes |
| 20746 |
JLimperg author:JLimperg |
Aesop forward branch test |
---
This is not a real PR; I just want to benchmark this Aesop branch.
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
14/6 |
.github/workflows/build.yml,Mathlib/Data/Nat/Prime/Defs.lean,lake-manifest.json,lakefile.lean,scripts/bench/fake-root/lib/lean/libleanshared.so,scripts/bench/run |
6 |
11 |
['JLimperg', 'Kha', 'github-actions', 'leanprover-bot'] |
nobody |
349-5631 11 months ago |
unknown |
0-0 0 seconds |
| 22810 |
pechersky author:pechersky |
feat(Counterexamples): metric space not induced by norm |
Because the distance is not homogeneous
---
[](https://gitpod.io/from-referrer/)
- [x] depends on: #22845 |
merge-conflict
WIP
t-topology
t-analysis
|
202/1 |
Counterexamples.lean,Counterexamples/NotBoundedSMulMetricSpace.lean,Mathlib.lean,Mathlib/Analysis/Normed/PiNat.lean,Mathlib/Topology/Algebra/Module/LocallyConvex.lean,Mathlib/Topology/MetricSpace/Polish.lean |
6 |
21 |
['eric-wieser', 'github-actions', 'loefflerd', 'mathlib4-dependent-issues-bot', 'pechersky'] |
nobody |
348-84687 11 months ago |
364-31778 364 days ago |
0-83153 23 hours |
| 13124 |
astrainfinita author:astrainfinita |
chore: remove `CovariantClass` and `ContravariantClass` |
Lean cannot handle `CovariantClass` and `ContravariantClass` correctly
- TC slowness
- [Zulip](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/TC.20slowness)
- https://github.com/leanprover-community/mathlib4/issues/6646#issuecomment-1691792488
- It may also have made #6326 fail.
- Needs a weird hack to find instance: #9252
---
- [x] depends on: #13154
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
602/486 |
Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Subalgebra/Pointwise.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Basic.lean,Mathlib/Algebra/Group/Subgroup/Pointwise.lean,Mathlib/Algebra/Group/Submonoid/Pointwise.lean,Mathlib/Algebra/Group/UniqueProds/Basic.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/Order/AddTorsor.lean,Mathlib/Algebra/Order/Group/Action.lean,Mathlib/Algebra/Order/Group/DenselyOrdered.lean,Mathlib/Algebra/Order/Group/Units.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled.lean,Mathlib/Algebra/Order/GroupWithZero/WithZero.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/OrderDual.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Algebra/Ring/Subring/Pointwise.lean,Mathlib/Algebra/Ring/Subsemiring/Pointwise.lean,Mathlib/Analysis/SumOverResidueClass.lean,Mathlib/Data/DFinsupp/Lex.lean,Mathlib/Data/Finsupp/Lex.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/Order/Filter/IsBounded.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Probability/Kernel/Defs.lean,Mathlib/RingTheory/Ideal/Pointwise.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/Topology/Algebra/Order/LiminfLimsup.lean |
37 |
6 |
['MichaelStollBayreuth', 'astrainfinita', 'github-actions', 'leanprover-bot', 'mathlib4-dependent-issues-bot'] |
nobody |
348-26264 11 months ago |
unknown |
0-0 0 seconds |
| 15212 |
victorliu5296 author:victorliu5296 |
feat: Add fundamental theorem of calculus-2 for Banach spaces |
add the Mean Value Theorem for Banach spaces to the library and include reference for the theorem statement
This theorem states that if `f : X → Y` is differentiable along the line segment from `a` to `b`, then the change in `f` equals the integral of its derivative along this path. This extends the mean value theorem to Banach spaces. This can be used for the eventual proof of the Newton-Kantorovich theorem with 1 constant contained inside the added reference.
Here is the discussion on Zulipchat: https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Contributing.20FTC-2.20for.20Banach.20spaces |
t-measure-probability
new-contributor
merge-conflict
awaiting-author
t-analysis
|
60/1 |
Mathlib/MeasureTheory/Integral/FundThmCalculus.lean |
1 |
3 |
['github-actions', 'hrmacbeth', 'victorliu5296'] |
nobody |
345-17384 11 months ago |
538-81155 538 days ago |
51-85104 51 days |
| 22888 |
plp127 author:plp127 |
perf: replace `Lean.Expr.swapBVars` with a better? implementation |
Replaces `Lean.Expr.swapBVars` with a version that traverses the expression.
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-meta
|
14/12 |
Mathlib/Tactic/FunProp/ToBatteries.lean |
1 |
23 |
['eric-wieser', 'github-actions', 'joneugster', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'plp127'] |
eric-wieser and joneugster assignee:eric-wieser assignee:joneugster |
344-10429 11 months ago |
364-60269 364 days ago |
4-80306 4 days |
| 15943 |
urkud author:urkud |
feat: add `ProdQuotientMapSpace` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-topology
|
731/11 |
Mathlib.lean,Mathlib/Topology/Basic.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Maps/ProdQuotient.lean |
4 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
343-35756 11 months ago |
unknown |
0-0 0 seconds |
| 22579 |
kvanvels author:kvanvels |
doc(Topology/Defs/Induced): fix comments on three functions related to RestrictGenTopology |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-topology
documentation
awaiting-author
|
10/9 |
Mathlib/Topology/Defs/Induced.lean,Mathlib/Topology/RestrictGen.lean |
2 |
4 |
['github-actions', 'kvanvels', 'leanprover-community-bot-assistant', 'urkud'] |
nobody |
342-24287 11 months ago |
365-28664 365 days ago |
12-18667 12 days |
| 19771 |
robertylewis author:robertylewis |
perf: qqify two functions in linarith |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-meta
|
17/24 |
Mathlib/Tactic/Linarith/Frontend.lean,Mathlib/Tactic/Linarith/Verification.lean |
2 |
5 |
['github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-bot-assistant', 'robertylewis'] |
nobody |
342-3793 11 months ago |
unknown |
0-0 0 seconds |
| 22308 |
plp127 author:plp127 |
feat (Analysis/Convex): Generalize `Convex` lemmas to `StarConvex` |
This PR generalizes many lemmas assuming `Convex 𝕜 s` to assume `StarConvex 𝕜 0 s`.
---
- [x] depends on: #22421
[](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 |
342-3304 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-85972 11 months ago |
341-85973 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-85970 11 months ago |
341-85972 341 days ago |
36-69400 36 days |
| 22319 |
sinhp author:sinhp |
feat(CategoryTheory): Locally Cartesian Closed Categories (Sections Right Adjoint) |
we define the `Over.sections` functor in the file `CategoryTheory.Comma.Over.Sections` and prove that it is a right adjoint to the `Over.star`, thereby solving an existing TODO in `Over.pullback` file.
The `sections` functor is used to define the right adjoint to the pullback functor `Over.pullback` in the development of LCCCs. Moreover, the rest of added lemmas and theorems to `CategoryTheory.Comma.Over.Pullback` are crucial for the development of LCCCs in the next PR.
---
- [ ] depends on: #21525
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-category-theory
large-import
|
547/24 |
Mathlib.lean,Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/Comma/Over/Pullback.lean,Mathlib/CategoryTheory/Comma/Over/Sections.lean,Mathlib/CategoryTheory/Galois/Examples.lean |
5 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
341-85443 11 months ago |
384-3078 384 days ago |
0-2084 34 minutes |
| 22321 |
sinhp author:sinhp |
feat(CategoryTheory): Locally Cartesian Closed Categories (Definition) |
This PR defines locally cartesian closed categories in terms of existence of the pushforward functors (right adjoint to the pullback functor) for all morphisms. We develop basic API and prove the following:
1. Existence of the pushforward functors is equivalent to cartesian closed slices.
2. Any locally cartesian closed category with a terminal object is cartesian closed.
3. The slices of a locally cartesian closed category are locally cartesian closed.
Some of the content is based on the project of formalization of polynomial functors at the Trimester "Prospect of Formal Mathematics" at the Hausdorff Institute (HIM) in Bonn. https://github.com/sinhp/Poly
I found this implementation of locally cartesian closed categories amenable to polynomial functors formalization.
Co-authored-by: Emily Riehl
---
- [ ] depends on: #21525
- [ ] depends on: #22319
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-category-theory
large-import
|
812/24 |
Mathlib.lean,Mathlib/CategoryTheory/Comma/Over/Basic.lean,Mathlib/CategoryTheory/Comma/Over/Pullback.lean,Mathlib/CategoryTheory/Comma/Over/Sections.lean,Mathlib/CategoryTheory/Galois/Examples.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/Basic.lean |
6 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
341-85443 11 months ago |
384-1819 384 days ago |
0-336 5 minutes |
| 13653 |
adomani author:adomani |
feat: the unusedSetOptionIn linter |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-linter
large-import
|
199/0 |
Mathlib.lean,Mathlib/Algebra/Homology/HomotopyCategory/Triangulated.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/UnnecessarySetOptionIn.lean,MathlibTest/UnnecessarySetOptionIn.lean |
6 |
15 |
['adomani', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant'] |
nobody |
341-30408 11 months ago |
unknown |
0-0 0 seconds |
| 19425 |
hrmacbeth author:hrmacbeth |
perf: gcongr forward-reasoning adjustment |
This PR changes the "forward-reasoning" component of `gcongr`, rendering it more efficient, particularly in problems with a large number of variables/hypotheses in the context.
Previously `gcongr` attempted to match *every* `LocalDecl` against *every* node in the parse tree using *each* of the five implemented `@[gcongr_forward]` mini-tactics: matching directly, matching after applying `symm`, matching after applying `le_of_lt`, etc etc.
The new algorithm filters out the non-Prop `LocalDecl`s, and also adjusts the `@[gcongr_forward]` extensions so that, rather than re-apply the relevant lemmas (`symm`, `le_of_lt`, etc) at every node in the parse tree, the lemmas are applied in advance to the `LocalDecl`s and the result (if successful) stored.
The performance effect on mathlib as a whole is miniscule, but it speeds up the profiler's count of "tactic execution of Mathlib.Tactic.GCongr" in the newly-added test from 257 ms to 47 ms, and has a similar effect on real-life examples in an analysis project of mine.
Co-authored-by: Mario Carneiro
---
[](https://gitpod.io/from-referrer/)
(Note that Mario provided the ideas but not the code, so please review with appropriate diligence!) |
merge-conflict
awaiting-author
|
130/59 |
Mathlib/Order/Lattice.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/GCongr/ForwardAttr.lean,MathlibTest/GCongr/inequalities.lean |
4 |
17 |
['Vierkantor', 'github-actions', 'hrmacbeth', 'leanprover-bot', 'leanprover-community-bot-assistant'] |
Vierkantor assignee:Vierkantor |
341-12104 11 months ago |
474-521 474 days ago |
1-41769 1 day |
| 20873 |
vbeffara author:vbeffara |
feat(Topology/Covering): path lifting and homotopy lifting |
This proves the existence and uniqueness of path and homotopy lifts through covering maps.
---
I tried to separate as much of the proof as possible into separate PRs (which are already in Mathlib now), but the proof here relies on a monolithic construction of an explicit lift along a well-chosen subdivision, in `partial_lift`, with associated definitions. Only one standalone lean file added.
An older WIP PR #10084 by Junyan Xu @alreadydone proves similar results using a very similar construction for path lifting, with a different argument to obtain continuity for homotopy lifting.
[](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 |
341-2300 11 months ago |
415-80900 415 days ago |
5-6208 5 days |
| 22817 |
peabrainiac author:peabrainiac |
feat(CategoryTheory/Sites): local sites |
Defines local sites and shows that sheaves of types on them form a local topos, in that the global sections functor `Sheaf.Γ` has a right adjoint `Sheaf.codisc` that is fully faithful.
---
- [x] depends on: #22816
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-category-theory
|
263/0 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/FunctorCategory/Shapes/Products.lean,Mathlib/CategoryTheory/Limits/Types.lean,Mathlib/CategoryTheory/Sites/GlobalSections.lean,Mathlib/CategoryTheory/Sites/LocalSite.lean,Mathlib/CategoryTheory/Sites/Sheaf.lean |
6 |
4 |
['github-actions', 'joelriou', 'mathlib4-dependent-issues-bot'] |
nobody |
340-22309 11 months ago |
371-23808 371 days ago |
0-568 9 minutes |
| 24040 |
astrainfinita author:astrainfinita |
refactor: unbundle algebra from `(NonUnital){Seminormed, Normed}(Comm)Ring` |
---
- [ ] depends on: #23966
[](https://gitpod.io/from-referrer/)
|
t-algebra
blocked-by-other-PR
merge-conflict
slow-typeclass-synthesis
t-analysis
label:t-algebra$ |
3775/3674 |
Archive/Imo/Imo1998Q2.lean,Counterexamples/LinearOrderWithPosMulPosEqZero.lean,Mathlib/Algebra/Algebra/RestrictScalars.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Algebra/Order/Field/Canonical.lean,Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Nonneg/Field.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/CPolynomial.lean,Mathlib/Analysis/Analytic/CPolynomialDef.lean,Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Analytic/IsolatedZeros.lean,Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Analytic/Linear.lean,Mathlib/Analysis/Analytic/OfScalars.lean,Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Analytic/Polynomial.lean,Mathlib/Analysis/Analytic/RadiusLiminf.lean,Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Analytic/Within.lean,Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/Asymptotics/Defs.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Asymptotics/TVS.lean,Mathlib/Analysis/Asymptotics/Theta.lean,Mathlib/Analysis/BoundedVariation.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/BoxIntegral/Integrability.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Measure.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/Classes.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Basic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Instances.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Integral.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Isometric.lean,Mathlib/Analysis/CStarAlgebra/ContinuousLinearMap.lean,Mathlib/Analysis/CStarAlgebra/ContinuousMap.lean,Mathlib/Analysis/CStarAlgebra/Exponential.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/CStarAlgebra/Module/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Defs.lean,Mathlib/Analysis/CStarAlgebra/Multiplier.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/CStarAlgebra/Unitization.lean,Mathlib/Analysis/CStarAlgebra/lpSpace.lean,Mathlib/Analysis/Calculus/AddTorsor/AffineMap.lean,Mathlib/Analysis/Calculus/AddTorsor/Coord.lean,Mathlib/Analysis/Calculus/BumpFunction/Basic.lean,Mathlib/Analysis/Calculus/BumpFunction/Convolution.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/BumpFunction/InnerProduct.lean,Mathlib/Analysis/Calculus/BumpFunction/Normed.lean,Mathlib/Analysis/Calculus/Conformal/InnerProduct.lean,Mathlib/Analysis/Calculus/Conformal/NormedSpace.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/ContDiff/CPolynomial.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Calculus/ContDiff/FiniteDimension.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/ContDiff/RCLike.lean,Mathlib/Analysis/Calculus/ContDiff/WithLp.lean,Mathlib/Analysis/Calculus/DSlope.lean,Mathlib/Analysis/Calculus/Deriv/Abs.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/AffineMap.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Comp.lean,Mathlib/Analysis/Calculus/Deriv/Inv.lean,Mathlib/Analysis/Calculus/Deriv/Inverse.lean,Mathlib/Analysis/Calculus/Deriv/Linear.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Calculus/Deriv/Prod.lean,Mathlib/Analysis/Calculus/Deriv/Shift.lean,Mathlib/Analysis/Calculus/Deriv/Slope.lean,Mathlib/Analysis/Calculus/Deriv/Star.lean,Mathlib/Analysis/Calculus/Deriv/Support.lean,Mathlib/Analysis/Calculus/Deriv/ZPow.lean,Mathlib/Analysis/Calculus/DiffContOnCl.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Bilinear.lean |
630 |
5 |
['astrainfinita', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
336-79403 11 months ago |
unknown |
0-0 0 seconds |
| 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 |
336-24536 11 months ago |
336-24538 336 days ago |
55-36935 55 days |
| 23509 |
eric-wieser author:eric-wieser |
refactor: Make ENNReal an abbrev |
The `Coe` instance becomes `CoeTC` to match what we do for `WithTop` (such that the priority kicks in)
Probably we could have both copies and things would be ok.
---
[](https://gitpod.io/from-referrer/)
This includes part of #23750
|
merge-conflict
t-data
|
22/66 |
Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/ENNReal/BigOperators.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean,Mathlib/MeasureTheory/Measure/Sub.lean,Mathlib/MeasureTheory/Measure/TightNormed.lean,Mathlib/Topology/MetricSpace/PartitionOfUnity.lean |
7 |
22 |
['eric-wieser', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'leanprover-community-mathlib4-bot', 'mattrobball', 'urkud'] |
nobody |
336-8189 11 months ago |
337-59988 337 days ago |
5-26623 5 days |
| 24060 |
eric-wieser author:eric-wieser |
chore(MeasureTheory): use `0` instead of `const _ 0` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-measure-probability
|
30/20 |
Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Function/SimpleFuncDense.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Integral/Bochner/VitaliCaratheodory.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Countable.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean,Mathlib/Probability/StrongLaw.lean |
7 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
335-84284 11 months ago |
unknown |
0-0 0 seconds |
| 24058 |
astrainfinita author:astrainfinita |
refactor: unbundle algebra from `*NormedField` |
---
- [ ] depends on: #24040
[](https://gitpod.io/from-referrer/)
|
t-algebra
blocked-by-other-PR
merge-conflict
slow-typeclass-synthesis
t-analysis
label:t-algebra$ |
4602/4346 |
Archive/Hairer.lean,Archive/Imo/Imo1998Q2.lean,Counterexamples/LinearOrderWithPosMulPosEqZero.lean,Mathlib/Algebra/Algebra/RestrictScalars.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Algebra/Order/Field/Canonical.lean,Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Nonneg/Field.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/CPolynomial.lean,Mathlib/Analysis/Analytic/CPolynomialDef.lean,Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Analytic/IsolatedZeros.lean,Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Analytic/Linear.lean,Mathlib/Analysis/Analytic/OfScalars.lean,Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Analytic/Polynomial.lean,Mathlib/Analysis/Analytic/RadiusLiminf.lean,Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Analytic/Within.lean,Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/Asymptotics/Defs.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Asymptotics/SuperpolynomialDecay.lean,Mathlib/Analysis/Asymptotics/TVS.lean,Mathlib/Analysis/Asymptotics/Theta.lean,Mathlib/Analysis/BoundedVariation.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/BoxIntegral/Integrability.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Measure.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/Classes.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Basic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Instances.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Integral.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Isometric.lean,Mathlib/Analysis/CStarAlgebra/ContinuousLinearMap.lean,Mathlib/Analysis/CStarAlgebra/ContinuousMap.lean,Mathlib/Analysis/CStarAlgebra/Exponential.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/CStarAlgebra/Module/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Defs.lean,Mathlib/Analysis/CStarAlgebra/Multiplier.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/CStarAlgebra/Unitization.lean,Mathlib/Analysis/CStarAlgebra/lpSpace.lean,Mathlib/Analysis/Calculus/AddTorsor/AffineMap.lean,Mathlib/Analysis/Calculus/AddTorsor/Coord.lean,Mathlib/Analysis/Calculus/BumpFunction/Basic.lean,Mathlib/Analysis/Calculus/BumpFunction/Convolution.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/BumpFunction/InnerProduct.lean,Mathlib/Analysis/Calculus/BumpFunction/Normed.lean,Mathlib/Analysis/Calculus/Conformal/InnerProduct.lean,Mathlib/Analysis/Calculus/Conformal/NormedSpace.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/ContDiff/CPolynomial.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Calculus/ContDiff/FiniteDimension.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/ContDiff/RCLike.lean,Mathlib/Analysis/Calculus/ContDiff/WithLp.lean,Mathlib/Analysis/Calculus/DSlope.lean,Mathlib/Analysis/Calculus/Deriv/Abs.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/AffineMap.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Comp.lean,Mathlib/Analysis/Calculus/Deriv/Inv.lean,Mathlib/Analysis/Calculus/Deriv/Inverse.lean,Mathlib/Analysis/Calculus/Deriv/Linear.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Calculus/Deriv/Pi.lean,Mathlib/Analysis/Calculus/Deriv/Polynomial.lean,Mathlib/Analysis/Calculus/Deriv/Pow.lean,Mathlib/Analysis/Calculus/Deriv/Prod.lean,Mathlib/Analysis/Calculus/Deriv/Shift.lean,Mathlib/Analysis/Calculus/Deriv/Slope.lean,Mathlib/Analysis/Calculus/Deriv/Star.lean,Mathlib/Analysis/Calculus/Deriv/Support.lean,Mathlib/Analysis/Calculus/Deriv/ZPow.lean |
665 |
7 |
['astrainfinita', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
335-74194 11 months ago |
unknown |
0-0 0 seconds |
| 11455 |
adomani author:adomani |
fix: unsqueeze simp, re Yaël's comments on #11259 |
This PR reverts/simplifies some of the "squeeze `simp`" changes in #11259.
See #11259 for context.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
|
3/6 |
Mathlib/Algebra/Group/Conj.lean,Mathlib/Data/Seq/WSeq.lean |
2 |
8 |
['Ruben-VandeVelde', 'YaelDillies', 'grunweg', 'loefflerd', 'robertylewis', 'urkud'] |
nobody |
335-56189 11 months ago |
633-86096 633 days ago |
93-60645 93 days |
| 7325 |
eric-wieser author:eric-wieser |
chore: use preimageIso instead of defeq abuse for InducedCategory |
This makes a few things slightly more verbose, but the type casts are now explicit in those places.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-category-theory
awaiting-CI
|
22/21 |
Mathlib/CategoryTheory/EssentialImage.lean,Mathlib/CategoryTheory/Monoidal/Braided.lean,Mathlib/CategoryTheory/Monoidal/Subcategory.lean |
3 |
1 |
['grunweg'] |
nobody |
335-56068 11 months ago |
unknown |
0-0 0 seconds |
| 7874 |
astrainfinita author:astrainfinita |
chore: make `IsScalarTower A A B` and `IsScalarTower A B B` higher priority |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
slow-typeclass-synthesis
t-algebra
awaiting-CI
label:t-algebra$ |
10/9 |
Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Data/Rat/Cast/Defs.lean,Mathlib/GroupTheory/GroupAction/Ring.lean |
4 |
3 |
['astrainfinita', 'grunweg', 'leanprover-bot'] |
nobody |
335-56043 11 months ago |
unknown |
0-0 0 seconds |
| 13038 |
adomani author:adomani |
feat: Mathlib weekly reports |
This PR introduces a weekly cron job that computes a "global" report on the evolution of Mathlib in the previous week.
It consists of
* a CI workflow with a cron job that runs at minight on Sunday (`.github/workflows/mathlib_stats.yaml`);
* a Lean file extracting a categorized list of "all" the declarations in Mathlib (`scripts/count_decls.lean`);
* a bash file computing Git-diff-related information and collating the data from the Lean file (`scripts/mathlib_stats.sh`);
* a convenience CI workflow that is triggered on adding the `test-ci` label and results in posting on the PR and on Zulip the report (`.github/workflows/mathlib_stats_label.yaml`).
The second CI workflow is intended to be removed just before/right after the PR is ready to merge.
[Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/113488-general)
[Thread for the reports](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Mathlib.20weekly.20change.20report)
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
CI
t-meta
|
338/0 |
.github/workflows/mathlib_stats.yaml,.github/workflows/mathlib_stats_label.yaml,scripts/count_decls.lean,scripts/mathlib_stats.sh |
4 |
10 |
['adomani', 'github-actions', 'grunweg', 'kim-em', 'kmill'] |
nobody |
335-56001 11 months ago |
609-73881 609 days ago |
57-4374 57 days |
| 5952 |
eric-wieser author:eric-wieser |
feat: add Qq wrappers for ToExpr |
---
- [ ] depends on: #6699 (to appease the linter)
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-CI
t-meta
|
247/150 |
Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Fin/VecNotation.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/Tactic/DeriveToExpr.lean,Mathlib/Tactic/FBinop.lean,Mathlib/Tactic/ToExpr.lean,Mathlib/Util/Qq.lean,test/DeriveToExpr.lean,test/vec_notation.lean |
9 |
7 |
['eric-wieser', 'gebner', 'grunweg', 'leanprover-community-mathlib4-bot'] |
nobody |
335-55869 11 months ago |
942-12732 942 days ago |
29-67421 29 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-55829 11 months ago |
584-7759 584 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-55605 11 months ago |
540-8752 540 days ago |
14-58900 14 days |
| 24106 |
astrainfinita author:astrainfinita |
refactor: unbundle algebra from `*CStarAlgebra` |
---
[](https://gitpod.io/from-referrer/)
- [ ] depends on: #24058
|
t-algebra
blocked-by-other-PR
merge-conflict
slow-typeclass-synthesis
t-analysis
label:t-algebra$ |
4702/4459 |
Archive/Hairer.lean,Archive/Imo/Imo1998Q2.lean,Counterexamples/LinearOrderWithPosMulPosEqZero.lean,Mathlib/Algebra/Algebra/RestrictScalars.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Algebra/Order/Field/Canonical.lean,Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Nonneg/Field.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/CPolynomial.lean,Mathlib/Analysis/Analytic/CPolynomialDef.lean,Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Analytic/IsolatedZeros.lean,Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Analytic/Linear.lean,Mathlib/Analysis/Analytic/OfScalars.lean,Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Analytic/Polynomial.lean,Mathlib/Analysis/Analytic/RadiusLiminf.lean,Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Analytic/Within.lean,Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/Asymptotics/Defs.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Asymptotics/SuperpolynomialDecay.lean,Mathlib/Analysis/Asymptotics/TVS.lean,Mathlib/Analysis/Asymptotics/Theta.lean,Mathlib/Analysis/BoundedVariation.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/BoxIntegral/Integrability.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Measure.lean,Mathlib/Analysis/CStarAlgebra/ApproximateUnit.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/Classes.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Basic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Instances.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Integral.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Isometric.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/CStarAlgebra/ContinuousLinearMap.lean,Mathlib/Analysis/CStarAlgebra/ContinuousMap.lean,Mathlib/Analysis/CStarAlgebra/Exponential.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/Analysis/CStarAlgebra/Hom.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/CStarAlgebra/Module/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Defs.lean,Mathlib/Analysis/CStarAlgebra/Multiplier.lean,Mathlib/Analysis/CStarAlgebra/PositiveLinearMap.lean,Mathlib/Analysis/CStarAlgebra/SpecialFunctions/PosPart.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/CStarAlgebra/Unitization.lean,Mathlib/Analysis/CStarAlgebra/lpSpace.lean,Mathlib/Analysis/Calculus/AddTorsor/AffineMap.lean,Mathlib/Analysis/Calculus/AddTorsor/Coord.lean,Mathlib/Analysis/Calculus/BumpFunction/Basic.lean,Mathlib/Analysis/Calculus/BumpFunction/Convolution.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/BumpFunction/InnerProduct.lean,Mathlib/Analysis/Calculus/BumpFunction/Normed.lean,Mathlib/Analysis/Calculus/Conformal/InnerProduct.lean,Mathlib/Analysis/Calculus/Conformal/NormedSpace.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/ContDiff/CPolynomial.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Calculus/ContDiff/FiniteDimension.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/ContDiff/RCLike.lean,Mathlib/Analysis/Calculus/ContDiff/WithLp.lean,Mathlib/Analysis/Calculus/DSlope.lean,Mathlib/Analysis/Calculus/Deriv/Abs.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/AffineMap.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Comp.lean,Mathlib/Analysis/Calculus/Deriv/Inv.lean,Mathlib/Analysis/Calculus/Deriv/Inverse.lean,Mathlib/Analysis/Calculus/Deriv/Linear.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Calculus/Deriv/Pi.lean,Mathlib/Analysis/Calculus/Deriv/Polynomial.lean,Mathlib/Analysis/Calculus/Deriv/Pow.lean,Mathlib/Analysis/Calculus/Deriv/Prod.lean |
670 |
5 |
['astrainfinita', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
335-27335 11 months ago |
unknown |
0-0 0 seconds |
| 13780 |
adomani author:adomani |
deprecate injective |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
31/9 |
.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,Mathlib/Init/Function.lean,lake-manifest.json,lakefile.lean |
7 |
2 |
['github-actions', 'grunweg'] |
nobody |
335-23119 11 months ago |
unknown |
0-0 0 seconds |
| 19467 |
quangvdao author:quangvdao |
feat(MvPolynomial/Equiv): Add `MvPolynomial.finSuccEquivNth` |
This PR adds `MvPolynomial.finSuccEquivNth`, which is the algebra isomorphism between `MvPolynomial (Fin (n + 1)) R` and `Polynomial (MvPolynomial (Fin n) R)` by identifying the `p`-th variable as the indeterminate.
This generalizes `MvPolynomial.finSuccEquiv` which is only for the `0`-th variable. The supporting theorems for the `Nth` version are identical to the current version, with the `Nth` version deduced from the former.
These changes require new definitions in `Finsupp/Fin`, which is a separate PR.
Co-authored-by: Yaël Dillies ---
- [ ] depends on: #19315
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
blocked-by-other-PR
label:t-algebra$ |
541/163 |
Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finsupp.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Fin/Tuple/Basic.lean,Mathlib/Data/Finsupp/Fin.lean,scripts/nolints_prime_decls.txt |
7 |
9 |
['acmepjz', 'github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'quangvdao'] |
nobody |
333-59945 10 months ago |
476-79911 476 days ago |
0-790 13 minutes |
| 20313 |
thefundamentaltheor3m author:thefundamentaltheor3m |
feat(Data/Complex/Exponential): prove some useful results about the complex exponential. |
This PR proves two basic results about the complex exponential:
* `abs_exp_mul_I (x : ℂ) : abs (Complex.exp (I * x)) = Real.exp (-x.im)`
* `one_sub_rexp_re_le_abs_one_sub_cexp (x : ℂ) : 1 - Real.exp x.re ≤ Complex.abs (1 - Complex.exp x)`
Both results were proved as part of the sphere packing project. There's a chance they're too specific for mathlib, but I thought they were worth PRing anyway. Would it also be a good idea to tag `abs_exp_mul_I` with `simp`? Feedback/suggestions welcome.
Note: `one_sub_rexp_re_le_abs_one_sub_cexp` was proved by Bhavik Mehta @b-mehta
---
[](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-59898 10 months ago |
416-70366 416 days ago |
8-45680 8 days |
| 22698 |
Kiolt author:Kiolt |
feat: notation for whisker(Left/Right)Iso |
From Toric
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-category-theory
toric
|
175/113 |
Mathlib/Algebra/Homology/Monoidal.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Bicategory/Basic.lean,Mathlib/CategoryTheory/Bicategory/Coherence.lean,Mathlib/CategoryTheory/Bicategory/Extension.lean,Mathlib/CategoryTheory/Bicategory/Functor/Pseudofunctor.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Strong.lean,Mathlib/CategoryTheory/Bicategory/SingleObj.lean,Mathlib/CategoryTheory/Closed/Functor.lean,Mathlib/CategoryTheory/Closed/Ideal.lean,Mathlib/CategoryTheory/Enriched/FunctorCategory.lean,Mathlib/CategoryTheory/GradedObject/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Braided/Reflection.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/CategoryTheory/Monoidal/Free/Coherence.lean,Mathlib/CategoryTheory/Monoidal/Preadditive.lean,Mathlib/CategoryTheory/Monoidal/Transport.lean,Mathlib/Tactic/CategoryTheory/BicategoricalComp.lean,Mathlib/Tactic/CategoryTheory/Bicategory/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Bicategory/Normalize.lean,Mathlib/Tactic/CategoryTheory/Bicategory/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Datatypes.lean,Mathlib/Tactic/CategoryTheory/Monoidal/Normalize.lean,Mathlib/Tactic/CategoryTheory/Monoidal/PureCoherence.lean,Mathlib/Tactic/CategoryTheory/MonoidalComp.lean |
27 |
21 |
['Kiolt', 'YaelDillies', 'b-mehta', 'github-actions', 'leanprover-bot'] |
nobody |
333-59727 10 months ago |
369-78994 369 days ago |
3-29389 3 days |
| 19613 |
madvorak author:madvorak |
refactor(Combinatorics/Optimization/ValuedCSP): make only valid `FractionalOperation` possible |
Originally `FractionalOperation` was any multiset (possible empty).
Then `FractionalOperation.IsValid` said it was nonempty.
Instead, I would like to make it nonempty by definition.
As a result, empty/invalid fractional operation couldn't be declared at all.
---
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
14/17 |
Mathlib/Combinatorics/Optimization/ValuedCSP.lean |
1 |
1 |
['github-actions'] |
nobody |
333-59445 10 months ago |
462-80586 462 days ago |
9-74124 9 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-56030 10 months ago |
413-47003 413 days ago |
13-56244 13 days |
| 19117 |
eric-wieser author:eric-wieser |
feat: derivatives of matrix operations |
These are finally possible to state after #19108.
However, a lot of bundled `ContinuousLinearMap`s are missing.
---
- [x] depends on: #19108
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-analysis
|
336/22 |
Mathlib.lean,Mathlib/Analysis/Calculus/Deriv/Matrix.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Matrix.lean |
4 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
331-78408 10 months ago |
unknown |
0-0 0 seconds |
| 12605 |
astrainfinita author:astrainfinita |
chore: attribute [induction_eliminator] |
Add attribute [induction_eliminator] to
`AdjoinRoot.induction_on`
`ENat.recTopCoe`
`ENNReal.recTopCoe`
`Finset.induction`
`Magma.AssocQuotient.induction_on`
`ManyOneDegree.ind_on`
`Module.Ray.ind` (and add `Orientation.ind` for `Orientation`, an abbrev of it. I wish that we do not need to add it in the future.)
`Multiset.induction`
`MvPolynomial.induction_on`
`OnePoint.rec`
`Opposite.rec'`
`Ordinal.limitRecOn`
`PartENat.casesOn`
`Polynomial.induction_on'`
`QuotientAddGroup.induction_on'` (and add `AddCircle.induction_on` for `AddCircle`, an abbrev of it. I wish that we do not need to add it in the future.)
`QuotientGroup.induction_on'` (doesn't actually work)
`Real.Angle.induction_on`
`SimplexCategory.rec`
`Trunc.induction_on`
---
- [x] depends on: #13476
- [x] depends on: #13264
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
|
354/342 |
Mathlib/Algebra/BigOperators/Associated.lean,Mathlib/Algebra/BigOperators/Group/Finset.lean,Mathlib/Algebra/BigOperators/Group/Multiset.lean,Mathlib/Algebra/BigOperators/Ring.lean,Mathlib/Algebra/GCDMonoid/Finset.lean,Mathlib/Algebra/GCDMonoid/Multiset.lean,Mathlib/Algebra/Group/Subgroup/Finite.lean,Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/Algebra/Lie/Weights/Basic.lean,Mathlib/Algebra/Module/BigOperators.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/Derivation.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/Order/ToIntervalMod.lean,Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Algebra/Polynomial/Degree/Lemmas.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Eval.lean,Mathlib/Algebra/Polynomial/Induction.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Algebra/Polynomial/PartialFractions.lean,Mathlib/Algebra/Polynomial/Smeval.lean,Mathlib/Algebra/Tropical/BigOperators.lean,Mathlib/AlgebraicTopology/DoldKan/NCompGamma.lean,Mathlib/AlgebraicTopology/SimplexCategory.lean,Mathlib/AlgebraicTopology/SplitSimplicialObject.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Asymptotics/Asymptotics.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/Deriv/Polynomial.lean,Mathlib/Analysis/Convex/Combination.lean,Mathlib/Analysis/Convex/Exposed.lean,Mathlib/Analysis/Fourier/AddCircle.lean,Mathlib/Analysis/NormedSpace/Exponential.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/Complex/Circle.lean,Mathlib/Analysis/SpecialFunctions/Log/Base.lean,Mathlib/Analysis/SpecialFunctions/PolynomialExp.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Angle.lean,Mathlib/CategoryTheory/Filtered/Basic.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/Combinatorics/Additive/PluenneckeRuzsa.lean,Mathlib/Combinatorics/SetFamily/Compression/Down.lean,Mathlib/Combinatorics/SetFamily/FourFunctions.lean,Mathlib/Combinatorics/SetFamily/HarrisKleitman.lean,Mathlib/Computability/Reduce.lean,Mathlib/Data/DFinsupp/Basic.lean,Mathlib/Data/DFinsupp/WellFounded.lean,Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Finset/Fold.lean,Mathlib/Data/Finset/Lattice.lean,Mathlib/Data/Finset/NAry.lean,Mathlib/Data/Fintype/Sum.lean,Mathlib/Data/Multiset/Antidiagonal.lean,Mathlib/Data/Multiset/Basic.lean,Mathlib/Data/Multiset/Bind.lean,Mathlib/Data/Multiset/Fold.lean,Mathlib/Data/Multiset/Lattice.lean,Mathlib/Data/Multiset/Pi.lean,Mathlib/Data/Multiset/Powerset.lean,Mathlib/Data/Multiset/Sections.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/Data/Nat/PartENat.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Set/Pointwise/BigOperators.lean,Mathlib/FieldTheory/IntermediateField.lean,Mathlib/FieldTheory/IsAlgClosed/AlgebraicClosure.lean,Mathlib/Geometry/Manifold/Algebra/Monoid.lean,Mathlib/Geometry/RingedSpace/Basic.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/Geometry/RingedSpace/PresheafedSpace/Gluing.lean,Mathlib/GroupTheory/Coset.lean,Mathlib/GroupTheory/NoncommPiCoprod.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/LinearAlgebra/Determinant.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/LinearAlgebra/FiniteDimensional.lean,Mathlib/LinearAlgebra/LinearIndependent.lean,Mathlib/LinearAlgebra/Matrix/Determinant/Basic.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Orientation.lean,Mathlib/LinearAlgebra/Projectivization/Basic.lean,Mathlib/LinearAlgebra/Ray.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/Logic/Hydra.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Basic.lean,Mathlib/MeasureTheory/Function/L1Space.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Integral/Lebesgue.lean,Mathlib/MeasureTheory/Integral/Marginal.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean,Mathlib/MeasureTheory/Integral/SetIntegral.lean,Mathlib/MeasureTheory/Measure/AddContent.lean |
140 |
14 |
['YaelDillies', 'astrainfinita', 'eric-wieser', 'github-actions', 'leanprover-community-mathlib4-bot', 'urkud'] |
nobody |
331-73023 10 months ago |
664-18194 664 days ago |
4-46495 4 days |
| 23859 |
urkud author:urkud |
feat(Topology/../Order/Field): generalize to `Semifield` |
.. from a linear ordered field to a linear ordered semifield---
- [ ] depends on: #23857
[](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 |
329-12446 10 months ago |
342-23087 342 days ago |
0-265 4 minutes |
| 24219 |
Paul-Lez author:Paul-Lez |
feat: linear independence of the tensor product of two linearly independent families |
This is still WIP (the proofs are a little too long, and some lemmas need to be moved to other files!)
From Toric
---
[](https://gitpod.io/from-referrer/)
|
WIP
t-algebra
toric
label:t-algebra$ |
193/0 |
Mathlib/LinearAlgebra/LinearIndependent/Tprod.lean |
1 |
1 |
['github-actions'] |
nobody |
328-78278 10 months ago |
331-8783 331 days ago |
0-217 3 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-75621 10 months ago |
326-75623 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-64318 10 months ago |
326-64319 326 days ago |
2-12017 2 days |
| 8370 |
eric-wieser author:eric-wieser |
refactor(Analysis/NormedSpace/Exponential): remove the `𝕂` argument from `exp` |
This argument is still needed for almost all the lemmas, which means it can longer be found by unification.
We keep around `expSeries 𝕂 A`, as it's needed for talking about the radius of convergence over different base fields.
This is a prerequisite for #8372, as we can't merge the functions until they have the same interface.\
Zulip thread: [#mathlib4 > Real.exp @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Real.2Eexp/near/401602245)
---
[](https://gitpod.io/from-referrer/)
This is started from the mathport output on https://github.com/leanprover-community/mathlib/pull/19244 |
merge-conflict
t-analysis
awaiting-zulip
|
432/387 |
Mathlib/Analysis/CStarAlgebra/Exponential.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/Normed/Algebra/Exponential.lean,Mathlib/Analysis/Normed/Algebra/MatrixExponential.lean,Mathlib/Analysis/Normed/Algebra/QuaternionExponential.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Algebra/TrivSqZeroExt.lean,Mathlib/Analysis/NormedSpace/DualNumber.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/ExpLog.lean,Mathlib/Analysis/SpecialFunctions/Exponential.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Series.lean |
11 |
29 |
['YaelDillies', 'eric-wieser', 'girving', 'github-actions', 'j-loreaux', 'kbuzzard', 'leanprover-community-bot-assistant', 'urkud'] |
nobody |
326-45248 10 months ago |
347-57890 347 days ago |
24-46029 24 days |
| 14931 |
eric-wieser author:eric-wieser |
feat: volume of a simplex |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-euclidean-geometry
|
207/0 |
Mathlib/Geometry/Euclidean/Basic.lean,Mathlib/Geometry/Euclidean/Circumcenter.lean,Mathlib/Geometry/Euclidean/Volume.lean |
3 |
3 |
['eric-wieser', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
324-76775 10 months ago |
unknown |
0-0 0 seconds |
| 22583 |
imathwy author:imathwy |
feat: affinespace homeomorphism |
There exists a homeomorphism (a continuous bijection with a continuous inverse) between an affine subspace s of a vector space V over a field 𝕜 and its direction s.direction , given a chosen point z ∈ s .
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
64/2 |
Mathlib/Analysis/Normed/Group/AddTorsor.lean,Mathlib/LinearAlgebra/AffineSpace/ContinuousAffineEquiv.lean,Mathlib/Topology/Algebra/ConstMulAction.lean,Mathlib/Topology/Algebra/MulAction.lean |
4 |
6 |
['JovanGerb', 'eric-wieser', 'github-actions', 'grunweg'] |
nobody |
324-74493 10 months ago |
377-114 376 days ago |
0-18122 5 hours |
| 24243 |
Timeroot author:Timeroot |
feat(Analysis/Calculus/FDeriv): Fderiv on torsors |
Experiment to see how this goes for now, see [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Upgrade.20.60fderiv.60.20to.20.60AddTorsor.60)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-analysis
|
539/447 |
Mathlib/Algebra/AddTorsor/Defs.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Prod.lean,Mathlib/Analysis/Calculus/Deriv/Slope.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Bilinear.lean,Mathlib/Analysis/Calculus/FDeriv/Equiv.lean,Mathlib/Analysis/Calculus/FDeriv/Linear.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/Calculus/FDeriv/Mul.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Calculus/Gradient/Basic.lean,Mathlib/Analysis/Calculus/LineDeriv/Basic.lean,Mathlib/Analysis/Calculus/LocalExtr/Basic.lean,Mathlib/Analysis/Calculus/ParametricIntegral.lean,Mathlib/Analysis/Calculus/Rademacher.lean,Mathlib/Analysis/Calculus/TangentCone.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Complex/Periodic.lean,Mathlib/Analysis/Complex/RealDeriv.lean,Mathlib/Analysis/MellinTransform.lean,Mathlib/Analysis/Normed/Group/Uniform.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Analysis/SpecialFunctions/ExpDeriv.lean,Mathlib/Analysis/SpecialFunctions/Exponential.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/EulerSineProd.lean,Mathlib/Geometry/Manifold/IntegralCurve/Transform.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/Geometry/Manifold/MFDeriv/Basic.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean,Mathlib/NumberTheory/EulerProduct/ExpLog.lean,Mathlib/NumberTheory/Harmonic/GammaDeriv.lean,Mathlib/NumberTheory/LSeries/Nonvanishing.lean,MathlibTest/Recall.lean |
37 |
3 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
323-57631 10 months ago |
unknown |
0-0 0 seconds |
| 23593 |
erdOne author:erdOne |
feat(AlgebraicGeometry): the tilde construction is functorial |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebraic-geometry
|
95/38 |
Mathlib/AlgebraicGeometry/Modules/Sheaf.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean |
2 |
4 |
['chrisflav', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
323-5289 10 months ago |
348-8303 348 days ago |
0-71091 19 hours |
| 21065 |
eric-wieser author:eric-wieser |
feat: generalize `tangentConeAt.lim_zero` to TVS |
... and then adjust the `variable`s down the rest of the file to make use of the generality.
There are two key lemmas that this does not generalize, which would probably unlock the rest of the file:
* `subset_tangentCone_prod_left` (and `_right`)
* `zero_mem_tangentCone`
---
- [ ] depends on: #20859
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-analysis
|
55/28 |
Mathlib/Analysis/Calculus/TangentCone.lean |
1 |
16 |
['ADedecker', 'eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'urkud'] |
nobody |
322-84093 10 months ago |
390-33768 390 days ago |
23-20117 23 days |
| 22721 |
grunweg author:grunweg |
chore(MeasureTheory/Function/LpSeminorm/Basic): generalise more results to enorm classes |
Done for the Carleson project.
---
- depends on #22708
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
carleson
t-measure-probability
|
134/10 |
Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean |
1 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
321-76761 10 months ago |
373-63127 373 days ago |
0-6 6 seconds |
| 14731 |
adomani author:adomani |
feat: the repeated typeclass assumption linter |
[#mathlib4 > recyclable variables @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/recyclable.20variables/near/451167963) also [#mathlib4 > Normed modules @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Normed.20modules/near/512242167)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-linter
large-import
|
178/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/DependentTypeclass.lean,MathlibTest/DependentTypeclass.lean |
5 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mattrobball'] |
nobody |
320-82000 10 months ago |
610-80745 610 days ago |
0-109 1 minute |
| 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-47868 10 months ago |
318-47870 318 days ago |
87-49908 87 days |
| 24549 |
grunweg author:grunweg |
feat: define embedded submanifolds, attempt 1 |
Not meant to be merged (I think a different design is better); opening this so I can find this more easily.
---
- [ ] depends on: #23040
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-differential-geometry
blocked-by-other-PR
|
1445/2 |
Mathlib.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Splits.lean,Mathlib/Geometry/Manifold/Diffeomorph.lean,Mathlib/Geometry/Manifold/EmbeddedSubmanifold.lean,Mathlib/Geometry/Manifold/IsImmersionEmbedding.lean,Mathlib/Geometry/Manifold/LocalDiffeomorph.lean,Mathlib/Geometry/Manifold/MSplits.lean,Mathlib/LinearAlgebra/Prod.lean |
8 |
2 |
['leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
318-20813 10 months ago |
319-3736 319 days ago |
0-1 1 second |
| 23921 |
alreadydone author:alreadydone |
Jyxu/projective trace |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
label:t-algebra$ |
157/123 |
Mathlib/FieldTheory/CardinalEmb.lean,Mathlib/FieldTheory/Relrank.lean,Mathlib/LinearAlgebra/Contraction.lean,Mathlib/LinearAlgebra/Dual.lean,Mathlib/RingTheory/LocalProperties/Projective.lean |
5 |
1 |
['leanprover-community-bot-assistant'] |
nobody |
318-20645 10 months ago |
unknown |
0-0 0 seconds |
| 22809 |
b-reinke author:b-reinke |
feat: Category algebras and path algebras |
This PR defines the category algebra of a linear category and path algebras of quivers.
---
[](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 |
318-20469 10 months ago |
unknown |
0-0 0 seconds |
| 21252 |
ADedecker author:ADedecker |
feat: redefine uniformly convex normed spaces with filters instead of epsilons |
And conceptualize some proofs.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-topology
t-algebra
label:t-algebra$ |
301/87 |
Mathlib/Analysis/Convex/Uniform.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Topology/Algebra/UniformGroup/Defs.lean,Mathlib/Topology/Algebra/UniformMulAction.lean |
6 |
1 |
['github-actions'] |
nobody |
318-20384 10 months ago |
unknown |
0-0 0 seconds |
| 19821 |
eric-wieser author:eric-wieser |
feat: add a Qq version of AtomM that groups by type |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
large-import
t-meta
|
332/30 |
Mathlib/Data/Ineq.lean,Mathlib/Tactic/Linarith/Datatypes.lean,Mathlib/Tactic/Linarith/Oracle/SimplexAlgorithm.lean,Mathlib/Tactic/Linarith/Preprocessing.lean,Mathlib/Util/AtomM.lean,Mathlib/Util/Qq.lean |
6 |
1 |
['github-actions'] |
nobody |
318-20197 10 months ago |
unknown |
0-0 0 seconds |
| 19120 |
hrmacbeth author:hrmacbeth |
feat: stop `ring`/`abel` from seeing algebraic operations inside `let`s |
This draft PR illustrates a feature I would like to see in core: a variant of `whnf` which allows particular kinds of reduction, such as zeta-delta reduction, to be turned off. Here it is used to make ring-normalization and abelian-group-normalization a bit more responsive to what (I think) users expect: these normalizations would no longer look inside user-defined lets to see algebraic operations in those expressions.
Note: In Lean/Mathlib 3, `ring` matched for algebraic operations on an algebraic expression `e` itself, not on `← whnfR e`. So mathlib3 `ring` didn't see algebraic operations inside `let`s -- but it also didn't see algebraic operations requiring beta-reduction (like `(fun t ↦ t + 1) x`) or see inside abbreviations.
[Zulip](https://leanprover.zulipchat.com/#narrow/channel/239415-metaprogramming-.2F-tactics/topic/whnf.20variant.20which.20preserves.20let-bindings)
Update: fortuitously, it looks like the new core PR https://github.com/leanprover/lean4/pull/6053 will provide this feature!
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-core-PR
t-meta
|
137/15 |
Archive/Imo/Imo2006Q3.lean,Archive/Imo/Imo2008Q2.lean,Mathlib.lean,Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/SpecialFunctions/Gamma/BohrMollerup.lean,Mathlib/Analysis/SpecialFunctions/Integrals.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/Data/Real/Pi/Irrational.lean,Mathlib/NumberTheory/LSeries/HurwitzZetaOdd.lean,Mathlib/NumberTheory/SumPrimeReciprocals.lean,Mathlib/RingTheory/WittVector/DiscreteValuationRing.lean,Mathlib/Tactic/Abel.lean,Mathlib/Tactic/Polyrith.lean,Mathlib/Tactic/Ring/Basic.lean,Mathlib/Tactic/Ring/RingNF.lean,Mathlib/Topology/MetricSpace/GromovHausdorff.lean,Mathlib/Util/WHNF.lean,MathlibTest/abel.lean,MathlibTest/ring.lean |
21 |
5 |
['JovanGerb', 'github-actions', 'grunweg', 'hrmacbeth'] |
nobody |
318-20177 10 months ago |
unknown |
0-0 0 seconds |
| 17069 |
yuma-mizuno author:yuma-mizuno |
chore(CategoryTheory/Functor/Basic): put `simp` at `Functor.id_comp` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-category-theory
|
41/30 |
Mathlib/CategoryTheory/Adjunction/Mates.lean,Mathlib/CategoryTheory/Functor/Basic.lean,Mathlib/CategoryTheory/GuitartExact/VerticalComposition.lean,Mathlib/CategoryTheory/Limits/HasLimits.lean,Mathlib/CategoryTheory/Shift/CommShift.lean |
5 |
3 |
['github-actions', 'leanprover-bot', 'yuma-mizuno'] |
nobody |
318-20167 10 months ago |
unknown |
0-0 0 seconds |
| 14803 |
StevenClontz author:StevenClontz |
chore: use `Disjoint` nhd filters for all separation axioms |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-topology
|
157/122 |
Mathlib/Topology/Separation.lean |
1 |
1 |
['github-actions'] |
nobody |
318-20151 10 months ago |
unknown |
0-0 0 seconds |
| 14675 |
adomani author:adomani |
dev: the repeated variable linter |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-linter
|
71/0 |
Mathlib/Tactic/Linter/Lint.lean |
1 |
1 |
['github-actions'] |
nobody |
318-20146 10 months ago |
613-6700 613 days ago |
0-8 8 seconds |
| 14330 |
Ruben-VandeVelde author:Ruben-VandeVelde |
chore: split Mathlib.Algebra.Star.Basic |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
|
446/331 |
Mathlib.lean,Mathlib/Algebra/Module/LinearMap/Star.lean,Mathlib/Algebra/Star/Basic.lean,Mathlib/Algebra/Star/BigOperators.lean,Mathlib/Algebra/Star/Defs.lean,Mathlib/Algebra/Star/Lemmas.lean,Mathlib/Algebra/Star/Order.lean,Mathlib/Algebra/Star/Pi.lean,Mathlib/Algebra/Star/Pointwise.lean,Mathlib/Algebra/Star/Rat.lean,Mathlib/Algebra/Star/Regular.lean,Mathlib/Algebra/Star/StarRingHom.lean,Mathlib/Analysis/NormedSpace/LinearIsometry.lean,Mathlib/Data/Complex/Basic.lean,scripts/noshake.json |
15 |
3 |
['github-actions', 'grunweg', 'j-loreaux'] |
nobody |
318-20106 10 months ago |
623-36451 623 days ago |
0-45204 12 hours |
| 14007 |
adomani author:adomani |
test: papercut linter working on all mathlib |
This PR is a testing ground for potential issues with the papercut linter #13999. It is not intended to be merged.
The linter is active on all of mathlib, to make sure that the linter does not throw errors, but only emits warnings!
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-linter
|
249/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/Papercut.lean,test/Papercut.lean |
5 |
1 |
['github-actions'] |
nobody |
318-19991 10 months ago |
unknown |
0-0 0 seconds |
| 20354 |
eric-wieser author:eric-wieser |
feat: generalize `ContinuousLinearMap.curry` to TVS |
Follow on from #10777
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-analysis
|
57/25 |
Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean |
1 |
3 |
['eric-wieser', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
318-19926 10 months ago |
unknown |
0-0 0 seconds |
| 8511 |
eric-wieser author:eric-wieser |
refactor(MeasureTheory/Measure/Haar/Basic): partially generalize to the affine case |
Without a `Mul` version of `AddTorsor`, this generalization can only go so far.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-measure-probability
|
52/46 |
Mathlib/MeasureTheory/Measure/Haar/Basic.lean |
1 |
0 |
[] |
nobody |
318-19737 10 months ago |
848-77817 848 days ago |
0-7 7 seconds |
| 7994 |
ericrbg author:ericrbg |
chore: generalize `LieSubalgebra.mem_map_submodule` |
---
Not sure if we should rename to something like `mem_map_iff_mem_map_submodule` or not.
[](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 |
318-19725 10 months ago |
871-14720 871 days ago |
0-1 1 second |
| 6317 |
eric-wieser author:eric-wieser |
refactor(Data/Finsupp/Defs): make Finsupp.single defeq to Pi.single |
By adding a `DecidableEq ι` argument to `Finsupp.single`, we remove the reference to `Classical.decEq ι` in the definition, which in turn means that when coerced to a function it is now defeq to `Pi.single`.
This also brings it in line with `DFinsupp.single`.
This does not go as far as making `Finsupp.single` computable.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-data
|
269/226 |
Mathlib/Algebra/BigOperators/Finsupp.lean,Mathlib/Data/Finsupp/AList.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/Finsupp/Defs.lean,Mathlib/Data/Finsupp/Fintype.lean,Mathlib/Data/Finsupp/Indicator.lean,Mathlib/Data/Finsupp/Multiset.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Finsupp/ToDFinsupp.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/LinearAlgebra/Basis.lean,Mathlib/LinearAlgebra/Finsupp.lean |
12 |
0 |
[] |
nobody |
318-19719 10 months ago |
unknown |
0-0 0 seconds |
| 6277 |
jjaassoonn author:jjaassoonn |
Dimension theory |
Some results are
- The ring Krull dimension and the topological dimension of the prime spectrum of a ring are the same
- A field is zero-dimensional and a PID that is not a field is one dimensional
- An Artinian ring is zero-dimensional
- The Krull dimension of ring $R$ is equal to the supremum of heights of maximal ideals [00KG](https://stacks.math.columbia.edu/tag/00KG)
- two definitions of module length agree
- A module is finite length iff both artinian and noetherian
- length of module $M$ is equal to the sum of length of $N$ and length of $M / N$ where $N$ is a submodule of $M$.
- Noetherian ring has only finitely many minimal primes #9088
- In a zero dimensional ring, prime ideals are maximal
- Artinian rings has finitely many maximal ideals #9087
- zero-dimensional rings with finitely many prime ideals are products of its localizations: $R \cong \prod_{\mathfrak{p}}R_{\mathfrak{p}}$
- Let $M_0 \le ... \le M_n$, then $l(M_n/ M_0) = l(M_1/M_0) + l(M_2/M_1) + ... + l(M_n/M_{n-1})$ where $l$ denotes module length.
- If $f : R \to S$ is a ring homomorphism and $M$ an $S$-module, then $l_R(M) \le l_S(M)$, when $f$ is surjective then they are equal. (Note that this is expressed using `[Algebra R S]` and `RestrictScalars R S M`, instead of a literal ring hom)
- Artinian rings are noetherian ring of dimension 0.
- For 0-dimensional local ring, its maximal ideal is locally nilpotent
- In notherian ring, $I \le \sqrt{J}$ implies $I ^ n \le J$ for some $n$
---
- [x] depends on: #6309
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
3289/459 |
Mathlib.lean,Mathlib/Algebra/Module/Length.lean,Mathlib/Algebra/Module/Submodule/JordanHolder.lean,Mathlib/Algebra/PUnitInstances.lean,Mathlib/AlgebraicGeometry/PrimeSpectrum/ArtinianAndNoetherian.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/Dedup.lean,Mathlib/Data/List/Nodup.lean,Mathlib/LinearAlgebra/Quotient.lean,Mathlib/Order/Cover.lean,Mathlib/Order/JordanHolder.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Order/ListOnPartialOrderTypes.lean,Mathlib/Order/Monotone/Basic.lean,Mathlib/Order/RelSeries.lean,Mathlib/RingTheory/Artinian.lean,Mathlib/RingTheory/Finiteness.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Pi.lean,Mathlib/RingTheory/KrullDimension.lean,Mathlib/RingTheory/Noetherian.lean,Mathlib/RingTheory/SimpleModule.lean,Mathlib/Topology/KrullDimension.lean,Mathlib/Topology/Sheaves/SheafCondition/EqualizerProducts.lean |
24 |
11 |
['alreadydone', 'jjaassoonn', 'leanprover-community-mathlib4-bot'] |
nobody |
318-19714 10 months ago |
unknown |
0-0 0 seconds |
| 8536 |
jjaassoonn author:jjaassoonn |
characteristic predicate of tensor product |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
399/7 |
Mathlib/Algebra/Category/AlgebraCat/Monoidal.lean,Mathlib/LinearAlgebra/IsTensorProduct.lean,Mathlib/LinearAlgebra/TensorProduct.lean,Mathlib/LinearAlgebra/TensorProduct/Tower.lean |
4 |
12 |
['alreadydone', 'eric-wieser', 'jjaassoonn'] |
nobody |
318-19667 10 months ago |
unknown |
0-0 0 seconds |
| 11524 |
mcdoll author:mcdoll |
refactor: Introduce type-class for SchwartzMap |
---
There are a lot of other refactors to do (`seminormAux` should have a nicer name and gobble up more theorems from `seminorm`), then one can prove `integrable` and friends with only `SchwartzMapClass`.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-analysis
|
139/137 |
Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/Fourier/PoissonSummation.lean,Mathlib/Topology/ContinuousFunction/ZeroAtInfty.lean |
3 |
0 |
[] |
nobody |
318-19633 10 months ago |
unknown |
0-0 0 seconds |
| 11003 |
thorimur author:thorimur |
chore: migrate to `tfae` block tactic |
Migrates to the `tfae` block tactic syntax, eliminating uses of `tfae_have` and `tfae_finish`.
---
- [ ] depends on: #11000
- [ ] depends on: #10991
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
blocked-by-other-PR
t-meta
|
1267/1081 |
Mathlib/Algebra/Exact.lean,Mathlib/Algebra/Homology/ShortComplex/ExactFunctor.lean,Mathlib/Algebra/Order/ToIntervalMod.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/NormedSpace.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/SpecificLimits/Normed.lean,Mathlib/CategoryTheory/Abelian/Exact.lean,Mathlib/CategoryTheory/Bicategory/Kan/Adjunction.lean,Mathlib/FieldTheory/Galois.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/LinearAlgebra/Eigenspace/Zero.lean,Mathlib/MeasureTheory/Group/Action.lean,Mathlib/NumberTheory/FLT/Basic.lean,Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Order/Height.lean,Mathlib/Order/WellFoundedSet.lean,Mathlib/RingTheory/Bezout.lean,Mathlib/RingTheory/DiscreteValuationRing/TFAE.lean,Mathlib/RingTheory/Flat/EquationalCriterion.lean,Mathlib/RingTheory/Henselian.lean,Mathlib/RingTheory/LocalRing/RingHom/Basic.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/ValuationRing.lean,Mathlib/SetTheory/Ordinal/Topology.lean,Mathlib/Tactic/TFAE.lean,Mathlib/Topology/Algebra/Group/SubmonoidClosure.lean,Mathlib/Topology/Category/CompHaus/EffectiveEpi.lean,Mathlib/Topology/Category/Profinite/EffectiveEpi.lean,Mathlib/Topology/Category/Stonean/EffectiveEpi.lean,Mathlib/Topology/Inseparable.lean,Mathlib/Topology/LocallyClosed.lean,Mathlib/Topology/LocallyConstant/Basic.lean,Mathlib/Topology/NoetherianSpace.lean,Mathlib/Topology/Order/LeftRightNhds.lean,Mathlib/Topology/Separation.lean,Mathlib/Topology/UniformSpace/UniformConvergence.lean,scripts/noshake.json,test/tfae.lean |
42 |
2 |
['github-actions', 'leanprover-community-mathlib4-bot'] |
nobody |
318-19629 10 months ago |
546-67402 546 days ago |
3-60883 3 days |
| 9819 |
jjaassoonn author:jjaassoonn |
fg graded ring |
1. if $A$ is a noetherian graded ring, then $A_0$ is a noetherian subring of $A$ and $A$ is a finitely generated algebra over $A_0$, if $M$ is a finitely generated graded module over $A$, then each $M_n$ is a finitely generated module over
$A_0$.
2. Definition of additive functions over any abelian category: if $C$ is an abelian category, a function $f : C \to \mathbb Z$ is said to be additive, if $f(y) = f(x) + f(z)$ whenever $0\to x \to y \to z \to 0$ is exact. proved some basic properties such as $f(0) = 0$ and $f(x) = f(y)$ whenever $x \cong y$ and interaction of $f$ with longer exact sequences
3. The category of finitely generated module over noetherian ring is abelian
4. A proof of Hilbert-Serre theorem: the Poincare series is actually of the form $\frac{p}{\prod(1- X^i)}$ where $p$ is polynomial
The code works, but poorly written.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
label:t-algebra$ |
6745/217 |
Mathlib.lean,Mathlib/Algebra/Category/FGModuleCat/Abelian.lean,Mathlib/Algebra/Category/FGModuleCat/Basic.lean,Mathlib/Algebra/Category/FGModuleCat/EpiMono.lean,Mathlib/Algebra/Category/FGModuleCat/Kernels.lean,Mathlib/Algebra/Category/FGModuleCat/Limits.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/HilbertSerre/AdditiveFunction.lean,Mathlib/Algebra/HilbertSerre/FiniteInstances.lean,Mathlib/Algebra/HilbertSerre/HilbertPolynomial.lean,Mathlib/Algebra/HilbertSerre/Theorem.lean,Mathlib/Algebra/Module/GradeZeroModule.lean,Mathlib/Algebra/Module/GradedModule.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/RingTheory/FiniteType.lean,Mathlib/RingTheory/Finiteness.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousIdeal.lean,Mathlib/RingTheory/GradedAlgebra/Noetherian.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean,Mathlib/RingTheory/GradedAlgebra/Subgrading.lean,Mathlib/RingTheory/Polynomial/Hilbert.lean,Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/RingTheory/PowerSeries/WellKnown.lean |
25 |
2 |
['FMLJohn', 'github-actions'] |
nobody |
318-19615 10 months ago |
unknown |
0-0 0 seconds |
| 14348 |
eric-wieser author:eric-wieser |
perf: disable the `unusedVariables` linter for speed |
I doubt we want to merge this, but it shaves two minutes of the lint time.
---
[](https://gitpod.io/from-referrer/)
|
performance-hack |
1/0 |
lakefile.lean |
1 |
3 |
['eric-wieser', 'github-actions', 'leanprover-bot'] |
nobody |
318-19499 10 months ago |
unknown |
0-0 0 seconds |
| 13543 |
adomani author:adomani |
test: automatically undeprecate |
A test for `update_deprecations`. There are two files with deprecated declarations, but CI automatically fixes them, so that they pass the noisy tests (as well as passing fail-on-warning `lake build`).
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-linter
|
345/4 |
.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build.yml.in,.github/workflows/build_fork.yml,Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/UpdateDeprecations.lean,Mathlib/test_depr.lean,Mathlib/test_depr_no_change.lean,lakefile.lean,scripts/update_deprecations.lean,test/UpdateDeprecations.lean |
12 |
0 |
[] |
nobody |
318-19466 10 months ago |
unknown |
0-0 0 seconds |
| 14932 |
eric-wieser author:eric-wieser |
chore: add nndist versions of lemmas |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-analysis
|
108/1 |
Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Geometry/Euclidean/Basic.lean |
2 |
1 |
['github-actions'] |
nobody |
318-19279 10 months ago |
unknown |
0-0 0 seconds |
| 18202 |
ADedecker author:ADedecker |
chore: refactor algebraic filter bases |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-topology
t-algebra
label:t-algebra$ |
1086/1315 |
Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Analysis/LocallyConvex/Barrelled.lean,Mathlib/Analysis/LocallyConvex/WeakDual.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Normed/Operator/WeakOperatorTopology.lean,Mathlib/FieldTheory/KrullTopology.lean,Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Algebra/Module/UniformConvergence.lean,Mathlib/Topology/Algebra/Nonarchimedean/AdicTopology.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/UniformFilterBasis.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean |
14 |
1 |
['github-actions'] |
nobody |
317-11950 10 months ago |
unknown |
0-0 0 seconds |
| 22488 |
smmercuri author:smmercuri |
fix: lower priority for `UniformSpace.Completion.instSMul` |
Following the introduction of the `WithVal` type synonym in #22055 the following instance takes a long time to synthesise in FLT, and times out in the default heartbeats
```lean
import Mathlib
namespace IsDedekindDomain.HeightOneSpectrum
variable (A K : Type*) [CommRing A] [Field K] [Algebra A K] [IsFractionRing A K]
[IsDedekindDomain A] (v : HeightOneSpectrum A)
#synth SMul (v.adicCompletionIntegers K) (v.adicCompletion K)
```
The issue is that `UniformSpace.Completion.instSMul (v.adicCompletionIntegers K) (v.adicCompletion K)` now fires during the start of instance search (because we now have `UniformSpace (WithVal (v.valuation K))` whereas previously this would be `UniformSpace K`, which was not automatic), and this takes a long time to fail (leading to ~1400 entries in the trace). The first few lines of the new trace is
```lean
[Meta.synthInstance] [5.512418] ✅️ SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▼
[] [0.000118] new goal SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶
[] [0.000537] ✅️ apply UniformSpace.Completion.instSMul to SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶
[] [0.004411] ✅️ apply @WithVal.instSMul to SMul (↥(adicCompletionIntegers K v)) (WithVal (valuation K v)) ▶
[] [0.000765] ❌️ apply @GradedMonoid.GradeZero.smul to SMul (↥(adicCompletionIntegers K v)) K ▶
[] [0.000378] ✅️ apply @Algebra.toSMul to SMul (↥(adicCompletionIntegers K v)) K ▶
...
[] 1339 more entries... ▶
```
Lowering the priority of `UniformSpace.Completion.instSMul` fixes this particular issue, leading to a trace that matches that seen prior to the introduction of `WithVal`:
```lean
[Meta.synthInstance] [0.016405] ✅️ SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▼
[] [0.000119] new goal SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶
[] [0.000491] ❌️ apply @GradedMonoid.GradeZero.smul to SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶
[] [0.000403] ✅️ apply @Algebra.toSMul to SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶
[] [0.000134] ❌️ apply inst✝⁴ to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶
[] [0.000093] ❌️ apply inst✝⁵ to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶
[] [0.000077] ❌️ apply inst✝⁷ to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶
[] [0.000082] ❌️ apply inst✝⁹ to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶
[] [0.000075] ❌️ apply inst✝¹² to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶
[] [0.000220] ❌️ apply Algebra.id to Algebra (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶
[] [0.001015] ✅️ apply @ValuationSubring.instAlgebraSubtypeMem to Algebra (↥(adicCompletionIntegers K v))
(adicCompletion K v) ▶
[resume] [0.000038] propagating Algebra (↥(adicCompletionIntegers K v))
(adicCompletion K
v) to subgoal Algebra (↥(adicCompletionIntegers K v))
(adicCompletion K v) of SMul (↥(adicCompletionIntegers K v)) (adicCompletion K v) ▶
[check] [0.013358] ✅️ Algebra.toSMul
[] result Algebra.toSMul
```
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-topology
FLT
|
1/1 |
Mathlib/Topology/Algebra/UniformMulAction.lean |
1 |
10 |
['github-actions', 'leanprover-bot', 'smmercuri', 'urkud'] |
nobody |
317-3283 10 months ago |
323-31835 323 days ago |
55-70108 55 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-80850 10 months ago |
323-57883 323 days ago |
26-22460 26 days |
| 15161 |
adomani author:adomani |
feat(Linter): flag `intros x y` which can be replaced by `intro x y` |
---
[](https://gitpod.io/from-referrer/)
|
WIP
t-linter
|
78/1 |
Mathlib/Tactic/Linter/Lint.lean,test/Lint.lean |
2 |
4 |
['adomani', 'github-actions', 'grunweg'] |
nobody |
316-60751 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-53148 10 months ago |
584-76333 584 days ago |
0-179 2 minutes |
| 19315 |
quangvdao author:quangvdao |
feat(Data/Finsupp/Fin): Add `Finsupp` operations on `Fin` tuple |
This PR adds more analogues of operations on `Fin` tuples to the `Finsupp` setting. Before, there were only `Finsupp.cons` and `Finsupp.tail`. Now there are also `Finsupp.snoc`, `Finsupp.insertNth`, `Finsupp.init`, and `Finsupp.removeNth`. These all come with supporting lemmas.
I also removed the porting comment about `succAboveCases` in `Data/Fin/Basic`, and added a lemma about `succAbove` in `Data/Fin/Tuple/Basic`.
---
- [x] depends on: #20361
- [x] depends on: #20771
- [x] depends on: #20770
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-data
|
193/16 |
Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finsupp.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Data/Finsupp/Fin.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,scripts/nolints_prime_decls.txt |
6 |
44 |
['YaelDillies', 'github-actions', 'j-loreaux', 'kbuzzard', 'mathlib4-dependent-issues-bot', 'quangvdao'] |
nobody |
314-55109 10 months ago |
391-80132 391 days ago |
43-81252 43 days |
| 19464 |
adomani author:adomani |
test: removed merge-conflict |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
CI
delegated
|
22/1 |
.github/workflows/PR_summary.yml,scripts/zulip_emoji_merge_delegate.py |
2 |
10 |
['adomani', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
313-66433 10 months ago |
unknown |
0-0 0 seconds |
| 24155 |
eric-wieser author:eric-wieser |
feat: add a "rw_proc" for fin vectors |
This seems a little nicer than an elaborator, since it means I can use the default elaboration rules to handle my first few variables.
Ideally there would be something like
```lean
rw_procQ {A : Type u} {B : A -> Type v} (a : A) (b : B a) : b = ?rhs => do
/-- Context:
u v : Level
A : Q(Type u)
B : Q($A -> Type v)
a : Q($A)
b : Q($B $a)
rhs : Q($B $a) -- metavariable to assign
|- MetaM Q($b = ?rhs)
-/
```
or
```lean
rw_proc {A : Type u} {B : A -> Type v} (a : A) (b : B a) : b = ?rhs => do
/-- Context:
u v : Level
A B a b : Expr
rhs : MVarId
|- MetaM Expr
-/
```
which would generate the code I wrote here
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
RFC
t-data
t-meta
|
27/2 |
Mathlib/Data/Fin/Tuple/Reflection.lean |
1 |
2 |
['github-actions', 'urkud'] |
nobody |
312-50989 10 months ago |
312-50989 312 days ago |
20-83091 20 days |
| 21276 |
GabinKolly author:GabinKolly |
feat(ModelTheory/Substructures): define equivalences between equal substructures |
Define first-order equivalences between equal substructures, and prove related properties.
---
This is some preparatory work for #18876
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-logic
|
62/0 |
Mathlib/ModelTheory/Substructures.lean |
1 |
19 |
['GabinKolly', 'YaelDillies', 'fpvandoorn', 'github-actions', 'grunweg'] |
nobody |
311-73183 10 months ago |
311-73183 311 days ago |
46-55730 46 days |
| 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 |
310-12327 10 months ago |
310-12327 310 days ago |
27-52316 27 days |
| 24642 |
grunweg author:grunweg |
WIP-feat: add layercake formula for ENNReal-valued functions |
Not much to see here yet; some significant amount of work remains.
---
- [ ] depends on: #24643
- [ ] depends on: #24640 (based on that PR for simplicity)
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
carleson
t-analysis
|
189/24 |
Mathlib/Analysis/SpecialFunctions/Pow/Integral.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Integral/Layercake.lean |
4 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
308-75108 10 months ago |
unknown |
0-0 0 seconds |
| 21712 |
grunweg author:grunweg |
chore: generalise more lemmas to `ContinuousENorm` |
---
- [x] depends on: #21781 (minor drive-by clean-up)
- [x] depends on: #21670
- [x] depends on: #22708 (extracted from this)
- some parts depend on #21433 (or better: #22175); when the dependent PR has landed, I will re-assess whether to split these into a separate PR
[](https://gitpod.io/from-referrer/)
|
merge-conflict
carleson
awaiting-CI
t-measure-probability
|
76/31 |
Mathlib/Analysis/Normed/MulAction.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/ContinuousFunctions.lean |
4 |
5 |
['github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
308-10392 10 months ago |
unknown |
0-0 0 seconds |
| 21375 |
grunweg author:grunweg |
WIP: generalise lemmas to ENorm |
This work is part of (and a necessary pre-requisite for) the Carleson project.
---
[](https://gitpod.io/from-referrer/)
|
WIP
awaiting-CI
t-measure-probability
carleson
merge-conflict
|
471/221 |
Mathlib/Analysis/NormedSpace/IndicatorFunction.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Function/LpOrder.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/ChebyshevMarkov.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSeminorm/TriangleInequality.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Trim.lean,Mathlib/MeasureTheory/Function/LpSpace.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/Probability/Independence/Integrable.lean |
13 |
2 |
['fpvandoorn', 'grunweg'] |
nobody |
308-4767 10 months ago |
unknown |
0-0 0 seconds |
| 24378 |
urkud author:urkud |
feat(Algebra/Order/Field/Basic): generalize lemmas |
... from linear ordered semifields to (commutative) groups with zero.
---
I'm going to do another round of generalizing today or tomorrow, so making it a draft PR for now.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
183/181 |
Archive/OxfordInvariants/Summer2021/Week3P1.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/CStarAlgebra/ApproximateUnit.lean,Mathlib/Analysis/Calculus/BumpFunction/Basic.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/BumpFunction/InnerProduct.lean,Mathlib/Analysis/Complex/AbelLimit.lean,Mathlib/Analysis/Complex/Hadamard.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Analysis/Convex/SpecificFunctions/Basic.lean,Mathlib/Analysis/Convex/SpecificFunctions/Pow.lean,Mathlib/Analysis/Convex/StrictConvexSpace.lean,Mathlib/Analysis/Convex/Uniform.lean,Mathlib/Analysis/Convex/Visible.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Analysis/FunctionalSpaces/SobolevInequality.lean,Mathlib/Analysis/MeanInequalitiesPow.lean,Mathlib/Analysis/Normed/Field/Lemmas.lean,Mathlib/Analysis/Normed/Field/Ultra.lean,Mathlib/Analysis/Normed/Unbundled/SmoothingSeminorm.lean,Mathlib/Analysis/NormedSpace/HomeomorphBall.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/NormedSpace.lean,Mathlib/Analysis/NormedSpace/Pointwise.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Beta.lean,Mathlib/Analysis/SpecialFunctions/Log/Deriv.lean,Mathlib/Analysis/SpecialFunctions/MulExpNegMulSqIntegral.lean,Mathlib/Analysis/SpecialFunctions/SmoothTransition.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Bounds.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Analysis/SpecificLimits/FloorPow.lean,Mathlib/Analysis/SpecificLimits/Normed.lean,Mathlib/Combinatorics/Additive/AP/Three/Behrend.lean,Mathlib/Combinatorics/Schnirelmann.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Chunk.lean,Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Computability/AkraBazzi/GrowsPolynomially.lean,Mathlib/Data/Nat/Cast/Order/Field.lean,Mathlib/Data/Real/Archimedean.lean,Mathlib/Data/Real/Cardinality.lean,Mathlib/Data/Real/Pi/Wallis.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Affine.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/RightAngle.lean,Mathlib/Geometry/Euclidean/Sphere/Tangent.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Integral/CircleIntegral.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean,Mathlib/MeasureTheory/Integral/PeakFunction.lean,Mathlib/MeasureTheory/Measure/SeparableMeasure.lean,Mathlib/NumberTheory/Bertrand.lean,Mathlib/NumberTheory/ClassNumber/AdmissibleAbs.lean,Mathlib/NumberTheory/DiophantineApproximation/Basic.lean,Mathlib/NumberTheory/LSeries/Injectivity.lean,Mathlib/NumberTheory/LSeries/ZMod.lean,Mathlib/NumberTheory/NumberField/Discriminant/Basic.lean,Mathlib/NumberTheory/Padics/Hensel.lean,Mathlib/NumberTheory/Padics/MahlerBasis.lean,Mathlib/NumberTheory/Pell.lean,Mathlib/NumberTheory/Transcendental/Liouville/LiouvilleNumber.lean,Mathlib/Order/Filter/AtTopBot/Floor.lean,Mathlib/Order/Interval/Set/IsoIoo.lean,Mathlib/Probability/StrongLaw.lean,Mathlib/RingTheory/Perfection.lean,Mathlib/Topology/ContinuousMap/Polynomial.lean,Mathlib/Topology/Instances/AddCircle.lean,Mathlib/Topology/UrysohnsLemma.lean |
72 |
3 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
307-75497 10 months ago |
325-32049 325 days ago |
0-14 14 seconds |
| 24618 |
b-mehta author:b-mehta |
feat(Analysis): add Schur inequality and variants |
Add Schur inequality and some of its common variants.
TODO:
- [x] add reference to source: https://www.cip.ifi.lmu.de/~grinberg/VornicuS.pdf
- [ ] add other generalisations
- [ ] move some of the lemmas elsewhere
---
[](https://gitpod.io/from-referrer/)
|
WIP
t-analysis
|
145/0 |
Mathlib/Analysis/Convex/Schur.lean |
1 |
16 |
['b-mehta', 'eric-wieser', 'github-actions'] |
nobody |
306-86260 10 months ago |
315-66262 315 days ago |
0-2 2 seconds |
| 15115 |
kkytola author:kkytola |
feat: Generalize assumptions in liminf and limsup results in ENNReals |
In a [review comment](https://github.com/leanprover-community/mathlib4/pull/13938#discussion_r1649744441) it was pointed out that results about liminf and limsup in ENNReal hold under milder assumptions. This PR does the generalization.
---
This PR is split off from #13938, where the review comment was made. The changes needed for the suggested generalization were of different kind than the simple PR's content, justifying a separate PR.
- [x] depends on: #13938
[](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 |
306-1102 10 months ago |
551-80320 551 days ago |
21-25493 21 days |
| 24957 |
eric-wieser author:eric-wieser |
feat: use ` binderNameHint` in sum_congr |
Zulip thread: [#new members > Choosing dummy variable inside summation @ 💬](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Choosing.20dummy.20variable.20inside.20summation/near/518492888)
Co-authored-by: Joachim Breitner
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
23/16 |
Mathlib/Algebra/BigOperators/Expect.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Data/Finset/Fold.lean,Mathlib/Data/Finset/Lattice/Fold.lean,Mathlib/Data/List/OfFn.lean,Mathlib/Data/Multiset/Count.lean,Mathlib/Data/Multiset/Filter.lean,Mathlib/Data/Multiset/MapFold.lean,Mathlib/Data/Option/Basic.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Sym/Basic.lean,Mathlib/Data/Sym/Sym2.lean |
13 |
1 |
['github-actions'] |
nobody |
304-85404 10 months ago |
304-85217 304 days ago |
0-874 14 minutes |
| 8495 |
jjaassoonn author:jjaassoonn |
feat : Tensor-Hom adjunction in the category of modules |
# Tensor-Hom adjunction
Let $R$ be a commutative ring and $S$ any ring. Let $X$ be an $(S,R)$-bimoule. Then the tensor functor $(X \otimes_R \cdot)$ is a functor from left $R$-modules to left $S$-modules; and the hom-functor $Hom_S(X, \cdot)$ is a functor from left $S$-modules to left $R$-modules. For another left $S$-module $Y$, the left $R$-module structure of $Hom_S(X, Y)$ is given by $s \cdot f := x \mapsto f(s \cdot x)$. These two functors are adjoint.. In particular we have that
```math
{\rm Hom}_{S}(X\otimes_R Y, Z) \cong {\rm Hom}_R (Y, {\rm Hom}_S (X, Z))
```
## Implementation notes
1. Why not use the `Mathlib/LinearAlgebra/TensorProduct/Tower.lean`
In our setting `X` is an `(R, S)` bimodule and `Y` an `R`-module and `Z` an `S`-module
so to use the `Tower` file, we need `S` to be an `R`-algebra which is a luxury we do not have.
But note that in `Tower` file, `curry` and `uncurry` are both tri-linear maps. So `Tower` file
allows interplay of 3 rings which is not allowed in this file.
2. We require `R` to be commutative but we never used anything commutative. This is because of tensor product requires commutativity, but thanks to @alreadydone, this assumption could be removed soon.
I think this PR should wait for Junyan's attempt on removing commutativity, so it is marked as draft and wip for now
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
awaiting-author
t-algebra
label:t-algebra$ |
214/0 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/TensorHomAdjunction.lean |
2 |
88 |
['alreadydone', 'bustercopley', 'eric-wieser', 'github-actions', 'jjaassoonn', 'kbuzzard', 'kim-em', 'leanprover-community-bot-assistant'] |
eric-wieser assignee:eric-wieser |
303-82038 9 months ago |
848-19993 848 days ago |
1-57685 1 day |
| 19284 |
adomani author:adomani |
test: commit a change only to the "master" CI build action |
This PR should fail CI, since the main CI build file is incompatible with the autogenerated ones.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
CI
|
3/3 |
.github/build.in.yml,.github/workflows/actionlint.yml |
2 |
12 |
['adomani', 'bryangingechen', 'github-actions', 'jcommelin', 'leanprover-community-bot-assistant'] |
bryangingechen assignee:bryangingechen |
302-27042 9 months ago |
421-830 421 days ago |
61-913 61 days |
| 15254 |
yuma-mizuno author:yuma-mizuno |
feat(CategoryTheory/Monoidal): replace `Mon_` lemmas with `Mon_Class` lemmas |
We redefine algebras internal to monoidal categories, which were defined by full-bundled structures, in terms of semi-bundled type classes. The original full-bundled structure `X` is renamed to `X_Cat`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-category-theory
|
3982/96 |
Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Bimod_Class.lean,Mathlib/CategoryTheory/Monoidal/Bimon_.lean,Mathlib/CategoryTheory/Monoidal/Bimon_Class copy.lean,Mathlib/CategoryTheory/Monoidal/Bimon_Class.lean,Mathlib/CategoryTheory/Monoidal/Braided/Opposite.lean,Mathlib/CategoryTheory/Monoidal/CommMon_Class.lean,Mathlib/CategoryTheory/Monoidal/Comon_.lean,Mathlib/CategoryTheory/Monoidal/Comon_Class.lean,Mathlib/CategoryTheory/Monoidal/Internal/ModuleClass.lean,Mathlib/CategoryTheory/Monoidal/Mod_Class.lean,Mathlib/CategoryTheory/Monoidal/Mon_.lean,Mathlib/CategoryTheory/Monoidal/Mon_Class.lean,Mathlib/CategoryTheory/Monoidal/mwe.lean |
14 |
6 |
['YaelDillies', 'github-actions', 'leanprover-community-bot-assistant', 'yuma-mizuno'] |
nobody |
298-52613 9 months ago |
unknown |
0-0 0 seconds |
| 23489 |
plp127 author:plp127 |
chore: fix recursors |
Replace motive with `motive` and other improvements. Will probably split this PR after fixing is done.
4013 recursors left
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
4255/172 |
Mathlib/Algebra/EuclideanDomain/Basic.lean,Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/Free.lean,Mathlib/Algebra/FreeMonoid/Basic.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Lie/BaseChange.lean,Mathlib/Algebra/Lie/IdealOperations.lean,Mathlib/Algebra/Lie/TraceForm.lean,Mathlib/Algebra/Order/Rearrangement.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/SubboxInduction.lean,Mathlib/CategoryTheory/Quotient.lean,Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Fin/Tuple/Basic.lean,Mathlib/Data/Fin/Tuple/BubbleSortInduction.lean,Mathlib/Data/Fin/Tuple/NatAntidiagonal.lean,Mathlib/Data/FinEnum/Option.lean,Mathlib/Data/Finset/Max.lean,Mathlib/Data/Fintype/CardEmbedding.lean,Mathlib/Data/Fintype/Option.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/Data/Nat/BinaryRec.lean,Mathlib/Data/PFun.lean,Mathlib/Data/PFunctor/Multivariate/W.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Coprod/Basic.lean,Mathlib/GroupTheory/Coset/Defs.lean,Mathlib/GroupTheory/Coxeter/Basic.lean,Mathlib/LinearAlgebra/Span/Defs.lean,Mathlib/LinearAlgebra/TensorProduct/Tower.lean,Mathlib/NumberTheory/LSeries/HurwitzZetaEven.lean,Mathlib/NumberTheory/LSeries/HurwitzZetaOdd.lean,Mathlib/Order/DirectedInverseSystem.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/SetTheory/Cardinal/Defs.lean,Mathlib/SetTheory/PGame/Algebra.lean,done.csv,print.lean,working.csv |
42 |
3 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
295-83331 9 months ago |
unknown |
0-0 0 seconds |
| 23349 |
BGuillemet author:BGuillemet |
feat: add LocallyLipschitzOn.lipschitzOnWith_of_isCompact and two small lemmas about Lipschitz functions |
Main feat (in Mathlib/Topology/EMetricSpace/Basic.lean): if a function `f` from an extended pseudometric space to a pseudometric space is locally Lipschitz on a compact subset `s`, then `f` is Lipschitz on `s`. The theorem is true only when the codomain of `f` is a pseudometric space, so it needs imports from Mathlib/Topology/MetricSpace.
Other small feat (in Mathlib/Analysis/Calculus/ContDiff/RCLike.lean): a function that is continuously differentiable on an open subset is locally Lipschitz on this subset.
---
- [ ] depends on: #22890
[](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-71068 9 months ago |
293-71070 293 days ago |
35-30364 35 days |
| 12438 |
jjaassoonn author:jjaassoonn |
feat: some APIs for flat modules |
Need horseshoe lemma
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-category-theory
|
1674/3 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Symmetric.lean,Mathlib/Algebra/Exact.lean,Mathlib/CategoryTheory/Abelian/Basic.lean,Mathlib/CategoryTheory/Abelian/DiagramLemmas/Horseshoe.lean,Mathlib/CategoryTheory/Abelian/LeftDerived.lean,Mathlib/RingTheory/Flat/Basic.lean |
8 |
21 |
['erdOne', 'github-actions', 'jjaassoonn', 'joelriou'] |
nobody |
288-83694 9 months ago |
690-46565 690 days ago |
0-20 20 seconds |
| 8740 |
digama0 author:digama0 |
fix: improve `recall` impl / error reporting |
Simplifies the implementation of `recall`, fixing a bug [reported on Zulip](https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/.60recall.60.20strangeness/near/405076713) and also eliminating a use of `open private`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
awaiting-CI
t-meta
|
27/39 |
Mathlib/Tactic/Recall.lean |
1 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
287-14555 9 months ago |
837-70451 837 days ago |
0-24848 6 hours |
| 17715 |
adomani author:adomani |
feat: the unusedVariableCommand linter |
This is still work-in-progress, but also help-wanted!
The linter reliably flags unused variables: so far, only `example`s fool it (and that is simply because I did not implement a fix, as there are very few `variable`s that are only used in `example`s in mathlib).
The work-in-progress part refers to the fact that the linter uses an `IO.Ref` to keep track of variables and this does not work well with editing the file. The linter works on a fresh parse of a file, but becomes out-of-sync with every edit.
The help-wanted is to ask for help to make mathlib compliant with the linter, by checking out this branch and PR-ing a few variable removals!
[Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/Unused.20variables)
---
Known issues:
* automatic namespacing and `nonrec` may cause difficulty when the newly introduced declaration is preferred in the term, rather than the original one (see examples here
```bash
code -r -g ././././Mathlib/Analysis/SpecialFunctions/Arsinh.lean:183
code -r -g ././././Mathlib/Probability/Independence/Basic.lean:368
```
where, for instance, `ContinuousOn.arsinh` is used internally instead of `Real.arsinh`).
* `mutual` declarations confuse the linter
```bash
code -r -g ././././Mathlib/SetTheory/Lists.lean:313
```
* `code -r -g Mathlib/CategoryTheory/EffectiveEpi/Comp.lean:133:29`
* universe annotations confuse the linter:
```bash
code -r -g ././././Mathlib/Topology/Category/CompactlyGenerated.lean:53
code -r -g ././././Mathlib/AlgebraicTopology/CechNerve.lean:46
```
* `inductive`s confusing the linter
```bash
code -r -g ././././Mathlib/Deprecated/Subgroup.lean:389
code -r -g ././././Mathlib/FieldTheory/PerfectClosure.lean:55
```
* `def`s confusing the linter
```bash
code -r -g ././././Mathlib/Data/MLList/BestFirst.lean:104
```
* special typeclass assumptions
```code
code -r -g ././././Mathlib/RingTheory/WittVector/Truncated.lean:273
code -r -g ././././Mathlib/Topology/Category/Profinite/Product.lean:79
```
* not sure what is going on here:
```bash
code -r -g ././././Mathlib/RingTheory/WittVector/IsPoly.lean:95
code -r -g ././././Mathlib/Probability/Independence/Basic.lean:368
code -r -g ././././Mathlib/Analysis/Calculus/FDeriv/Star.lean:30
```
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-linter
large-import
|
695/22 |
Mathlib.lean,Mathlib/Algebra/Group/Idempotent.lean,Mathlib/Algebra/GroupWithZero/Idempotent.lean,Mathlib/Data/Finite/Defs.lean,Mathlib/Data/Int/Cast/Field.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,Mathlib/Init.lean,Mathlib/MeasureTheory/Function/LpSpace/DomAct/Continuous.lean,Mathlib/NumberTheory/LSeries/PrimesInAP.lean,Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/Order/BoundedOrder/Lattice.lean,Mathlib/Order/BoundedOrder/Monotone.lean,Mathlib/Order/Monotone/Monovary.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/UnusedVariableCommand.lean,MathlibTest/UnusedVariableCommand.lean,lakefile.lean |
17 |
3 |
['github-actions', 'grunweg', 'leanprover-community-bot-assistant'] |
nobody |
286-78452 9 months ago |
519-43485 519 days ago |
0-92 1 minute |
| 25473 |
adomani author:adomani |
feat(CI): check that Mathlib files have lean or md extension |
Twice recently there have been files with an "intended" `.lean` extension in `Mathlib/`:
* #24942, ending in `;lean`;
* #25457, ending in `.Lean`.
`mk_all` does not add these files to `Mathlib.lean`, since they do not end in `.lean` and this later causes problems.
This CI step checks that all files in `Mathlib/` end with `.lean` or `.md`.
See #25474 for a test where the new step [correctly fails](https://github.com/leanprover-community/mathlib4/actions/runs/15464097783/job/43532018379?pr=25474).
---
[](https://gitpod.io/from-referrer/)
|
CI
delegated
|
10/0 |
.github/workflows/lint_and_suggest_pr.yml |
1 |
10 |
['adomani', 'bryangingechen', 'github-actions', 'grunweg', 'mathlib-bors'] |
nobody |
285-1235 9 months ago |
285-2126 285 days ago |
0-10787 2 hours |
| 16020 |
adomani author:adomani |
feat: compare PR `olean`s size with `master` |
Adds two CI steps:
* `print the sizes of the oleans` that prints the sizes of all the folders containing `Mathlib` `.olean`s;
* `compare oleans` that compares the sizes of the previous step with the corresponding sizes on `master`.
In the test runs, the two steps have taken at most 3 seconds combined (the first is virtually instantaneous, the second one depends on `curl` to find a job id and on `gh` to retrieve the logs of a previous CI run -- everything else appears to be negligible).
This hopefully helps finding out if some PR is bloating up the `.olean`s.
See [this Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Error.3A.20No.20space.20left.20on.20device/near/463792355) for a PR of mine that prompted this check.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
CI
|
120/0 |
.github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,scripts/olean_comparison.sh |
5 |
50 |
['Vtec234', 'YaelDillies', 'adomani', 'bryangingechen', 'github-actions', 'grunweg', 'kim-em', 'leanprover-community-bot-assistant', 'mattrobball'] |
nobody |
284-34675 9 months ago |
481-82016 481 days ago |
87-65922 87 days |
| 16062 |
adomani author:adomani |
Test/ci olean size |
Tests for oleans
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
awaiting-author
CI
|
114/0 |
.github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,scripts/olean_comparison.sh |
5 |
4 |
['Parcly-Taxel', 'adomani', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
284-34675 9 months ago |
572-9255 572 days ago |
0-16 16 seconds |
| 25507 |
eric-wieser author:eric-wieser |
chore(RingTheory/Valuation): golf using `Con` |
This has no particular motivation besides seeing if `Con` is a performant substitute.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
bench-after-CI
label:t-algebra$ |
20/35 |
Mathlib/RingTheory/Valuation/ValuationRing.lean |
1 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
284-26154 9 months ago |
unknown |
0-0 0 seconds |
| 12799 |
jstoobysmith author:jstoobysmith |
feat(LinearAlgebra/UnitaryGroup): Add properties of Special Unitary Group |
Add properties of the special unitary group, mirroring the properties of found in Algebra/Star/Unitary.lean. In particular, I add an instance of `specialUnitaryGroup` as a `Group`, `Star`, `InvolutiveStar`, and `StarMul`.
---
[](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-43021 9 months ago |
666-70674 666 days ago |
9-22045 9 days |
| 23709 |
plp127 author:plp127 |
feat: `Nat.findFrom` |
This PR adds `Nat.findFrom`, which is like `Nat.find`, but starting from an arbitrary `k` instead of `0`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-data
|
190/47 |
Mathlib/Data/Nat/Find.lean |
1 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
283-8310 9 months ago |
344-86388 344 days ago |
0-7729 2 hours |
| 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 |
283-7495 9 months ago |
283-7497 283 days ago |
6-39812 6 days |
| 21734 |
adomani author:adomani |
fix(PR summary): checkout GITHUB_SHA |
This should make the version of the script that is used on PRs more stable.
Suggested by Eric Wieser on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/messageFile.2Emd/near/498941855).
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
awaiting-author
CI
|
2/1 |
.github/workflows/PR_summary.yml |
1 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
282-24162 9 months ago |
398-60441 398 days ago |
0-6023 1 hour |
| 25579 |
JovanGerb author:JovanGerb |
feat(Order/Notation): only allow ⊔/⊓ for non-linear orders |
⊔/⊓ is the same as max/min. The difference is that it is meant to be used if and only if there is no linear order. This PR implements a check for one of the two directions.
---
[](https://gitpod.io/from-referrer/)
|
t-order |
33/7 |
Mathlib/Order/Notation.lean |
1 |
1 |
['github-actions'] |
nobody |
282-9458 9 months ago |
282-38462 282 days ago |
0-8 8 seconds |
| 8949 |
sebzim4500 author:sebzim4500 |
Add `by_approx` tactic for proving real inequalities using rational approximation |
feat: Add `by_approx` tactic for proving real inequalities by finding rational approximations
---
```lean
example : |sqrt 2 - 1.414| < 0.001 := by by_approx
```
This is a work in progress, the code is messy and the tactic is often very slow. It also depends on some other PRs that haven't been merged yet.
It currently supports basic operations (`+`, `-`, `*`, `/`, `abs`) and has approximation extensions for `sqrt` and `exp`.
- [ ] depends on: #8167
- [x] depends on: #8832
[](https://gitpod.io/from-referrer/)
|
merge-conflict
modifies-tactic-syntax
t-meta
|
1670/3 |
Mathlib.lean,Mathlib/Data/Int/ModEq.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ByApprox.lean,Mathlib/Tactic/ByApprox/Basic.lean,Mathlib/Tactic/ByApprox/Core.lean,Mathlib/Tactic/ByApprox/Exp.lean,Mathlib/Tactic/ByApprox/Lemmas.lean,Mathlib/Tactic/ByApprox/Test.lean,Mathlib/Tactic/ByApprox/Util.lean,Mathlib/Tactic/GCongr/Core.lean,Mathlib/Tactic/GRW.lean,Mathlib/Tactic/GRW/Core.lean,Mathlib/Tactic/GRW/Lemmas.lean,Mathlib/Tactic/NormNum/NatFactorial.lean,test/ByApprox.lean,test/GRW.lean,test/norm_num_ext.lean |
18 |
1 |
['mathlib4-dependent-issues-bot'] |
nobody |
278-48209 9 months ago |
unknown |
0-0 0 seconds |
| 20334 |
miguelmarco author:miguelmarco |
feat: allow polyrith to use a local Singular/Sage install |
Try to call a local install of Singular (either standalone or inside Sage) to find the witness for polyrith before trying to call the online sage cell server.
---
[](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-35574 9 months ago |
414-73555 414 days ago |
27-62333 27 days |
| 25911 |
BoltonBailey author:BoltonBailey |
make `a / b` simp normal form |
This PR continues the work from #25631.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25631 |
t-algebra label:t-algebra$ |
11/1 |
Mathlib/Algebra/Group/Defs.lean |
1 |
2 |
['BoltonBailey', 'github-actions'] |
nobody |
274-79323 9 months ago |
unknown |
0-0 0 seconds |
| 25912 |
BoltonBailey author:BoltonBailey |
feat: add simp lemmas for trig functions on `π * 2⁻¹` |
This PR adds a number of simp lemmas to reduce trig functions evaluated on `π * 2⁻¹`. This allows `simp` to reduce expressions such as `sin (π * (1 / 2))`
---
- [ ] depends on: #25911 [experiment with simp normal form]
Original PR: #24213 |
awaiting-author
blocked-by-other-PR
t-analysis
|
45/0 |
Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean |
1 |
3 |
['BoltonBailey', 'github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
274-78036 9 months ago |
274-78733 274 days ago |
0-136 2 minutes |
| 25918 |
BoltonBailey author:BoltonBailey |
feat: one time pad string diagram |
This PR continues the work from #10655.
Original PR: https://github.com/leanprover-community/mathlib4/pull/10655 |
|
159/0 |
MathlibTest/StringDiagram.lean |
1 |
2 |
['BoltonBailey', 'github-actions'] |
nobody |
274-77467 9 months ago |
unknown |
0-0 0 seconds |
| 23953 |
b-reinke author:b-reinke |
feat(Data/Matroid/Tutte): define the Tutte polynomial of a matroid |
This PR defines the Tutte polynomial of a matroid and shows basic properties.
- [x] depends on: #23926
- [ ] depends on #24336
- [ ] depends on: #23951
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-data
|
111/0 |
Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Data/Matroid/Tutte/Basic.lean,Mathlib/Data/Set/Image.lean |
3 |
7 |
['apnelson1', 'b-reinke', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
273-77054 9 months ago |
unknown |
0-0 0 seconds |
| 25921 |
BoltonBailey author:BoltonBailey |
feat: scripts to analyze overlap between namespaces |
This PR continues the work from #11385.
Original PR: https://github.com/leanprover-community/mathlib4/pull/11385 |
WIP
migrated-from-branch
t-meta
|
86/0 |
scripts/RecordNamespaces.lean,scripts/namespace-overlap.py |
2 |
1 |
['github-actions'] |
nobody |
272-65334 8 months ago |
272-65350 272 days ago |
2-11832 2 days |
| 18771 |
joelriou author:joelriou |
feat(LinearAlgebra/ExteriorPower): exterior powers of free modules are free |
Co-authored-by: sophie.morel@ens-lyon.fr
---
- [ ] depends on: #18662
- [x] depends on: #18534
- [x] depends on: #18651
- [x] depends on: #18590
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
blocked-by-other-PR
label:t-algebra$ |
1185/160 |
Mathlib.lean,Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/Sum/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Basis.lean,Mathlib/LinearAlgebra/ExteriorPower/Generators.lean,Mathlib/LinearAlgebra/ExteriorPower/Pairing.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/Span.lean,Mathlib/LinearAlgebra/TensorAlgebra/ToTensorPower.lean,Mathlib/LinearAlgebra/TensorPower/Basic.lean,Mathlib/LinearAlgebra/TensorPower/Pairing.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean |
19 |
3 |
['alreadydone', 'github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
271-13791 8 months ago |
unknown |
0-0 0 seconds |
| 18441 |
ADedecker author:ADedecker |
refactor(AdicTopology): use new API for algebraic filter bases, and factor some code |
---
- [x] depends on: #18437
[](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-85636 8 months ago |
502-83535 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-85634 8 months ago |
502-85178 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-85633 8 months ago |
502-85820 502 days ago |
0-638 10 minutes |
| 26239 |
BoltonBailey author:BoltonBailey |
feat: add sample pre-commit git hook file |
This PR adds a sample pre-commit git hook file that runs `mk_all` and `lint-style`. The script provides instructions on how to activate these as git hooks. Installing these would be optional, but hopefully people who would install them would find it easier to avoid commits that immediately fail linters.
Discussion of hooks on [Zulip here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Automatic.20setup.20and.20distribution.20of.20git.20hooks/with/525103090).
Some thoughts:
- Perhaps it would be better, for speed, to attempt to avoid certain commands if the staged changes suggest they would be unnecessary.
- i.e. only run linters on files that have been updated / only run `mk_all` if a file has been added or deleted.
---
[](https://gitpod.io/from-referrer/)
|
WIP |
18/0 |
git_hooks/pre-commit |
1 |
1 |
['github-actions'] |
nobody |
269-57167 8 months ago |
269-57167 269 days ago |
0-1331 22 minutes |
| 13964 |
pechersky author:pechersky |
feat(Data/DigitExpansion): begin defining variant of reals without rationals |
Based on a de Bruijn 1976 paper.
This file is just the basic definition of a digit expansion. Will be followed up with further constructions.
---
[](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-67924 8 months ago |
506-7740 506 days ago |
129-57999 129 days |
| 21450 |
eric-wieser author:eric-wieser |
feat: improve trace nodes for `positivity` |
---
[](https://gitpod.io/from-referrer/)
|
t-meta |
25/7 |
Mathlib/Tactic/Positivity/Core.lean |
1 |
1 |
['github-actions'] |
nobody |
267-53946 8 months ago |
unknown |
0-0 0 seconds |
| 26327 |
eric-wieser author:eric-wieser |
chore: split the tests for positivity |
---
[](https://gitpod.io/from-referrer/)
|
|
528/2 |
MathlibTest/Positivity/basic.lean,MathlibTest/positivity.lean |
2 |
1 |
['github-actions'] |
nobody |
266-51963 8 months ago |
unknown |
0-0 0 seconds |
| 18662 |
joelriou author:joelriou |
feat(LinearAlgebra/ExteriorPower): generators of the exterior powers |
---
- [x] depends on: #18534
- [x] depends on: #18590
- [ ] depends on: #26464
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
blocked-by-other-PR
label:t-algebra$ |
818/158 |
Mathlib.lean,Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/Sum/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Generators.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/Span.lean,Mathlib/LinearAlgebra/TensorPower.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean |
15 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
263-20246 8 months ago |
unknown |
0-0 0 seconds |
| 18735 |
joelriou author:joelriou |
feat(Algebra/Module): presentation of the exterior power |
Given a presentation of a `R`-module `M`, we obtain a presentation of `⋀[R]^n M`.
---
(Still one sorry left.)
- [ ] depends on: #18527
- [ ] depends on: #18432
- [ ] depends on: #26464
- [ ] depends on: #18534
- [ ] depends on: #18662
- [x] depends on: #18590
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
blocked-by-other-PR
label:t-algebra$ |
1856/157 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ExteriorPower.lean,Mathlib/Algebra/Module/Presentation/Basic.lean,Mathlib/Algebra/Module/Presentation/ExteriorPower.lean,Mathlib/Algebra/Module/Presentation/PiTensor.lean,Mathlib/Algebra/Module/Presentation/Tensor.lean,Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/Sum/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Generators.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/Span.lean,Mathlib/LinearAlgebra/TensorPower.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean |
20 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
263-16220 8 months ago |
unknown |
0-0 0 seconds |
| 26581 |
nomeata author:nomeata |
ignore this: Lean pr testing 9124 |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
1723/1362 |
Archive/Arithcc.lean,Archive/Examples/Eisenstein.lean,Archive/Examples/IfNormalization/WithoutAesop.lean,Archive/Imo/Imo1972Q5.lean,Archive/Imo/Imo1975Q1.lean,Archive/Imo/Imo1987Q1.lean,Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo1998Q2.lean,Archive/Imo/Imo2006Q5.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2024Q1.lean,Archive/Imo/Imo2024Q3.lean,Archive/Imo/Imo2024Q5.lean,Archive/MiuLanguage/DecisionNec.lean,Archive/MiuLanguage/DecisionSuf.lean,Archive/Sensitivity.lean,Archive/Wiedijk100Theorems/AbelRuffini.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Archive/Wiedijk100Theorems/AscendingDescendingSequences.lean,Archive/Wiedijk100Theorems/BallotProblem.lean,Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Archive/Wiedijk100Theorems/Partition.lean,Archive/Wiedijk100Theorems/PerfectNumbers.lean,Archive/Wiedijk100Theorems/SumOfPrimeReciprocalsDiverges.lean,Archive/ZagierTwoSquares.lean,Cache/Lean.lean,Counterexamples/AharoniKorman.lean,Counterexamples/CanonicallyOrderedCommSemiringTwoMul.lean,Counterexamples/CliffordAlgebraNotInjective.lean,Counterexamples/DiscreteTopologyNonDiscreteUniformity.lean,Counterexamples/MapFloor.lean,Counterexamples/MonicNonRegular.lean,Counterexamples/Phillips.lean,Counterexamples/Pseudoelement.lean,Counterexamples/ZeroDivisorsInAddMonoidAlgebras.lean,Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Algebra/Subalgebra/Operations.lean,Mathlib/Algebra/Algebra/Subalgebra/Pointwise.lean,Mathlib/Algebra/Algebra/Unitization.lean,Mathlib/Algebra/Algebra/ZMod.lean,Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/Category/ContinuousCohomology/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Homology.lean,Mathlib/Algebra/Category/MonCat/FilteredColimits.lean,Mathlib/Algebra/Category/Ring/Epi.lean,Mathlib/Algebra/Category/Ring/FinitePresentation.lean,Mathlib/Algebra/Category/Ring/Topology.lean,Mathlib/Algebra/CharP/Basic.lean,Mathlib/Algebra/CharP/Defs.lean,Mathlib/Algebra/Colimit/Module.lean,Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/Equiv/TransferInstance.lean,Mathlib/Algebra/GCDMonoid/Finset.lean,Mathlib/Algebra/Group/Action/Basic.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Finset/Scalar.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/Algebra/Lie/CartanExists.lean,Mathlib/Algebra/Lie/LieTheorem.lean,Mathlib/Algebra/Lie/Weights/Chain.lean,Mathlib/Algebra/Lie/Weights/RootSystem.lean,Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Module/Presentation/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MonoidAlgebra/ToDirectSum.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Algebra/NoZeroSMulDivisors/Defs.lean,Mathlib/Algebra/Order/Antidiag/Pi.lean,Mathlib/Algebra/Order/CauSeq/Completion.lean,Mathlib/Algebra/Order/Field/Power.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/Algebra/Polynomial/Degree/CardPowDegree.lean,Mathlib/Algebra/Polynomial/HasseDeriv.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/Algebra/Regular/Pi.lean,Mathlib/Algebra/Ring/Basic.lean,Mathlib/Algebra/Ring/CentroidHom.lean,Mathlib/Algebra/Ring/GrindInstances.lean,Mathlib/Algebra/Ring/Int/Defs.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean |
567 |
0 |
[] |
nobody |
258-83749 8 months ago |
unknown |
0-0 0 seconds |
| 15213 |
adomani author:adomani |
dev: add Mathlib.Tactic.Linter.ForallIntro |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-linter
large-import
|
608/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/ForallIntro.lean,MathlibTest/ForallIntro.lean |
5 |
5 |
['adomani', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant'] |
nobody |
255-35721 8 months ago |
unknown |
0-0 0 seconds |
| 17458 |
urkud author:urkud |
refactor(Algebra/Group): make `IsUnit` a typeclass |
Also change some lemmas to assume `[IsUnit _]` instead of `[Invertible _]`.
Motivated by potential non-defeq diamonds in #14986, see also [Zulip](https://leanprover.zulipchat.com/#narrow/stream/116395-maths/topic/Invertible.20and.20data)
I no longer plan to merge this PR, but I'm going to cherry-pick some changes to a new PR before closing this one.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
awaiting-zulip
label:t-algebra$ |
82/72 |
Mathlib/Algebra/CharP/Invertible.lean,Mathlib/Algebra/Group/Invertible/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/GroupWithZero/Invertible.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/Polynomial/Degree/Units.lean,Mathlib/Algebra/Polynomial/Splits.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Analysis/Normed/Affine/Isometry.lean,Mathlib/Analysis/Normed/Ring/Units.lean,Mathlib/CategoryTheory/Linear/Basic.lean,Mathlib/FieldTheory/Finite/Basic.lean,Mathlib/FieldTheory/Separable.lean,Mathlib/FieldTheory/SeparableDegree.lean,Mathlib/GroupTheory/Submonoid/Inverses.lean,Mathlib/LinearAlgebra/AffineSpace/AffineEquiv.lean,Mathlib/LinearAlgebra/AffineSpace/Combination.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Contraction.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Inversion.lean,Mathlib/LinearAlgebra/CliffordAlgebra/SpinGroup.lean,Mathlib/LinearAlgebra/Eigenspace/Minpoly.lean,Mathlib/NumberTheory/MulChar/Basic.lean,Mathlib/RingTheory/Localization/NumDen.lean,Mathlib/RingTheory/Polynomial/Content.lean,Mathlib/RingTheory/Polynomial/GaussLemma.lean,Mathlib/RingTheory/Valuation/Basic.lean |
26 |
12 |
['MichaelStollBayreuth', 'acmepjz', 'eric-wieser', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'urkud'] |
nobody |
255-33497 8 months ago |
526-67540 526 days ago |
0-66650 18 hours |
| 22928 |
javra author:javra |
feat(CategoryTheory): infrastructure for inclusion morphisms into products in categories with 0-morphisms |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-category-theory
|
52/14 |
Mathlib/CategoryTheory/Limits/Shapes/BinaryBiproducts.lean,Mathlib/CategoryTheory/Limits/Shapes/Biproducts.lean,Mathlib/CategoryTheory/Limits/Shapes/ZeroMorphisms.lean |
3 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
255-32991 8 months ago |
367-83563 367 days ago |
0-1295 21 minutes |
| 22952 |
eric-wieser author:eric-wieser |
refactor: reimplement `RingQuot` in terms of `RingCon.Quotient` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
157/184 |
Mathlib/Algebra/RingQuot.lean,Mathlib/GroupTheory/Congruence/Basic.lean,Mathlib/RingTheory/Congruence/Basic.lean,Mathlib/RingTheory/Congruence/Defs.lean |
4 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
255-32990 8 months ago |
unknown |
0-0 0 seconds |
| 24710 |
chrisflav author:chrisflav |
chore(Data/Set): `tsum` version of `Set.encard_iUnion_of_finite` for non-finite types |
As requested here: https://github.com/leanprover-community/mathlib4/pull/23849#discussion_r2081070200
---
- [ ] depends on: #23849
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-data
|
163/0 |
Mathlib.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Data/Set/Card/Arithmetic.lean,Mathlib/Data/Set/Card/InfiniteArithmetic.lean,Mathlib/Data/Set/Finite/Lattice.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean,Mathlib/Topology/Instances/ENat/Lemmas.lean |
7 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
255-32585 8 months ago |
255-32585 255 days ago |
1-80465 1 day |
| 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 |
255-32584 8 months ago |
255-32584 255 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 |
255-32338 8 months ago |
255-32339 255 days ago |
45-4562 45 days |
| 25197 |
eric-wieser author:eric-wieser |
feat: Finset.sum induction for tensor products. |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
large-import
label:t-algebra$ |
81/0 |
Mathlib/LinearAlgebra/TensorProduct/Basic.lean |
1 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
255-32336 8 months ago |
unknown |
0-0 0 seconds |
| 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 |
255-32335 8 months ago |
288-7452 288 days ago |
6-44784 6 days |
| 25247 |
alreadydone author:alreadydone |
Projective contraction |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
160/31 |
Mathlib/Data/Finsupp/Defs.lean,Mathlib/LinearAlgebra/Contraction.lean,Mathlib/LinearAlgebra/Pi.lean,Mathlib/RingTheory/Finiteness/Finsupp.lean |
4 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
255-32332 8 months ago |
293-56086 293 days ago |
0-30 30 seconds |
| 25561 |
callesonne author:callesonne |
feat(Category/Grpd): define the bicategory of groupoids |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-category-theory
|
179/25 |
Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/InducedMaps.lean,Mathlib/CategoryTheory/Bicategory/Functor/Pseudofunctor.lean,Mathlib/CategoryTheory/Bicategory/Functor/Strict.lean,Mathlib/CategoryTheory/Category/Cat.lean,Mathlib/CategoryTheory/Category/Grpd.lean |
6 |
6 |
['callesonne', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'robin-carlier'] |
nobody |
255-32320 8 months ago |
271-70043 271 days ago |
10-56011 10 days |
| 25671 |
eric-wieser author:eric-wieser |
refactor: generalize `OreSet` to work for bimodules |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
large-import
|
243/256 |
Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/GroupTheory/OreLocalization/Basic.lean,Mathlib/GroupTheory/OreLocalization/OreSet.lean,Mathlib/RingTheory/OreLocalization/Ring.lean,Mathlib/RingTheory/TensorProduct/Nontrivial.lean |
6 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
255-32191 8 months ago |
unknown |
0-0 0 seconds |
| 25988 |
Multramate author:Multramate |
refactor(AlgebraicGeometry/EllipticCurve/*): replace Fin 3 with products |
This PR continues the work from #24593.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24593 |
merge-conflict
t-algebraic-geometry
|
1000/1022 |
Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Point.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Point.lean |
6 |
3 |
['Multramate', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
255-32026 8 months ago |
255-32026 255 days ago |
18-21880 18 days |
| 26002 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Monoidal/Action): action of `Type` on categories with coproducts |
We show that if a category admits coproducts of size `w`, then `Type w` acts on the left on that category.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-category-theory
|
213/0 |
Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Action/ChosenTypeCopowers.lean |
2 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
255-32024 8 months ago |
unknown |
0-0 0 seconds |
| 26090 |
grunweg author:grunweg |
chore: make `finiteness` a default tactic |
Opening for discussion.
This PR continues the work from #25119. |
merge-conflict |
423/366 |
Archive/Wiedijk100Theorems/BallotProblem.lean,Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Asymptotics/ExpGrowth.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Convex/Integral.lean,Mathlib/Analysis/Fourier/AddCircle.lean,Mathlib/Analysis/Fourier/AddCircleMulti.lean,Mathlib/Analysis/FunctionalSpaces/SobolevInequality.lean,Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Lp/PiLp.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Analysis/SpecialFunctions/Pow/Continuity.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/ENNReal/Holder.lean,Mathlib/Data/ENNReal/Inv.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/Data/ENNReal/Real.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/EReal/Operations.lean,Mathlib/InformationTheory/KullbackLeibler/Basic.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Function/AEEqOfIntegral.lean,Mathlib/MeasureTheory/Function/ContinuousMapDense.lean,Mathlib/MeasureTheory/Function/ConvergenceInMeasure.lean,Mathlib/MeasureTheory/Function/Egorov.lean,Mathlib/MeasureTheory/Function/Jacobian.lean,Mathlib/MeasureTheory/Function/L1Space/AEEqFun.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/ChebyshevMarkov.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Defs.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Complete.lean,Mathlib/MeasureTheory/Function/LpSpace/Indicator.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean,Mathlib/MeasureTheory/Integral/Prod.lean,Mathlib/MeasureTheory/Integral/RieszMarkovKakutani/Real.lean,Mathlib/MeasureTheory/Measure/Decomposition/IntegralRNDeriv.lean,Mathlib/MeasureTheory/Measure/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/Measure/Haar/Basic.lean,Mathlib/MeasureTheory/Measure/Haar/DistribChar.lean,Mathlib/MeasureTheory/Measure/Haar/Quotient.lean,Mathlib/MeasureTheory/Measure/Haar/Unique.lean,Mathlib/MeasureTheory/Measure/Lebesgue/EqHaar.lean,Mathlib/MeasureTheory/Measure/LevyProkhorovMetric.lean,Mathlib/MeasureTheory/Measure/Real.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/MeasureTheory/Measure/Tilted.lean,Mathlib/MeasureTheory/Measure/Typeclasses/Finite.lean,Mathlib/NumberTheory/NumberField/Discriminant/Basic.lean,Mathlib/Probability/BorelCantelli.lean,Mathlib/Probability/Independence/Conditional.lean,Mathlib/Probability/Integration.lean,Mathlib/Probability/Kernel/Composition/IntegralCompProd.lean,Mathlib/Probability/Kernel/Disintegration/CondCDF.lean,Mathlib/Probability/Kernel/Disintegration/Density.lean,Mathlib/Probability/Martingale/Convergence.lean,Mathlib/Probability/Martingale/OptionalStopping.lean,Mathlib/Probability/Moments/CovarianceBilin.lean,Mathlib/Probability/Moments/Tilted.lean,Mathlib/Probability/Moments/Variance.lean,Mathlib/Probability/UniformOn.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/Perfect.lean,scripts/noshake.json |
73 |
3 |
['github-actions', 'grunweg', 'leanprover-community-bot-assistant'] |
nobody |
255-30036 8 months ago |
271-85744 271 days ago |
0-1118 18 minutes |
| 26465 |
joelriou author:joelriou |
feat(Algebra/Module): presentation of the `PiTensorProduct` |
Given a presentation of a finite number of `R`-modules `M i`, we obtain a presentation of the module `⨂[R] i, M i`.
---
- [ ] depends on: #26464
This PR continues the work from #18527.
Original PR: https://github.com/leanprover-community/mathlib4/pull/18527 |
merge-conflict
file-removed
t-algebra
blocked-by-other-PR
label:t-algebra$ |
525/4 |
Mathlib.lean,Mathlib/Algebra/Module/Presentation/PiTensor.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/Set/ComplSingletonLift.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/TensorPower/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean,Mathlib/SetTheory/Cardinal/Finite.lean |
10 |
4 |
['github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
255-29757 8 months ago |
263-16563 263 days ago |
0-2032 33 minutes |
| 26467 |
joelriou author:joelriou |
feat(LinearAlgebra): the tensor product of a finite family of free modules is free |
---
- [ ] depends on: #26464
- [ ] depends on: #26465
[](https://gitpod.io/from-referrer/)
|
WIP
t-algebra
blocked-by-other-PR
merge-conflict
file-removed
label:t-algebra$ |
607/7 |
Mathlib.lean,Mathlib/Algebra/Module/Presentation/Free.lean,Mathlib/Algebra/Module/Presentation/PiTensor.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/Set/ComplSingletonLift.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basis.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/TensorPower/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean,Mathlib/SetTheory/Cardinal/Finite.lean |
12 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
255-29755 8 months ago |
263-13183 263 days ago |
0-2 2 seconds |
| 20784 |
eric-wieser author:eric-wieser |
fix: prevent `exact?` recursing forever on `n = 55` |
Test case thanks to @llllvvuu:
```lean
import Mathlib.SetTheory.Ordinal.Basic
theorem natCast_inj {m n : ℕ} : (m : Ordinal) = n ↔ m = n := sorry
example (n : Nat) : n = 55 := by
exact?
```
This is surely a workaround for some unreported lean bug. The bug still exists for `n = 71` or higher, so we can still track down the bug after merging this patch.
---
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
22/3 |
Mathlib/SetTheory/Ordinal/Basic.lean,MathlibTest/LibrarySearchRecDepth.lean |
2 |
15 |
['Command-Master', 'eric-wieser', 'github-actions', 'kbuzzard', 'kim-em', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mattrobball'] |
nobody |
255-1020 8 months ago |
254-86327 254 days ago |
32-74826 32 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-83855 8 months ago |
253-83856 253 days ago |
69-52361 69 days |
| 26647 |
b-mehta author:b-mehta |
feat(Data/Sym/Sym2): lift commutative operations to sym2 |
While we have `Sym2.lift`, it's often useful to lift operations which are known to be commutative to the typeclass system. Indeed, the existing `Sym2.mul` witnesses this already. Thus, this PR can also be seen as generalising `Sym2.mul`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-data
|
48/28 |
Mathlib/Data/Sym/Sym2.lean,Mathlib/Data/Sym/Sym2/Finsupp.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/QuadraticForm/Basis.lean |
4 |
12 |
['b-mehta', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
253-35616 8 months ago |
253-54823 253 days ago |
3-72995 3 days |
| 26878 |
adomani author:adomani |
feat: declaration diff script in Lean |
Although, it is still text-based, the parsing of the output of `git diff` is now done in Lean.
The new script already performed better than the old one in a couple of situations:
* #26877
See [this comment](https://github.com/leanprover-community/mathlib4/pull/26847#issuecomment-3045308885)
* #26849
See [this comment](https://github.com/leanprover-community/mathlib4/pull/26849#issuecomment-3045092965)
---
This is still work in progress: the parsing should be more or less done, but I have not yet hooked this into the action workflow.
[](https://gitpod.io/from-referrer/)
|
|
497/0 |
scripts/DeclarationDiff_text_based.lean |
1 |
4 |
['adomani', 'bryangingechen', 'github-actions'] |
bryangingechen assignee:bryangingechen |
252-15547 8 months ago |
252-65498 252 days ago |
0-9 9 seconds |
| 26067 |
mapehe author:mapehe |
feat(Topology/StoneCech): exists_continuous_surjection_from_StoneCech_to_dense_range |
This lemma formalises the following version of the maximality property of the Stone–Čech compactification: If `f : α → β` is a continuous map from a topological space `α` to a Hausdorff space `β` with dense range, then there exists a continuous surjection from `StoneCech α` to `β` extending `f`. In particular, `StoneCech α` is the “largest” compact Hausdorff space into which `α` densely embeds, in the sense that any other such space is a continuous image of it.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-topology
|
18/0 |
Mathlib/Topology/StoneCech.lean |
1 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
252-13404 8 months ago |
252-13404 252 days ago |
20-8582 20 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 |
251-1413 8 months ago |
578-4979 578 days ago |
179-14511 179 days |
| 25999 |
bjoernkjoshanssen author:bjoernkjoshanssen |
feat(Topology/Compactification): projective line over ℝ is homeomorphic to the one-point compactification of ℝ |
This PR continues the work from #18306.
Original PR: https://github.com/leanprover-community/mathlib4/pull/18306 |
merge-conflict
t-topology
|
920/0 |
Mathlib.lean,Mathlib/Topology/Compactification/OnePointHomeomorph.lean,Mathlib/Topology/Compactification/OnePointRealLemmas.lean |
3 |
3 |
['bjoernkjoshanssen', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
250-19478 8 months ago |
252-13406 252 days ago |
21-20473 21 days |
| 26994 |
Paul-Lez author:Paul-Lez |
feat(Topology/MetricSpace/Pseudo/Defs): add easy lemma about opens in topological spaces |
Split from #26992
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-topology
easy
|
9/0 |
Mathlib/Topology/MetricSpace/Pseudo/Defs.lean |
1 |
4 |
['Paul-Lez', 'github-actions', 'grunweg'] |
nobody |
248-80604 8 months ago |
248-82026 248 days ago |
0-11233 3 hours |
| 21039 |
eric-wieser author:eric-wieser |
hack: override `instance` to insert `fast_instance%` |
---
[](https://gitpod.io/from-referrer/)
|
please-adopt
merge-conflict
t-meta
|
40/4 |
Mathlib/Algebra/Equiv/TransferInstance.lean,Mathlib/RingTheory/Ideal/Maximal.lean,Mathlib/Tactic/FastInstance.lean,Mathlib/Topology/FiberBundle/Basic.lean |
4 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
248-62506 8 months ago |
unknown |
0-0 0 seconds |
| 26911 |
JovanGerb author:JovanGerb |
chore: fix naming of `mono` and `monotone` |
The naming convention says:
"We use `_mono` for `a ≤ b → f a ≤ f b` and `_anti` for `a ≤ b → f b ≤ f a`, so we also use `_monotone` for `Monotone f`, `_antitone` for `Antitone f`, `_strictMono` for `StrictMono f`, `_strictAnti` for `StrictAnti f`, etc..."
This PR swaps `mono`/`anti` and `monotone`/`antitone` where required so that `monotone` refers to `Monotone`, while `mono` refers to a lemma that might be tagged with `@[gcongr]`
This PR does not address
- `mul_left_monotone` and `mul_right_monotone` are exactly the wrong way around
- `monotone_right`/`mono_right` vs `right_monotone`/`right_mono`
- `monotone_arcsin` vs `arcsin_monotone`
edit: TODO: `ideal_mono` and friends
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
delegated
|
238/171 |
Archive/Imo/Imo1962Q1.lean,Archive/Wiedijk100Theorems/AbelRuffini.lean,Archive/Wiedijk100Theorems/SumOfPrimeReciprocalsDiverges.lean,Counterexamples/DiscreteTopologyNonDiscreteUniformity.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Group/Basic.lean,Mathlib/Algebra/Order/Group/Finset.lean,Mathlib/Algebra/Order/Group/PosPart.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Pow.lean,Mathlib/Algebra/Order/ToIntervalMod.lean,Mathlib/Algebra/Polynomial/Degree/CardPowDegree.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Basic.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Convex/Deriv.lean,Mathlib/Analysis/Normed/Order/UpperLower.lean,Mathlib/Analysis/PSeries.lean,Mathlib/Analysis/SpecialFunctions/Pow/Continuity.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Analysis/SpecificLimits/FloorPow.lean,Mathlib/Combinatorics/SetFamily/Kleitman.lean,Mathlib/Combinatorics/SimpleGraph/Girth.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Chunk.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Lemma.lean,Mathlib/Computability/Ackermann.lean,Mathlib/Data/ENNReal/Inv.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/Data/Nat/Choose/Factorization.lean,Mathlib/Data/Real/Pi/Bounds.lean,Mathlib/LinearAlgebra/AffineSpace/AffineMap.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Basic.lean,Mathlib/MeasureTheory/Constructions/Polish/Basic.lean,Mathlib/MeasureTheory/MeasurableSpace/MeasurablyGenerated.lean,Mathlib/MeasureTheory/OuterMeasure/Operations.lean,Mathlib/NumberTheory/Bertrand.lean,Mathlib/NumberTheory/FermatPsp.lean,Mathlib/NumberTheory/Padics/Hensel.lean,Mathlib/Order/Concept.lean,Mathlib/Order/Filter/AtTopBot/Defs.lean,Mathlib/Order/Fin/Basic.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/Heyting/Boundary.lean,Mathlib/Order/Heyting/Regular.lean,Mathlib/Order/Hom/Set.lean,Mathlib/Order/Interval/Set/Fin.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Order/UpperLower/Closure.lean,Mathlib/Probability/StrongLaw.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/DedekindDomain/Ideal.lean,Mathlib/RingTheory/FractionalIdeal/Basic.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean,Mathlib/Topology/EMetricSpace/Lipschitz.lean,Mathlib/Topology/MetricSpace/Antilipschitz.lean,Mathlib/Topology/MetricSpace/Holder.lean |
59 |
8 |
['JovanGerb', 'bryangingechen', 'github-actions', 'leanprover-community-bot-assistant', 'linesthatinterlace', 'mathlib-bors'] |
bryangingechen assignee:bryangingechen |
248-41211 8 months ago |
248-82210 248 days ago |
2-53782 2 days |
| 25611 |
erdOne author:erdOne |
chore(RingTheory): add `Algebra (FractionRing R) (FractionRing S)` |
Co-authored-by: Yakov Pechersky
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
152/108 |
Mathlib.lean,Mathlib/Algebra/Algebra/NonZeroDivisors.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/DedekindDomain/IntegralClosure.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/IntegralClosure/IntegralRestrict.lean,Mathlib/RingTheory/Localization/FractionRing.lean,Mathlib/RingTheory/Localization/FractionRingAlgebra.lean,Mathlib/RingTheory/Localization/Integral.lean |
10 |
20 |
['alreadydone', 'erdOne', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'pechersky'] |
nobody |
245-2222 8 months ago |
277-69977 277 days ago |
3-31703 3 days |
| 18230 |
digama0 author:digama0 |
feat(Tactic/ScopedNS): extend `scoped[NS]` to more commands |
refactor `ScopedNS` to remove error prone repetitiveness and extend it to other commands such as `syntax`, `macro`, `elab`, etc.
Co-authored-by: Jon Eugster
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-meta
|
201/26 |
Mathlib/Tactic/ScopedNS.lean,MathlibTest/scopedNS.lean |
2 |
7 |
['adomani', 'digama0', 'eric-wieser', 'github-actions', 'joneugster', 'kbuzzard'] |
nobody |
243-8683 8 months ago |
386-8188 386 days ago |
31-68555 31 days |
| 27330 |
BoltonBailey author:BoltonBailey |
feat(Tactic/Linter): add TacticMs for natural subtraction and division |
This is a (pair of) short tactic scripts I wrote for Project Numina while vetting formal formal statements (thanks to [this guide](https://github.com/mirefek/lean-tactic-programming-guide) for the primer). The scripts check for the presence of natural subtraction and natural division, which can often lead to mistakes.
Of course, Mathlib allows natural subtraction freely, so it's not obvious this could be made useful to Mathlib itself. Still, maybe it's of use to some other project, so I'll leave it here.
---
[](https://gitpod.io/from-referrer/)
|
t-linter |
66/0 |
Mathlib/Tactic/Linter/TruncatedNat.lean |
1 |
2 |
['BoltonBailey', 'eric-wieser', 'github-actions'] |
nobody |
238-39208 7 months ago |
unknown |
0-0 0 seconds |
| 25284 |
alreadydone author:alreadydone |
feat(LinearAlgebra/Contraction): bijectivity of `dualTensorHom` + generalize to CommSemiring |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
167/32 |
Mathlib/Data/Finsupp/Defs.lean,Mathlib/LinearAlgebra/Contraction.lean,Mathlib/LinearAlgebra/Pi.lean,Mathlib/LinearAlgebra/Trace.lean,Mathlib/RingTheory/Finiteness/Finsupp.lean |
5 |
16 |
['alreadydone', 'eric-wieser', 'github-actions', 'kckennylau', 'leanprover-bot', 'leanprover-community-bot-assistant'] |
nobody |
237-53162 7 months ago |
244-18929 244 days ago |
45-38763 45 days |
| 22749 |
joelriou author:joelriou |
feat(CategoryTheory/Abelian): the Gabriel-Popescu theorem as a localization with respect to a Serre class |
This PR introduces a structure `GabrielPopescuPackage C` which contains the information to say that the abelian category `C` is a localization of a category of modules with respect to a suitable Serre class.
---
- [x] depends on: #26033
- [ ] depends on: #26663
- [x] depends on: #22733
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-category-theory
|
202/6 |
Mathlib.lean,Mathlib/CategoryTheory/Abelian/GrothendieckCategory/ModuleEmbedding/GabrielPopescu.lean,Mathlib/CategoryTheory/Abelian/SerreClass/Bousfield.lean,Mathlib/CategoryTheory/Abelian/SerreClass/MorphismProperty.lean,Mathlib/CategoryTheory/ObjectProperty/ContainsZero.lean |
5 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
237-10048 7 months ago |
256-82164 256 days ago |
0-10699 2 hours |
| 26784 |
eric-wieser author:eric-wieser |
chore: remove suppress_compilation |
Still not exhaustive.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
0/37 |
Mathlib/Algebra/Category/CoalgCat/ComonEquivalence.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/Colimit/DirectLimit.lean,Mathlib/Algebra/Colimit/Module.lean,Mathlib/Algebra/Colimit/Ring.lean,Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/Analysis/Normed/Algebra/Unitization.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean,Mathlib/Analysis/NormedSpace/Multilinear/Curry.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/Basic.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/Bilinear.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/Completeness.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/Mul.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/NNNorm.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/NormedSpace.lean,Mathlib/CategoryTheory/Abelian/Projective/Resolution.lean,Mathlib/CategoryTheory/Monoidal/Internal/Module.lean |
18 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
236-68709 7 months ago |
unknown |
0-0 0 seconds |
| 26987 |
joelriou author:joelriou |
chore: deprecating module LinearAlgebra.PiTensorProduct |
---
- [ ] depends on: #26464
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
blocked-by-other-PR
label:t-algebra$ |
1209/934 |
Mathlib.lean,Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/Data/SubtypeNeLift.lean,Mathlib/LinearAlgebra/PiTensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Finite.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/TensorPower/Basic.lean,Mathlib/RingTheory/PiTensorProduct.lean,Mathlib/SetTheory/Cardinal/Finite.lean |
10 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
236-11061 7 months ago |
249-12827 249 days ago |
0-2 2 seconds |
| 27435 |
callesonne author:callesonne |
feat(Normed/Algebra/Logarithm): add FormalMultilinearSeries of logarithm around `1` |
This PR adds the `FormalMultilinearSeries` corresponding to `log` around `1` (or rather, corresponding to `log(1 + x)`. For now, this PR just adds the definition, and copies over as many (easy) results as possible from the corresponding exponential file.
In a follow up PR, we will add a criterion for when the logarithm converges on the unit disk (based on the growth of the inverse norms of naturals in the given algebra), and show that this holds for any Q_p algebra.
This work has been done as part of the workshop "Formalizing Class Field Theory" in Oxford.
Since much of this is copy-pasting the Exponential file, I have kept Anatole Dedecker and Eric Wieser as coauthors.
---
[](https://gitpod.io/from-referrer/)
|
WIP
t-analysis
|
311/0 |
Mathlib/Analysis/Normed/Algebra/Logarithm.lean |
1 |
1 |
['github-actions'] |
nobody |
235-76316 7 months ago |
235-76654 235 days ago |
0-29 29 seconds |
| 24668 |
robertmaxton42 author:robertmaxton42 |
feat(LinearAlgebra): add inductive principle for the free product of algebras |
* Add `FreeProduct.inductionOn` and `.asPowers.inductionOn`.
- [ ] depends on: #24532
---
* `simp↓` on `empty_rel'_bot`: the LHS is indeed not in simp-normal form, but `simp` can't solve the full lemma (if only because `Function.onFun` isn't marked `@[simp]`) and the actual simp-normal form of `rel'` isn't terribly useful for humans. Since I do expect users to type `rel' R A` by hand, I claim this use of `simp↓` is justified.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
blocked-by-other-PR
label:t-algebra$ |
205/9 |
Mathlib/LinearAlgebra/FreeProduct/Basic.lean |
1 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
234-40630 7 months ago |
313-52735 313 days ago |
0-328 5 minutes |
| 13973 |
digama0 author:digama0 |
feat: lake exe refactor, initial framework |
This is the initial framework code for `lake exe refactor`. To use it, you add your refactoring to `Refactor/Main.lean` (note, you have to actually write some metaprogramming code here for the refactoring itself), and the harness will run it on specified files and apply the generated edits.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-meta
|
139/0 |
Refactor/Main.lean,lakefile.lean |
2 |
11 |
['adomani', 'digama0', 'eric-wieser', 'github-actions', 'joneugster', 'leanprover-community-bot-assistant', 'mattrobball'] |
nobody |
230-80621 7 months ago |
579-84074 579 days ago |
6-30547 6 days |
| 12181 |
adomani author:adomani |
lint also `let` vs `have` |
This PR is symmetrical to #12157: here we lint for non-`Type`-valued `let`s.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-linter
|
797/544 |
Archive/Imo/Imo1962Q1.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Mathlib.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/BigOperators/Basic.lean,Mathlib/Algebra/DirectLimit.lean,Mathlib/Algebra/Group/UniqueProds.lean,Mathlib/Algebra/Homology/HomologicalComplexBiprod.lean,Mathlib/Algebra/Homology/HomologySequence.lean,Mathlib/Algebra/Homology/HomotopyCategory/Pretriangulated.lean,Mathlib/Algebra/Homology/Localization.lean,Mathlib/Algebra/Homology/ShortComplex/Abelian.lean,Mathlib/Algebra/Homology/ShortComplex/ConcreteCategory.lean,Mathlib/Algebra/Homology/ShortComplex/Exact.lean,Mathlib/Algebra/Homology/ShortComplex/ExactFunctor.lean,Mathlib/Algebra/Homology/ShortComplex/Homology.lean,Mathlib/Algebra/Homology/ShortComplex/LeftHomology.lean,Mathlib/Algebra/Homology/ShortComplex/Linear.lean,Mathlib/Algebra/Homology/ShortComplex/Preadditive.lean,Mathlib/Algebra/Homology/ShortComplex/PreservesHomology.lean,Mathlib/Algebra/Homology/ShortComplex/QuasiIso.lean,Mathlib/Algebra/Homology/ShortComplex/RightHomology.lean,Mathlib/Algebra/Lie/Engel.lean,Mathlib/Algebra/Lie/Killing.lean,Mathlib/Algebra/Module/PID.lean,Mathlib/Algebra/Module/Submodule/Localization.lean,Mathlib/Algebra/Module/Zlattice.lean,Mathlib/Algebra/MonoidAlgebra/Grading.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/RingDivision.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiCompact.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiSeparated.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicGeometry/Pullbacks.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/AlgebraicTopology/DoldKan/Homotopies.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/Rademacher.lean,Mathlib/Analysis/Complex/Tietze.lean,Mathlib/Analysis/Convex/Between.lean,Mathlib/Analysis/Convolution.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Analysis/InnerProductSpace/GramSchmidtOrtho.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/InnerProductSpace/Rayleigh.lean,Mathlib/Analysis/NormedSpace/ContinuousAffineMap.lean,Mathlib/Analysis/NormedSpace/OperatorNorm/Completeness.lean,Mathlib/Analysis/NormedSpace/Spectrum.lean,Mathlib/Analysis/SpecialFunctions/Integrals.lean,Mathlib/CategoryTheory/Abelian/Basic.lean,Mathlib/CategoryTheory/Abelian/Exact.lean,Mathlib/CategoryTheory/Abelian/Pseudoelements.lean,Mathlib/CategoryTheory/Abelian/Transfer.lean,Mathlib/CategoryTheory/Adhesive.lean,Mathlib/CategoryTheory/Closed/Cartesian.lean,Mathlib/CategoryTheory/Closed/Monoidal.lean,Mathlib/CategoryTheory/Comma/Arrow.lean,Mathlib/CategoryTheory/EffectiveEpi/Extensive.lean,Mathlib/CategoryTheory/Extensive.lean,Mathlib/CategoryTheory/Functor/EpiMono.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Galois/Basic.lean,Mathlib/CategoryTheory/Galois/Decomposition.lean,Mathlib/CategoryTheory/Galois/Examples.lean,Mathlib/CategoryTheory/GradedObject/Trifunctor.lean,Mathlib/CategoryTheory/IsConnected.lean,Mathlib/CategoryTheory/Limits/ConcreteCategory.lean,Mathlib/CategoryTheory/Limits/Constructions/EpiMono.lean,Mathlib/CategoryTheory/Limits/Constructions/WeaklyInitial.lean,Mathlib/CategoryTheory/Limits/FilteredColimitCommutesFiniteLimit.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/FintypeCat.lean,Mathlib/CategoryTheory/Limits/Fubini.lean,Mathlib/CategoryTheory/Limits/IsLimit.lean,Mathlib/CategoryTheory/Limits/Preserves/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/FiniteLimits.lean,Mathlib/CategoryTheory/Limits/VanKampen.lean,Mathlib/CategoryTheory/Localization/LocalizerMorphism.lean,Mathlib/CategoryTheory/Localization/Pi.lean,Mathlib/CategoryTheory/Localization/Resolution.lean,Mathlib/CategoryTheory/Monad/Monadicity.lean,Mathlib/CategoryTheory/PUnit.lean,Mathlib/CategoryTheory/Sites/Coherent/CoherentSheaves.lean,Mathlib/CategoryTheory/Sites/Coherent/RegularSheaves.lean,Mathlib/CategoryTheory/Sites/Coverage.lean,Mathlib/CategoryTheory/Sites/LeftExact.lean,Mathlib/CategoryTheory/Sites/Preserves.lean,Mathlib/CategoryTheory/Sites/Pullback.lean,Mathlib/CategoryTheory/Sites/Sheaf.lean,Mathlib/CategoryTheory/Triangulated/Pretriangulated.lean,Mathlib/Combinatorics/Colex.lean,Mathlib/Combinatorics/SetFamily/Kleitman.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/Coloring.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity.lean |
271 |
0 |
[] |
nobody |
229-4537 7 months ago |
700-13471 700 days ago |
0-8 8 seconds |
| 10190 |
jstoobysmith author:jstoobysmith |
feat(AlgebraicTopology): add Augmented Simplex Category |
- Added the definition of the category FinLinOrd of finite linear ordered sets.
- Added the definition of the augmented simplex category `AugmentedSimplexCategory`, and showed it is the Skeleton of FinLinOrd.
- Showed that the category of augmented simplicial objects defined as a comma category is equivalent to the category of functors from `AugmentedSimplexCategory^\op`
---
[](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 |
229-4475 7 months ago |
765-83801 765 days ago |
7-63253 7 days |
| 10084 |
alreadydone author:alreadydone |
draft for Van Kampen |
The part about the homotopy lifting property for covering maps has been extracted to #22649
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebraic-topology
|
91/24 |
Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/VanKampen.lean |
2 |
1 |
['leanprover-community-bot-assistant'] |
nobody |
229-4384 7 months ago |
unknown |
0-0 0 seconds |
| 25914 |
eric-wieser author:eric-wieser |
feat: add an ext lemma for the opposite category |
This powers up `aesop_cat`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-category-theory
awaiting-CI
|
18/56 |
Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/CategoryTheory/Abelian/Opposite.lean,Mathlib/CategoryTheory/Category/RelCat.lean,Mathlib/CategoryTheory/GuitartExact/Opposite.lean,Mathlib/CategoryTheory/Limits/Opposites.lean,Mathlib/CategoryTheory/Limits/Shapes/Products.lean,Mathlib/CategoryTheory/Opposites.lean,Mathlib/CategoryTheory/Triangulated/Opposite/Functor.lean,Mathlib/Combinatorics/Quiver/Basic.lean |
9 |
7 |
['eric-wieser', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'robin-carlier'] |
nobody |
229-2118 7 months ago |
274-73609 274 days ago |
0-1208 20 minutes |
| 20208 |
js2357 author:js2357 |
feat: Define the localization of a fractional ideal at a prime ideal |
Define the localization of a fractional ideal at a prime ideal, and prove some basic properties.
---
Alternate version of #14237 generalized to use `IsLocalization` and `IsFractionRing` rather than `Localization.AtPrime` and `FractionRing`
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
label:t-algebra$ |
248/0 |
Mathlib.lean,Mathlib/RingTheory/FractionalIdeal/LocalizedAtPrime.lean |
2 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
228-73761 7 months ago |
448-54862 448 days ago |
0-21 21 seconds |
| 24260 |
plp127 author:plp127 |
feat(Topology): add API for Hereditarily Lindelof spaces |
Copies the stuff about Lindelof spaces to Hereditarily Lindelof spaces.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-topology
|
222/42 |
Mathlib/Topology/Compactness/Lindelof.lean |
1 |
15 |
['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot', 'urkud'] |
urkud assignee:urkud |
228-43333 7 months ago |
300-3973 300 days ago |
29-42365 29 days |
| 27181 |
ADedecker author:ADedecker |
chore: more conceptual definition of `ValuativeRel.ValueGroupWithZero` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
large-import
label:t-algebra$ |
685/467 |
Mathlib.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Congruence/GroupWithZero.lean,Mathlib/RingTheory/OreLocalization/Basic.lean,Mathlib/RingTheory/OreLocalization/NonZeroDivisors.lean,Mathlib/RingTheory/OreLocalization/Ring.lean,Mathlib/RingTheory/Valuation/ValuativeRel.lean |
9 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] |
nobody |
228-43322 7 months ago |
unknown |
0-0 0 seconds |
| 27813 |
javra author:javra |
feat: IMO 2025 Q1 |
---
[](https://gitpod.io/from-referrer/)
|
IMO
WIP
|
882/0 |
Archive/Imo/Imo2025Q1.lean |
1 |
1 |
['github-actions'] |
nobody |
228-5343 7 months ago |
228-6541 228 days ago |
0-14 14 seconds |
| 27608 |
RemyDegenne author:RemyDegenne |
feat(MeasureTheory): typeclasses for measures with finite moments |
WIP because it seems useful for #26291 but I want to investigate more.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-measure-probability
|
97/17 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/Typeclasses/FiniteMoments.lean,Mathlib/Probability/Moments/CovarianceBilin.lean |
3 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
227-78198 7 months ago |
231-62062 231 days ago |
0-1 1 second |
| 20008 |
FLDutchmann author:FLDutchmann |
feat(NumberTheory): Selberg sieve |
This PR is a working draft of the full proof of the fundamental theorem of the Selberg sieve. I will create dependent PRs as I clean up the code.
This work was used in the first proof of the prime number theorem in PNT+.
---
- [x] depends on: #20025
- [x] depends on: #20026
- [x] depends on: #20779
- [x] depends on: #21880
- [ ] depends on: #27702
- [ ] depends on: #27707
[](https://gitpod.io/from-referrer/)
|
t-number-theory
blocked-by-other-PR
merge-conflict
awaiting-author
t-analysis
|
937/0 |
Mathlib/NumberTheory/SelbergSieve/Basic.lean,Mathlib/NumberTheory/SelbergSieve/Selberg.lean,docs/references.bib |
3 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
227-76043 7 months ago |
unknown |
0-0 0 seconds |
| 27826 |
xgenereux author:xgenereux |
feat(Subsemiring): mk_eq_zero |
Add a `mk_eq_zero` lemma for `Subsemiring`.
---
[](https://gitpod.io/from-referrer/)
|
WIP
t-algebra
label:t-algebra$ |
4/0 |
Mathlib/Algebra/Ring/Subsemiring/Defs.lean |
1 |
3 |
['eric-wieser', 'github-actions', 'xgenereux'] |
nobody |
227-73225 7 months ago |
227-76307 227 days ago |
0-8982 2 hours |
| 27225 |
eric-wieser author:eric-wieser |
refactor(Tactic/Lift): deprecate the third with argument |
We already have a number of tactics where the clearing happens all the time, and you have to opt out with `id h`.
This also fixes a bug where `lift z to Nat with n hn this_is_unused` would silently ignore `this_is_unused`.
---
- [ ] depends on: #27223
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-meta
|
21/9 |
Mathlib/Tactic/Lift.lean,MathlibTest/lift.lean |
2 |
8 |
['JovanGerb', 'adomani', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'vihdzp'] |
JovanGerb assignee:JovanGerb |
226-39244 7 months ago |
226-86144 226 days ago |
15-64386 15 days |
| 26383 |
eric-wieser author:eric-wieser |
feat: `Real.sin_eq_one_iff` and similar |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-analysis
|
155/101 |
Mathlib/Algebra/ModEq.lean,Mathlib/Analysis/SpecialFunctions/Complex/Log.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Angle.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Complex.lean |
5 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
225-11026 7 months ago |
unknown |
0-0 0 seconds |
| 25991 |
Multramate author:Multramate |
feat(AlgebraicGeometry/EllipticCurve): generalise nonsingular condition |
This PR continues the work from #25219.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25219 |
merge-conflict
t-algebraic-geometry
|
2127/1561 |
Mathlib/Algebra/Group/Units/Basic.lean,Mathlib/Algebra/Group/Units/Hom.lean,Mathlib/Algebra/Module/PID.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Point.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Point.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Span.lean |
15 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
225-10908 7 months ago |
255-32025 255 days ago |
18-21743 18 days |
| 25986 |
Multramate author:Multramate |
feat(AlgebraicGeometry/EllipticCurve/NumberField/Height): define heights on Weierstrass curves |
This PR continues the work from #15786.
Original PR: https://github.com/leanprover-community/mathlib4/pull/15786 |
t-algebraic-geometry |
650/0 |
Mathlib/AlgebraicGeometry/EllipticCurve/NumberField/Height.lean |
1 |
2 |
['Multramate', 'github-actions'] |
nobody |
225-10901 7 months ago |
unknown |
0-0 0 seconds |
| 25985 |
Multramate author:Multramate |
feat(AlgebraicGeometry/EllipticCurve/Jacobian): add equivalences between points and explicit WithZero types |
This PR continues the work from #14923.
Original PR: https://github.com/leanprover-community/mathlib4/pull/14923 |
merge-conflict
t-algebraic-geometry
|
262/66 |
Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Group.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean,scripts/style-exceptions.txt |
4 |
1 |
['Multramate'] |
nobody |
225-10896 7 months ago |
273-54114 273 days ago |
0-48 48 seconds |
| 25982 |
Multramate author:Multramate |
feat(AlgebraicGeometry/EllipticCurve/Group): compute range of baseChange |
This PR continues the work from #10142.
Original PR: https://github.com/leanprover-community/mathlib4/pull/10142 |
merge-conflict
t-algebraic-geometry
|
421/212 |
Mathlib/AlgebraicGeometry/EllipticCurve/Affine.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Group.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Weierstrass.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/Subgroup/Basic.lean,Mathlib/GroupTheory/Submonoid/Operations.lean |
6 |
1 |
['Multramate'] |
nobody |
225-10882 7 months ago |
273-54281 273 days ago |
0-51 51 seconds |
| 25427 |
Paul-Lez author:Paul-Lez |
feat(Analysis/Calculus/PartialDerivatives): Propose notation for partial derivatives. |
This PR introduces a notation for partial derivatives, taken with respect to a canonical basis. The idea here is that this might be useful for e.g. writing down PDEs. The notation allows use to write things like
```lean
-- The canonical basis for `ℝ × ℝ` is indexed by `Fin 0` so `∂₀[ℝ]` corresponds to taking
-- the first partial derivative
example : (∂₀[ℝ] fun (x : ℝ × ℝ) => x.1) 0 = 1 := by
simp [Pi.zero_def, lineDeriv]
```
This has already been discussed on Zulip [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Partial.20derivatives).
I've opened this PR as a draft in order to get preliminary feedback on the contents (e.g. is this appropriate for Mathlib?); the file contains some demos of the notation in action.
Co-authored-by: Eric Wieser
---
- [ ] depends on: #25425
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-analysis
|
195/0 |
Mathlib.lean,Mathlib/Analysis/Calculus/PartialDerivatives/Notation.lean,Mathlib/LinearAlgebra/Basis/HasCanonicalBasis.lean |
3 |
16 |
['Paul-Lez', 'github-actions', 'leanprover-community-bot-assistant', 'lecopivo', 'mathlib4-dependent-issues-bot', 'ocfnash'] |
nobody |
225-10681 7 months ago |
unknown |
0-0 0 seconds |
| 25425 |
Paul-Lez author:Paul-Lez |
feat(LinearAlgebra/Basis/HasCanonicalBasis): propose `HasCanonicalBasis` class |
Context: in some cases, e.g. writing down PDEs, having a notion of partial derivatives can be useful. In an ideal world (as mentioned by @ocfnash in [this Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Partial.20derivatives/with/463936246)), one could write something along the lines of `open scoped PartialDerivatives` in order to access nice notation for this.
This PR introduces a notion of a canonical basis for a module in order to allow taking partial derivatives with respect to it.
A later PR (which I am about open) would then propose a notation for taking partial derivatives (defined using `lineDeriv` in order to avoid requiring Frechet-differentiability assumptions). The goal here is to have notation that works equally well on e.g. `𝕜 × 𝕜` and `EuclideanSpace 𝕜 (Fin 2)` and so on.
I've opened this PR as a draft in order to get some initial feedback on the content (and whether this is considered appropriate for Mathlib!); the file itself would need to be split (e.g. the instances defined should probably go in different files)
Co-authored-by: Eric Wieser
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
105/0 |
Mathlib.lean,Mathlib/LinearAlgebra/Basis/HasCanonicalBasis.lean |
2 |
2 |
['github-actions', 'leanprover-community-bot-assistant'] |
nobody |
225-10676 7 months ago |
unknown |
0-0 0 seconds |
| 25362 |
adomani author:adomani |
feat: a linter for duplicated `open` |
This linter warns when a namespace is repeated.
It makes an effort to report only the problematic namespaces, but is not especially robust. The linter has some awareness of the `namespace` command, so
```lean
def X.Y := 0
open X
namespace X
open Y
```
will flag both `namespace X` and `open Y` as problematic, even though it was the `open `X` that became redundant with `namespace X`.
However, I will not have much time to devote to polishing this and there are quite a few exception in Mathlib before a better version could be seriously considered for adoption.
[#mathlib4 > linter requests @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/linter.20requests/near/520273644)
---
[](https://gitpod.io/from-referrer/)
|
please-adopt
merge-conflict
t-linter
large-import
|
191/94 |
Mathlib.lean,Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/GroupWithZero/Pi.lean,Mathlib/Algebra/Order/Ring/InjSurj.lean,Mathlib/CategoryTheory/Functor/ReflectsIso/Basic.lean,Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Finite/Defs.lean,Mathlib/Data/Ineq.lean,Mathlib/Data/List/Lemmas.lean,Mathlib/Data/List/NatAntidiagonal.lean,Mathlib/Data/Nat/Choose/Basic.lean,Mathlib/Data/Nat/Prime/Basic.lean,Mathlib/Data/Nat/Prime/Defs.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Init.lean,Mathlib/Logic/Basic.lean,Mathlib/Logic/Embedding/Set.lean,Mathlib/Logic/Pairwise.lean,Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/Order/WithBot.lean,Mathlib/RingTheory/OreLocalization/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ApplyFun.lean,Mathlib/Tactic/Bound.lean,Mathlib/Tactic/CongrM.lean,Mathlib/Tactic/Find.lean,Mathlib/Tactic/Lift.lean,Mathlib/Tactic/Linarith/Oracle/FourierMotzkin.lean,Mathlib/Tactic/Linter.lean,Mathlib/Tactic/Linter/DupOpen.lean,Mathlib/Tactic/NormNum/PowMod.lean,Mathlib/Tactic/Recover.lean,Mathlib/Tactic/ReduceModChar.lean,Mathlib/Tactic/Widget/Calc.lean,Mathlib/Tactic/Widget/SelectInsertParamsClass.lean,Mathlib/Tactic/Widget/StringDiagram.lean,Mathlib/Topology/CWComplex/Abstract/Basic.lean,Mathlib/Topology/ContinuousMap/Interval.lean,Mathlib/Topology/Germ.lean,Mathlib/Topology/Homotopy/HSpaces.lean,Mathlib/Topology/Order/LowerUpperTopology.lean,Mathlib/Topology/Order/PartialSups.lean,Mathlib/Topology/Separation/DisjointCover.lean,Mathlib/Topology/Sheaves/Sheafify.lean,Mathlib/Util/CountHeartbeats.lean,MathlibTest/DupOpen.lean |
47 |
14 |
['adomani', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] |
nobody |
225-10671 7 months ago |
288-4453 288 days ago |
0-23 23 seconds |
| 25238 |
Hagb author:Hagb |
feat(Tactic/ComputeDegree): add support for scalar multiplication with different types |
It would be able to deal with `a • (X : R[X])` where `a : S` is in a different type `S` with `[SMulZeroClass S R]`.
---
- [x] depends on: #25237
[](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 |
225-10666 7 months ago |
255-32335 255 days ago |
38-26044 38 days |
| 17145 |
Command-Master author:Command-Master |
feat(Archive/Ioi/Ioi2024Q2): a proof of the solution of question 2 from IOI 2024. |
---
- [x] depends on: #17189
- [x] depends on: #17190
- [x] depends on: #17191
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
IMO
large-import
|
1013/1 |
Archive.lean,Archive/Ioi/Ioi2024Q2.lean,Mathlib.lean,Mathlib/Combinatorics/Orbits.lean,Mathlib/Data/List/SplitLengths.lean,Mathlib/Data/List/Transpose.lean,Mathlib/Data/List/Zip.lean,Mathlib/Data/Vector/Basic.lean,Mathlib/Data/Vector/Defs.lean,Mathlib/Data/Vector/MapLemmas.lean,Mathlib/Data/Vector/Transpose.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/Logic/Function/Iterate.lean,Mathlib/Order/Antisymmetrization.lean,Mathlib/Order/Partition/Finpartition.lean |
15 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
225-10626 7 months ago |
unknown |
0-0 0 seconds |
| 27643 |
ADedecker author:ADedecker |
Ad bdd unif conv |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
111/26 |
Mathlib/Analysis/LocallyConvex/Bounded.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean,Mathlib/Topology/Algebra/Module/UniformConvergence.lean,Mathlib/Topology/Bornology/Absorbs.lean |
4 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
224-75785 7 months ago |
unknown |
0-0 0 seconds |
| 26385 |
jjdishere author:jjdishere |
feat(RingTheory/Perfectoid): define integral perfectoid rings |
This PR continues the work from #22331.
Original PR: https://github.com/leanprover-community/mathlib4/pull/22331 |
merge-conflict
WIP
t-ring-theory
|
1081/15 |
Mathlib.lean,Mathlib/Algebra/Ring/Aut.lean,Mathlib/FieldTheory/Perfect.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Quotient/Defs.lean,Mathlib/RingTheory/Ideal/Quotient/PowTransition.lean,Mathlib/RingTheory/Perfection.lean,Mathlib/RingTheory/Perfectoid/BDeRham.lean,Mathlib/RingTheory/Perfectoid/FontaineTheta.lean,Mathlib/RingTheory/Perfectoid/IntergalPerfectoid.lean,Mathlib/RingTheory/Perfectoid/Untilt.lean,Mathlib/RingTheory/WittVector/Basic.lean,Mathlib/RingTheory/WittVector/Complete.lean,Mathlib/RingTheory/WittVector/TeichmullerSeries.lean,docs/references.bib |
16 |
3 |
['github-actions', 'jjdishere', 'leanprover-community-bot-assistant'] |
nobody |
224-13093 7 months ago |
265-37516 265 days ago |
0-79 1 minute |
| 22909 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(RingTheory/Pure): pure submodules |
A submodule `N` of an `R`-module is *pure* if all maps `S ⊗[R] N → S ⊗[R] M`
deduced by base change from the injection of `N` into `M` are injective,
for all `R`-algebras `S`.
This is expressed by the class `Submodule.IsPure`.
For type theoretic reason, the definition of `Submodule.IsPure` only considers
algebras `S` in the same universe as `R`, but `Submodule.IsPure.baseChange_injective`
establishes the property for all universes.
* `Submodule.IsComplemented.isPure` : a complemented submodule is pure.
Co-authored with @mariainesdff
---
- [ ] depends on: #22898
- [ ] depends on: #22908
- [x] depends on: #22911
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-ring-theory
blocked-by-other-PR
|
592/3 |
Mathlib.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/RingTheory/Adjoin/FG.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Finiteness/Cardinality.lean,Mathlib/RingTheory/Finiteness/Small.lean,Mathlib/RingTheory/Pure.lean,Mathlib/RingTheory/Spectrum/Prime/RingHom.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/DirectLimit/FG.lean,Mathlib/RingTheory/TensorProduct/DirectLimit/Small.lean |
11 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
224-12808 7 months ago |
368-50014 368 days ago |
0-1047 17 minutes |
| 22908 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(RingTheory/Finiteness/Small): tensor product of the system of small submodules |
The directed limit of a tensor product for the directed system of small submodules.
Co-authored with @mariainesdff
---
- [ ] depends on: #22898
- [x] depends on: #22911
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-ring-theory
blocked-by-other-PR
|
624/2 |
Mathlib.lean,Mathlib/RingTheory/Adjoin/FG.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Finiteness/Cardinality.lean,Mathlib/RingTheory/Finiteness/Small.lean,Mathlib/RingTheory/Spectrum/Prime/RingHom.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/DirectLimit/FG.lean,Mathlib/RingTheory/TensorProduct/DirectLimit/Small.lean |
9 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
224-12760 7 months ago |
368-50013 368 days ago |
0-3552 59 minutes |
| 22898 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(RingTheory/TensorProduct/DirectLimit/FG): direct limit of finitely generated submodules and tensor product |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-ring-theory
|
399/0 |
Mathlib.lean,Mathlib/RingTheory/Adjoin/FG.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/DirectLimit/FG.lean |
5 |
9 |
['AntoineChambert-Loir', 'alreadydone', 'github-actions', 'leanprover-community-bot-assistant'] |
nobody |
224-12753 7 months ago |
358-45046 358 days ago |
10-44563 10 days |
| 20431 |
erdOne author:erdOne |
feat(RingTheory/AdicCompletion): monotonicity of adic-completeness |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-ring-theory
|
206/16 |
Mathlib.lean,Mathlib/Algebra/Module/Submodule/Defs.lean,Mathlib/Algebra/Module/Submodule/Pointwise.lean,Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/Mono.lean,Mathlib/RingTheory/Finiteness/Ideal.lean |
7 |
13 |
['chrisflav', 'erdOne', 'github-actions'] |
nobody |
224-12709 7 months ago |
400-11743 400 days ago |
32-79324 32 days |
| 19596 |
Command-Master author:Command-Master |
feat(RingTheory/Valuation/PrimeMultiplicity): define `WithTop ℤ`-valued prime multiplicity on a fraction field |
Moves:
- `multiplicity_addValuation` -> `AddValuation.multiplicity`
- `multiplicity_addValuation_apply` -> `AddValuation.multiplicity_apply`
---
- [x] depends on: #19149
- [x] depends on: #18786
- [x] depends on: #19122
- [x] depends on: #18954
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-ring-theory
large-import
|
101/37 |
Mathlib/Data/ENat/Basic.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/Valuation/PrimeMultiplicity.lean |
3 |
11 |
['ChrisHughes24', 'Command-Master', 'Vierkantor', 'faenuccio', 'github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
224-12694 7 months ago |
428-75028 428 days ago |
8-2214 8 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 |
224-12687 7 months ago |
497-21256 497 days ago |
0-1609 26 minutes |
| 17246 |
pechersky author:pechersky |
feat(RingTheory/PrimaryDecomposition): PIR of Noetherian under jacobson condition |
---
- [x] depends on: #17634
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-ring-theory
|
653/1 |
Mathlib.lean,Mathlib/NumberTheory/KummerDedekind.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/Jacobson/Ideal.lean,Mathlib/RingTheory/PrimaryDecomposition.lean,docs/references.bib |
8 |
8 |
['erdOne', 'github-actions', 'mathlib4-dependent-issues-bot'] |
erdOne assignee:erdOne |
224-12681 7 months ago |
485-34574 485 days ago |
13-6188 13 days |
| 21474 |
erdOne author:erdOne |
feat(RingTheory): replace `Ring.DimensionLEOne` with `Ring.KrullDimLE` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-ring-theory
large-import
|
285/170 |
Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Basic.lean,Mathlib/RingTheory/DedekindDomain/Dvr.lean,Mathlib/RingTheory/DedekindDomain/Ideal.lean,Mathlib/RingTheory/DiscreteValuationRing/TFAE.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/KrullDimension/Basic.lean,Mathlib/RingTheory/KrullDimension/Localization.lean,Mathlib/RingTheory/KrullDimension/Polynomial.lean,Mathlib/RingTheory/KrullDimension/Quotient.lean,Mathlib/RingTheory/LocalRing/ResidueField/Basic.lean,Mathlib/RingTheory/Nilpotent/End.lean,Mathlib/RingTheory/Nilpotent/Lemmas.lean,Mathlib/RingTheory/PID/Quotient.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean,Mathlib/RingTheory/Spectrum/Maximal/Localization.lean |
16 |
1 |
['github-actions'] |
nobody |
224-12625 7 months ago |
403-83585 403 days ago |
0-19114 5 hours |
| 8195 |
newell author:newell |
feat: add a group presentation of the `DihedralGroup n` |
Add group presentation $\< a, b\ |\ a ^ 2 = 1, b ^ 2 = 1, (a * b) ^ n = 1 \>$ for `DihedralGroup n`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-group-theory
|
206/2 |
Mathlib/GroupTheory/PresentedGroup.lean,Mathlib/GroupTheory/SpecificGroups/Dihedral.lean |
2 |
6 |
['kbuzzard', 'newell'] |
nobody |
224-12424 7 months ago |
unknown |
0-0 0 seconds |
| 11212 |
shuxuezhuyi author:shuxuezhuyi |
feat(GroupTheory/GroupAction): instance `MulAction (β ⧸ H) α` |
We instance this naturally from `MulAction β α` when `H` is a normal subgroup and acts trivially on `α`.
We also instance `IsometricSMul (M ⧸ N) X` in this way.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-group-theory
large-import
|
53/1 |
Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/Topology/MetricSpace/IsometricSMul.lean |
2 |
6 |
['YaelDillies', 'github-actions', 'grunweg', 'urkud'] |
eric-wieser assignee:eric-wieser |
224-12417 7 months ago |
437-13756 437 days ago |
193-74502 193 days |
| 27886 |
alreadydone author:alreadydone |
feat(Algebra): (Mv)Polynomial.X is irreducible assuming NoZeroDivisors |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
178/66 |
Archive/Examples/Eisenstein.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Degree/Domain.lean,Mathlib/Algebra/Polynomial/Degree/Units.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Polynomial/RingDivision.lean,Mathlib/Combinatorics/Nullstellensatz.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder/DegLex.lean,Mathlib/RingTheory/Polynomial/Content.lean,Mathlib/RingTheory/Polynomial/Eisenstein/Criterion.lean |
13 |
3 |
['alreadydone', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
224-10152 7 months ago |
225-16893 225 days ago |
0-80025 22 hours |
| 26200 |
adomani author:adomani |
fix: add label when landrun fails |
Adds the `permission-denied` label on PRs that get blocked by landrun.
---
[](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-48019 7 months ago |
223-48019 223 days ago |
46-52210 46 days |
| 17469 |
joelriou author:joelriou |
feat(Algebra/ModuleCat/Differentials/Presheaf): the presheaf of relative differentials |
Given a functor `F : C ⥤ D`, presheaves of commutative rings `S`, `R` and a morphism `φ : S ⟶ F.op ⋙ R`, we show that derivations relative to `φ` are representable by a presheaf of `R`-modules.
This is obtained by reducing to the case of absolute differentials. The construction shall allow to deduce the presheaf version of the cokernel sequence $$f^\star \Omega_{Y/S} ⟶ \Omega_{X/S} ⟶ \Omega_{X/Y} ⟶ 0$$ when `f : X ⟶ Y` and `g : Y ⟶ S` are morphisms of schemes.
---
- [x] depends on: #17366
- [x] depends on: #19507
- [x] depends on: #17388
- [x] depends on: #16755
[](https://gitpod.io/from-referrer/)
|
WIP
t-category-theory
large-import
merge-conflict
t-algebraic-geometry
|
391/10 |
Mathlib/Algebra/Category/ModuleCat/Differentials/Presheaf.lean |
1 |
4 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
223-43368 7 months ago |
527-75 526 days ago |
0-530 8 minutes |
| 25288 |
robertmaxton42 author:robertmaxton42 |
feat(CategoryTheory): generalize `Discrete` to arbitrary morphism levels |
Using an unused `let`, add an 'anchor' to the definition of `Discrete`, allowing it to carry a second universe level that is then used to permit discrete categories to live in any `Cat.{v, u}`. (This trick was borrowed from the code of `ULiftHom`.)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-category-theory
|
38/32 |
Mathlib/CategoryTheory/Bicategory/LocallyDiscrete.lean,Mathlib/CategoryTheory/Discrete/Basic.lean,Mathlib/CategoryTheory/IsConnected.lean |
3 |
3 |
['github-actions', 'joelriou', 'mathlib4-merge-conflict-bot'] |
nobody |
223-32727 7 months ago |
292-22248 292 days ago |
0-444 7 minutes |
| 27709 |
kckennylau author:kckennylau |
chore: fix links |
---
See https://github.com/leanprover-community/mathlib4/pull/27545#discussion_r2238206933
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
269/256 |
Mathlib/Algebra/Algebra/Bilinear.lean,Mathlib/Algebra/GCDMonoid/Multiset.lean,Mathlib/Algebra/Group/Even.lean,Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/Group/Pi/Lemmas.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/Module/Hom.lean,Mathlib/Algebra/Module/Submodule/Bilinear.lean,Mathlib/Algebra/Order/Field/Pi.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Algebra/Order/Hom/Basic.lean,Mathlib/Algebra/Order/Monovary.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Ring/Basic.lean,Mathlib/Algebra/Squarefree/Basic.lean,Mathlib/Algebra/Star/BigOperators.lean,Mathlib/Algebra/Star/Free.lean,Mathlib/Algebra/Star/SelfAdjoint.lean,Mathlib/Analysis/Analytic/RadiusLiminf.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/Calculus/Conformal/NormedSpace.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/Inv.lean,Mathlib/Analysis/Calculus/Deriv/Inverse.lean,Mathlib/Analysis/Calculus/Deriv/Linear.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/Complex/Circle.lean,Mathlib/Analysis/Complex/OperatorNorm.lean,Mathlib/Analysis/Convex/Function.lean,Mathlib/Analysis/Convex/Jensen.lean,Mathlib/Analysis/Meromorphic/IsolatedZeros.lean,Mathlib/Analysis/Normed/Operator/BoundedLinearMaps.lean,Mathlib/Analysis/SpecialFunctions/Exponential.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Bounds.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/EulerSineProd.lean,Mathlib/CategoryTheory/Abelian/Opposite.lean,Mathlib/CategoryTheory/Adjunction/Opposites.lean,Mathlib/CategoryTheory/Bicategory/Functor/Pseudofunctor.lean,Mathlib/CategoryTheory/Closed/Monoidal.lean,Mathlib/CategoryTheory/Limits/Shapes/Kernels.lean,Mathlib/CategoryTheory/Localization/Equivalence.lean,Mathlib/CategoryTheory/Localization/Trifunctor.lean,Mathlib/CategoryTheory/ObjectProperty/Basic.lean,Mathlib/CategoryTheory/Sites/Coherent/SheafComparison.lean,Mathlib/Combinatorics/Colex.lean,Mathlib/Combinatorics/Hall/Finite.lean,Mathlib/Combinatorics/Pigeonhole.lean,Mathlib/Combinatorics/Quiver/Covering.lean,Mathlib/Combinatorics/Quiver/Path.lean,Mathlib/Control/LawfulFix.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/Fin/Pigeonhole.lean,Mathlib/Data/FinEnum/Option.lean,Mathlib/Data/Finset/Filter.lean,Mathlib/Data/Finsupp/Fin.lean,Mathlib/Data/Fintype/BigOperators.lean,Mathlib/Data/Fintype/Defs.lean,Mathlib/Data/Int/Basic.lean,Mathlib/Data/Int/Cast/Basic.lean,Mathlib/Data/Int/Cast/Lemmas.lean,Mathlib/Data/Int/Lemmas.lean,Mathlib/Data/Int/Order/Lemmas.lean,Mathlib/Data/Int/Range.lean,Mathlib/Data/List/Chain.lean,Mathlib/Data/List/Dedup.lean,Mathlib/Data/List/Destutter.lean,Mathlib/Data/List/Forall2.lean,Mathlib/Data/List/Lattice.lean,Mathlib/Data/List/Lemmas.lean,Mathlib/Data/List/Nodup.lean,Mathlib/Data/List/Pairwise.lean,Mathlib/Data/List/Permutation.lean,Mathlib/Data/List/ProdSigma.lean,Mathlib/Data/List/Sections.lean,Mathlib/Data/List/Sublists.lean,Mathlib/Data/Matrix/Notation.lean,Mathlib/Data/Matroid/Minor/Restrict.lean,Mathlib/Data/Multiset/FinsetOps.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/Cast/WithTop.lean,Mathlib/Data/Nat/Choose/Basic.lean,Mathlib/Data/Nat/Factorization/Basic.lean,Mathlib/Data/Nat/Factorization/LCM.lean,Mathlib/Data/PSigma/Order.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Data/Rat/Encodable.lean,Mathlib/Data/Set/Card.lean,Mathlib/Data/Set/Defs.lean,Mathlib/Data/Set/Finite/Basic.lean,Mathlib/Data/Set/Finite/Lattice.lean,Mathlib/Data/Set/Functor.lean,Mathlib/Data/Set/Notation.lean,Mathlib/Data/Set/Pairwise/Basic.lean,Mathlib/Data/Set/Prod.lean,Mathlib/Data/Sigma/Lex.lean |
157 |
87 |
['github-actions', 'kbuzzard', 'kckennylau', 'mathlib4-merge-conflict-bot'] |
nobody |
223-30938 7 months ago |
229-44579 229 days ago |
0-9 9 seconds |
| 10345 |
newell author:newell |
feat(Algebra.Module.Zlattice): Add Voronoi Domain |
Adds the definition for a Voronoi Domain in regards to the $\mathbb{Z}$-lattice:
$$C := \lbrace\mathbf{w} \in \mathbb{V}^n\ :\ |\mathbf{w}| \leq |\mathbf{w} - \mathbf{v}|\ \text{for all}\ \mathbf{v} \in \mathbf{L} \rbrace$$
where $\mathbf{L}\$ is the $\mathbb{Z}$-lattice.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
label:t-algebra$ |
17/0 |
Mathlib/Algebra/Module/Zlattice.lean |
1 |
3 |
['alreadydone', 'newell'] |
nobody |
222-48826 7 months ago |
unknown |
0-0 0 seconds |
| 28075 |
tristan-f-r author:tristan-f-r |
chore(Finsupp/Indicator): make non-classical |
This was surprising to see on a data-carrying definition.
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-data
easy
|
11/9 |
Mathlib/Algebra/BigOperators/Finsupp/Basic.lean,Mathlib/Data/Finsupp/Indicator.lean |
2 |
3 |
['github-actions', 'ocfnash', 'tristan-f-r'] |
nobody |
220-57651 7 months ago |
221-15070 221 days ago |
0-32626 9 hours |
| 28168 |
astrainfinita author:astrainfinita |
feat: hensel's lemma for topological rings |
---
[](https://gitpod.io/from-referrer/)
|
t-algebra
WIP
t-ring-theory
t-topology
label:t-algebra$ |
616/0 |
Mathlib/RingTheory/Polynomial/Hensel.lean |
1 |
1 |
['github-actions'] |
nobody |
219-43086 7 months ago |
unknown |
0-0 0 seconds |
| 20671 |
thefundamentaltheor3m author:thefundamentaltheor3m |
feat(Analysis/Asymptotics/SpecificAsymptotics): Proving that 𝛔ₖ(n) = O(nᵏ⁺¹) |
This PR proves a result about the $\sigma_k(n)$ arithmetic function, namely, that it is $O\left(n^{k+1}\right)$. Main theorem:
`theorem sigma_asymptotic (k : ℕ) : (fun n ↦ (σ k n : ℝ)) =O[atTop] (fun n ↦ (n ^ (k + 1) : ℝ))`
This result was proved as part of the sphere packing project.
---
[](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 |
219-16228 7 months ago |
419-77443 419 days ago |
9-59130 9 days |
| 20267 |
joelriou author:joelriou |
feat(CategoryTheory): comma categories are accessible |
---
(I shall probably not work on this PR in the near future.)
- [ ] depends on: #19937
- [ ] depends on: #19945
- [ ] depends on: #19959
- [ ] depends on: #20005
- [ ] depends on: #19955
- [x] depends on: #20263
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
awaiting-author
t-category-theory
|
1513/7 |
Mathlib.lean,Mathlib/CategoryTheory/Comma/Arrow.lean,Mathlib/CategoryTheory/Comma/CardinalArrow.lean,Mathlib/CategoryTheory/EssentiallySmall.lean,Mathlib/CategoryTheory/Limits/Comma.lean,Mathlib/CategoryTheory/Limits/TypesFiltered.lean,Mathlib/CategoryTheory/Presentable/Basic.lean,Mathlib/CategoryTheory/Presentable/CardinalFilteredPresentation.lean,Mathlib/CategoryTheory/Presentable/Comma.lean,Mathlib/CategoryTheory/Presentable/IsCardinalFiltered.lean,Mathlib/CategoryTheory/Presentable/Limits.lean,Mathlib/CategoryTheory/Presentable/LocallyPresentable.lean,Mathlib/CategoryTheory/Presentable/ParallelMaps.lean,Mathlib/SetTheory/Cardinal/HasCardinalLT.lean,docs/references.bib |
15 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
219-9195 7 months ago |
unknown |
0-0 0 seconds |
| 27451 |
kckennylau author:kckennylau |
feat(RingTheory/Valuation): define ball, closed ball, and sphere |
*From the 2025 Local Class Field Theory Workshop.*
---
[](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-80522 7 months ago |
217-80523 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-80151 7 months ago |
217-80152 217 days ago |
6-6455 6 days |
| 27444 |
grunweg author:grunweg |
feat: generalise more lemmas to enorms |
The selection of lemmas may seem eclectic, but follows a clear path: I'm working on generalising the last section of `IntegrableOn.lean` to enorms. (This will be continued in a later PR.)
---
Commits can be reviewed independently.
- [x] depends on: #27419 (first commits)
- [x] depends on: #27456 (last commits)
[](https://gitpod.io/from-referrer/)
|
carleson
WIP
|
10/0 |
Mathlib/MeasureTheory/Function/L1Space/HasFiniteIntegral.lean |
1 |
3 |
['github-actions', 'grunweg', 'mathlib4-dependent-issues-bot'] |
nobody |
217-76147 7 months ago |
217-76183 217 days ago |
0-749 12 minutes |
| 24862 |
grunweg author:grunweg |
feat(LocallyIntegrable): generalise more to enorms |
---
Note: github's diff is very confused; it includes changes which very clearly are already on the master branch.
I'll see which of the remaining changes after the dependencies have landed is already polished enough.
- [x] depends on: #24352
- [x] depends on: #27457 (this half is settled already)
- [ ] open question: filter lemmas; IsBoundedUnder is not the right condition as-is; need to think (or just not generalise)
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
carleson
t-measure-probability
|
171/88 |
Mathlib/MeasureTheory/Function/L1Space/HasFiniteIntegral.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean |
3 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
217-73872 7 months ago |
307-55231 307 days ago |
0-1 1 second |
| 25133 |
erdOne author:erdOne |
feat(Tactic/NormNum): support positive characteristic |
Co-authored-by: Heather Macbeth
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
large-import
t-meta
|
250/39 |
Mathlib/Tactic/NormNum/CharP.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/NormNum/Eq.lean,Mathlib/Tactic/NormNum/Inv.lean,Mathlib/Tactic/NormNum/Test.lean |
5 |
5 |
['erdOne', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
216-8911 7 months ago |
unknown |
0-0 0 seconds |
| 27003 |
eric-wieser author:eric-wieser |
chore: use `Simp.ResultQ` more often |
Also uses `~q` in place of manual `isDefEq` matching.
---
[](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 |
216-8375 7 months ago |
216-8376 216 days ago |
32-70098 32 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 |
216-8098 7 months ago |
363-79380 363 days ago |
0-1302 21 minutes |
| 16150 |
urkud author:urkud |
feat(Dynamics): Hopf decomposition |
Prove Hopf decomposition.
- [ ] rewrite to work with the saturations right away, not with a wandering set.
- [ ] generalize to an action of a countable group, use fundamental domains.
---
- [ ] depends on: #16146
- [ ] depends on: #16126
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-dynamics
t-measure-probability
|
212/0 |
Mathlib.lean,Mathlib/Dynamics/Ergodic/Dissipative.lean,Mathlib/MeasureTheory/MeasurableSpace/Basic.lean |
3 |
4 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'urkud'] |
nobody |
215-62747 7 months ago |
unknown |
0-0 0 seconds |
| 25401 |
digama0 author:digama0 |
feat(Util): SuppressSorry option |
See also leanprover/lean4#8611 and [#lean4 > Silent sorry @ 💬](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/Silent.20sorry/near/503537964). This is a stop-gap solution while leanprover/lean4#8611 is underway, but it works about as well as any other built in option. Hooking declaration elaborators turns out to be a very powerful technique.
---
[](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-49571 7 months ago |
215-49571 215 days ago |
71-28496 71 days |
| 27759 |
plp127 author:plp127 |
chore(FreeAbelianGroup): deprecate multiplication |
Deprecate multiplication on `FreeAbelianGroup` in favor of using `MonoidAlgebra`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
large-import
label:t-algebra$ |
176/86 |
Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/MonoidAlgebra/MapDomain.lean,Mathlib/GroupTheory/FreeAbelianGroup.lean,Mathlib/RingTheory/FreeCommRing.lean,Mathlib/RingTheory/FreeRing.lean |
5 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
214-16017 7 months ago |
227-81253 227 days ago |
0-5704 1 hour |
| 7873 |
astrainfinita author:astrainfinita |
perf: reorder `extends` and change instance priority in algebra hierarchy |
There are no strict rules, but in general `Cancel` is dropped first, then `Comm`, then `Neg / Inv`, then `Assoc`. Not sure if there's a better way.
---
- [ ] depends on: #14712
- [x] depends on: #16638
- [ ] depends on: #18464
- [ ] depends on: #18468
- [ ] depends on: #18470
- [ ] depends on: #18472
- [ ] depends on: #18474
[](https://gitpod.io/from-referrer/)
|
merge-conflict
slow-typeclass-synthesis
t-algebra
blocked-by-other-PR
label:t-algebra$ |
494/204 |
Archive/Imo/Imo1998Q2.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Associated.lean,Mathlib/Algebra/BigOperators/Ring/List.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Limits.lean,Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/EuclideanDomain/Field.lean,Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/Field/IsField.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/InjSurj.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/GroupWithZero/Basic.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/GroupWithZero/InjSurj.lean,Mathlib/Algebra/GroupWithZero/Prod.lean,Mathlib/Algebra/GroupWithZero/Semiconj.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/Homology/HomotopyCategory/DegreewiseSplit.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShiftSequence.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Grading.lean,Mathlib/Algebra/Order/AddGroupWithTop.lean,Mathlib/Algebra/Order/Field/Canonical/Defs.lean,Mathlib/Algebra/Order/Field/Defs.lean,Mathlib/Algebra/Order/Group/Abs.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Kleene.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Ring/Canonical.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/Algebra/Ring/BooleanRing.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/Algebra/Ring/InjSurj.lean,Mathlib/Algebra/Ring/Rat.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/InnerProductSpace/Orientation.lean,Mathlib/Analysis/InnerProductSpace/Symmetric.lean,Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/NormedSpace/Star/Multiplier.lean,Mathlib/CategoryTheory/Preadditive/FunctorCategory.lean,Mathlib/CategoryTheory/Preadditive/SingleObj.lean,Mathlib/CategoryTheory/Triangulated/Functor.lean,Mathlib/Data/Finset/NoncommProd.lean,Mathlib/Data/Int/Cast/Defs.lean,Mathlib/Data/Nat/Cast/Defs.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/Data/Num/Lemmas.lean,Mathlib/Data/Rat/Denumerable.lean,Mathlib/Data/Real/ENatENNReal.lean,Mathlib/Dynamics/Ergodic/AddCircle.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/GroupTheory/Congruence/Basic.lean,Mathlib/GroupTheory/MonoidLocalization.lean,Mathlib/GroupTheory/SpecificGroups/Alternating.lean,Mathlib/GroupTheory/Torsion.lean,Mathlib/Init/ZeroOne.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/Orientation.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/TensorPower.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/External.lean,Mathlib/MeasureTheory/Decomposition/Jordan.lean,Mathlib/MeasureTheory/Decomposition/SignedLebesgue.lean,Mathlib/NumberTheory/ArithmeticFunction.lean,Mathlib/NumberTheory/LegendreSymbol/GaussEisensteinLemmas.lean,Mathlib/NumberTheory/RamificationInertia.lean,Mathlib/NumberTheory/WellApproximable.lean,Mathlib/NumberTheory/Zsqrtd/QuadraticReciprocity.lean,Mathlib/Order/Filter/Germ.lean,Mathlib/Order/Interval/Finset/Box.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/Coalgebra/Hom.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/Filtration.lean,Mathlib/RingTheory/Henselian.lean,Mathlib/RingTheory/Ideal/IsPrincipal.lean,Mathlib/RingTheory/Ideal/LocalRing.lean,Mathlib/RingTheory/Ideal/Norm.lean,Mathlib/RingTheory/Localization/Integral.lean,Mathlib/RingTheory/MvPolynomial/Symmetric.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean,Mathlib/RingTheory/UniqueFactorizationDomain.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/Tactic/Positivity/Core.lean |
104 |
84 |
['MichaelStollBayreuth', 'astrainfinita', 'github-actions', 'kim-em', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mattrobball'] |
nobody |
213-72921 7 months ago |
611-70873 611 days ago |
7-77799 7 days |
| 21776 |
alreadydone author:alreadydone |
Invertible modules |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
571/26 |
Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Module/Submodule/Equiv.lean,Mathlib/Data/Set/Semiring.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean,Mathlib/RingTheory/PicardGroup.lean |
5 |
3 |
['alreadydone', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
213-15566 7 months ago |
398-28055 398 days ago |
0-19 19 seconds |
| 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 |
213-5912 7 months ago |
426-84282 426 days ago |
0-47663 13 hours |
| 27446 |
grunweg author:grunweg |
chore: more enorm lemmas |
Nothing to see yet: this is a big mess!
Start unrolling at `eLpNorm_le_eLpNorm_top_mul_eLpNorm_enorm`; that proof could be a good next target.
Need a version of `eLpNorm'_const_smul' which applies to NNReal (or ENNReal, I guess): need to generalise a bunch of lemmas for that.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
carleson
|
107/9 |
Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean |
3 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] |
nobody |
212-83826 7 months ago |
235-58381 235 days ago |
0-92 1 minute |
| 14583 |
lecopivo author:lecopivo |
fix: make concrete cycle notation local |
fix: make c[...] notation for concrete cycles local
---
The notation for concrete cycles prevents you using `c[i]` notation for `c : Array _`
This currently does not work
```
import Mathlib
variable (c : Array Nat) (i : Fin c.size)
#check c[i] -- breaks because of notation for concrete cycles
```
This PR just marks it as local to prevent this issue.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
|
1/1 |
Mathlib/GroupTheory/Perm/Cycle/Concrete.lean |
1 |
3 |
['eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
211-16740 6 months ago |
615-53306 615 days ago |
0-12793 3 hours |
| 5897 |
eric-wieser author:eric-wieser |
feat: add a `MonadError` instance for `ContT` |
We already have a `MonadExcept` instance; this promotes it to `MonadError`.
Note the issue with the existing `MonadExcept` instance still applies.
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-meta
|
16/0 |
Mathlib/Control/Monad/Cont.lean |
1 |
25 |
['Vierkantor', 'YaelDillies', 'eric-wieser', 'github-actions', 'kmill'] |
nobody |
211-6726 6 months ago |
637-19528 637 days ago |
339-54818 339 days |
| 28276 |
eric-wieser author:eric-wieser |
refactor: tidy `lift_unique` lemmas |
---
- [ ] depends on: #28275
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
37/20 |
Mathlib/Algebra/FreeAlgebra.lean,Mathlib/Algebra/Lie/UniversalEnveloping.lean,Mathlib/LinearAlgebra/DFinsupp.lean,Mathlib/LinearAlgebra/ExteriorAlgebra/Basic.lean |
4 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
211-5997 6 months ago |
unknown |
0-0 0 seconds |
| 28502 |
gilesgshaw author:gilesgshaw |
feat(Logic/Basic): avoid unnecessary uses of choice |
Certain proofs are modified to remove a dependence on the axoim of choice
---
- [ ] depends on: #28623
|
blocked-by-other-PR
new-contributor
merge-conflict
awaiting-author
t-logic
|
83/74 |
Mathlib/Logic/Basic.lean |
1 |
7 |
['Ruben-VandeVelde', 'eric-wieser', 'gilesgshaw', 'github-actions', 'kim-em', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
210-27724 6 months ago |
213-13253 213 days ago |
0-35689 9 hours |
| 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-53051 6 months ago |
209-53052 209 days ago |
0-66771 18 hours |
| 24793 |
tristan-f-r author:tristan-f-r |
feat: trace of unitarily similar matrices |
adds a theorem relating trace to unitarily similar matrices used in the easy direction of specht's theorem
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
7/0 |
Mathlib/LinearAlgebra/UnitaryGroup.lean |
1 |
4 |
['github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot', 'tristan-f-r'] |
nobody |
209-48690 6 months ago |
307-80139 307 days ago |
1-55872 1 day |
| 26645 |
erdOne author:erdOne |
feat(RingTheory/PowerSeries): Construction of `Q` such that `P(Q(X)) = X` |
Co-authored-by: Junnosuke Koizumi
Co-authored-by: Hyeon, Seung-Hyeon
Co-authored-by: Yuichiro Taguchi
This contribution was created as part of the ZMC conference 2025 "Anabelian Geometry and its Computer Formalization".
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-ring-theory
|
133/0 |
Mathlib/RingTheory/PowerSeries/Substitution.lean |
1 |
9 |
['chrisflav', 'erdOne', 'github-actions', 'kckennylau'] |
kbuzzard assignee:kbuzzard |
209-17902 6 months ago |
209-17902 209 days ago |
48-29860 48 days |
| 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-82177 6 months ago |
207-82178 207 days ago |
2-47570 2 days |
| 26078 |
kckennylau author:kckennylau |
feat(AlgebraicGeometry): add x, y, px, py for points on elliptic curves |
---
Split from #25218.
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-algebraic-geometry
|
44/0 |
Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean |
1 |
12 |
['MichaelStollBayreuth', 'Multramate', 'acmepjz', 'dagurtomas', 'github-actions', 'kckennylau'] |
dagurtomas assignee:dagurtomas |
207-79187 6 months ago |
207-79187 207 days ago |
64-11252 64 days |
| 19582 |
yu-yama author:yu-yama |
feat(GroupExtension/Abelian): define `OfMulDistribMulAction.equivH2` |
Mainly defines:
- `structure GroupExtension.OfMulDistribMulAction N G [MulDistribMulAction G N]`: group extensions of `G` by `N` where the multiplicative action of `G` on `N` is the conjugation
- `structure GroupExtension.OfMulDistribMulActionWithSection N G [MulDistribMulAction G N]`: group extensions with specific choices of sections
- `def GroupExtension.OfMulDistribMulAction.equivH2`: a bijection between the equivalence classes of group extensions and $H^2 (G, N)$
---
- [x] depends on: #20802 (split PR: contains changes to the `Defs` file)
- [x] depends on: #20998 (split PR: mainly adds the `Basic` file)
- [ ] depends on: #26670 (split PR: adds the first part of the `Abelian` file)
Here is a relevant TODO in Mathlib:
https://github.com/leanprover-community/mathlib4/blob/4e9fa40d7c480937e09cd6e47a591bd6f3b8be42/Mathlib/RepresentationTheory/GroupCohomology/LowDegree.lean#L46-L48
I would appreciate your comments.
[](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-64232 6 months ago |
430-34791 430 days ago |
43-22586 43 days |
| 7300 |
ah1112 author:ah1112 |
feat: synthetic geometry |
This is adding synthetic geometry using Avigad's axioms and formalizing Euclid Book I, through the Pythagorean theorem.
---
[](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-40863 6 months ago |
907-79748 907 days ago |
0-84 1 minute |
| 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 |
207-1849 6 months ago |
336-16854 336 days ago |
47-81764 47 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-49495 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-49494 6 months ago |
206-49495 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 |
206-28814 6 months ago |
229-4736 229 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 |
206-28768 6 months ago |
215-80212 215 days ago |
7-4998 7 days |
| 23966 |
astrainfinita author:astrainfinita |
refactor: unbundle algebra from `{Seminormed, Normed}(Add)(Comm)Group` |
---
[](https://gitpod.io/from-referrer/)
- [ ] depends on: #23621
- [ ] depends on: #23961
|
t-algebra
blocked-by-other-PR
merge-conflict
slow-typeclass-synthesis
t-analysis
label:t-algebra$ |
3233/2752 |
Archive/Imo/Imo1998Q2.lean,Counterexamples/LinearOrderWithPosMulPosEqZero.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Algebra/Order/Field/Canonical.lean,Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Nonneg/Field.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/CPolynomial.lean,Mathlib/Analysis/Analytic/CPolynomialDef.lean,Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Analytic/IsolatedZeros.lean,Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Analytic/Linear.lean,Mathlib/Analysis/Analytic/Order.lean,Mathlib/Analysis/Analytic/Polynomial.lean,Mathlib/Analysis/Analytic/RadiusLiminf.lean,Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Analysis/Analytic/Within.lean,Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/Asymptotics/Defs.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Asymptotics/TVS.lean,Mathlib/Analysis/Asymptotics/Theta.lean,Mathlib/Analysis/BoundedVariation.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/BoxIntegral/Integrability.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/BoxIntegral/Partition/Measure.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/ContinuousLinearMap.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/CStarAlgebra/Module/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Defs.lean,Mathlib/Analysis/Calculus/AddTorsor/AffineMap.lean,Mathlib/Analysis/Calculus/AddTorsor/Coord.lean,Mathlib/Analysis/Calculus/BumpFunction/Basic.lean,Mathlib/Analysis/Calculus/BumpFunction/Convolution.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/BumpFunction/InnerProduct.lean,Mathlib/Analysis/Calculus/BumpFunction/Normed.lean,Mathlib/Analysis/Calculus/Conformal/InnerProduct.lean,Mathlib/Analysis/Calculus/Conformal/NormedSpace.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/ContDiff/CPolynomial.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Calculus/ContDiff/FiniteDimension.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/ContDiff/RCLike.lean,Mathlib/Analysis/Calculus/ContDiff/WithLp.lean,Mathlib/Analysis/Calculus/DSlope.lean,Mathlib/Analysis/Calculus/Deriv/Abs.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/Deriv/AffineMap.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Comp.lean,Mathlib/Analysis/Calculus/Deriv/Inv.lean,Mathlib/Analysis/Calculus/Deriv/Inverse.lean,Mathlib/Analysis/Calculus/Deriv/Linear.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Calculus/Deriv/Prod.lean,Mathlib/Analysis/Calculus/Deriv/Shift.lean,Mathlib/Analysis/Calculus/Deriv/Slope.lean,Mathlib/Analysis/Calculus/Deriv/Star.lean,Mathlib/Analysis/Calculus/Deriv/Support.lean,Mathlib/Analysis/Calculus/Deriv/ZPow.lean,Mathlib/Analysis/Calculus/DiffContOnCl.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Bilinear.lean,Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/FDeriv/Equiv.lean,Mathlib/Analysis/Calculus/FDeriv/Extend.lean,Mathlib/Analysis/Calculus/FDeriv/Linear.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/Calculus/FDeriv/Mul.lean,Mathlib/Analysis/Calculus/FDeriv/Norm.lean,Mathlib/Analysis/Calculus/FDeriv/Pi.lean,Mathlib/Analysis/Calculus/FDeriv/Prod.lean,Mathlib/Analysis/Calculus/FDeriv/RestrictScalars.lean,Mathlib/Analysis/Calculus/FDeriv/Star.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Calculus/FDeriv/WithLp.lean,Mathlib/Analysis/Calculus/FormalMultilinearSeries.lean |
579 |
7 |
['astrainfinita', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
206-4035 6 months ago |
unknown |
0-0 0 seconds |
| 27399 |
MoritzBeroRoos author:MoritzBeroRoos |
chore: replace every usage of ⬝ᵥ (with old \cdot) by ·ᵥ (with \centerdot) |
Discussion at [zulip](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/.5Ccdot.20!.3D.20.5Ccenterdot).
Currently the abbreviations `\cdot` and `\centerdot` resolve to different, with the naked eye nearly undistinguishable symbols (despite the c in cdot surely standing for `center`..):
- `\cdot` gives ⬝ [U+2B1D](https://www.compart.com/en/unicode/U+2B1D) "Black Very Small Square"
- `\centerdot` gives · [U+00B7](https://www.compart.com/en/unicode/U+00B7) "Middle Dot"
Mathlib mostly uses the `\centerdot` variant, except for the dotProduct notation and some probably unsuspecting people wanting \centerdot but getting \cdot in their comments and 6 uses of a notation using the raw `\cdot` without any subscript at `Mathlib\Topology\Homotopy\Product.lean`.
This PR replaces the dot product `⬝ᵥ` with its `\centerdot` counterpart `·ᵥ`. The related PR [here](https://github.com/leanprover/vscode-lean4/pull/639) can then overwrite the `\cdot` abbreviation, to produce the same symbol as the `centerdot` abbreviation does.
---
[](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-77046 6 months ago |
229-4737 229 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-76807 6 months ago |
234-74504 234 days ago |
0-237 3 minutes |
| 28787 |
alreadydone author:alreadydone |
feat(Counterexamples): a domain whose ring of differences is not a domain |
Example produced by Gemini 2.5 Pro: https://gemini.google.com/share/9558539e1309
---
- [ ] depends on: #28468
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
blocked-by-other-PR
large-import
label:t-algebra$ |
1200/204 |
Counterexamples.lean,Counterexamples/GrothendieckAddGroupIsDomain.lean,Mathlib.lean,Mathlib/Algebra/Group/Subsemigroup/Defs.lean,Mathlib/Algebra/Module/End.lean,Mathlib/Algebra/Module/LocalizedModule/IsLocalization.lean,Mathlib/Algebra/Order/Nonneg/Basic.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Algebra/Ring/Invertible.lean,Mathlib/GroupTheory/MonoidLocalization/Archimedean.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/Lemmas.lean,Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/RingTheory/IsTensorProduct.lean,Mathlib/RingTheory/Localization/Additive.lean,Mathlib/RingTheory/Localization/Away/Basic.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean,Mathlib/RingTheory/Localization/Ideal.lean,Mathlib/RingTheory/Localization/StrongRankCondition.lean,Mathlib/RingTheory/Smooth/StandardSmooth.lean,Mathlib/RingTheory/Trace/Quotient.lean |
23 |
6 |
['alreadydone', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] |
nobody |
204-80257 6 months ago |
204-85701 204 days ago |
1-13263 1 day |
| 24719 |
madvorak author:madvorak |
feat(LinearAlgebra/Matrix/NonsingularInverse): inverting `Matrix` inverts its `LinearEquiv` |
---
Discussion:
https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2324719.20cannot.20find.20home/with/517142655
|
awaiting-author
t-algebra
label:t-algebra$ |
10/0 |
Mathlib/LinearAlgebra/Matrix/NonsingularInverse.lean |
1 |
16 |
['eric-wieser', 'github-actions', 'madvorak', 'ocfnash'] |
nobody |
203-15344 6 months ago |
224-83721 224 days ago |
85-42087 85 days |
| 27437 |
kckennylau author:kckennylau |
feat(RingTheory/Valuation): some lemmas about comparing with 1 and 0 and with each other |
*From the 2025 Local Class Field Theory Workshop.*
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-ring-theory
|
109/22 |
Mathlib/NumberTheory/Padics/ValuativeRel.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/Extension.lean,Mathlib/RingTheory/Valuation/ValuativeRel.lean |
4 |
20 |
['erdOne', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'matthewjasper', 'pechersky'] |
nobody |
201-79627 6 months ago |
221-44238 221 days ago |
14-27544 14 days |
| 28148 |
kckennylau author:kckennylau |
feat(Matrix): Simproc and Rw-proc for Matrix Transpose |
Co-authored by Aaron Liu.
```lean
example : !![1, 2, 3; 4, 5, 6]ᵀ = !![1, 4; 2, 5; 3, 6] := by
rw [transpose_of% 2 3]
example : !![1, 2, 3; 4, 5, 6]ᵀ = !![1, 4; 2, 5; 3, 6] := by
rw [transpose_of]
example : !![1, 2, 3; 4, 5, 6]ᵀ = !![1, 4; 2, 5; 3, 6] := by
simp only [matrix_transpose]
```
---
[](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-33980 6 months ago |
201-33981 201 days ago |
13-2028 13 days |
| 28686 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): prove the Erdős-Stone theorem |
Proves the Erdős-Stone theorem:
If `G` has at least `(1 - 1 / r + o(1)) * card V ^ 2 / 2` many edges, then `G` contains a copy of a `completeEquipartiteGraph (r + 1) t`.
---
- [ ] depends on: #28685
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
blocked-by-other-PR
t-combinatorics
|
757/14 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/ErdosStoneSimonovits.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean,Mathlib/Data/Finset/Union.lean,Mathlib/Data/Nat/Cast/Order/Field.lean |
10 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
200-83820 6 months ago |
209-14363 209 days ago |
0-10 10 seconds |
| 28687 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): prove the Erdős-Stone-Simonovits theorem |
Proves the Erdős-Stone-Simonovits theorem:
If the chromatic number of `H` equals `r + 1 > 0`, then the `extremalNumber` of `H` is greater than `(1 - 1 / r - o(1)) * card V ^ 2 / 2` and at most `(1 - 1 / r + o(1)) * card V ^ 2 / 2`.
---
- [ ] depends on: #28686
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
blocked-by-other-PR
t-combinatorics
|
879/14 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/ErdosStoneSimonovits.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean,Mathlib/Data/Finset/Union.lean,Mathlib/Data/Nat/Cast/Order/Field.lean |
10 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
200-83819 6 months ago |
209-14136 209 days ago |
0-74 1 minute |
| 28689 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): prove well-known corollaries of the Erdős-Stone-Simonovits theorem |
Proves well-known corollaries of the Erdős-Stone-Simonovits theorem:
E.g., if the chromatic number of `H` equals `r + 1 > 1`, then `extremalNumber n H` is asymptotically equivalent to `(1 - 1 / r) * n.choose 2` as `n → ∞`
---
- [ ] depends on: #28687
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
blocked-by-other-PR
t-combinatorics
|
958/14 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/ErdosStoneSimonovits.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean,Mathlib/Data/Finset/Union.lean,Mathlib/Data/Nat/Cast/Order/Field.lean |
10 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
200-83818 6 months ago |
209-13952 209 days ago |
0-45 45 seconds |
| 26952 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/DayConvolution): monoid objects internal to day convolutions |
In this file, given `F : C ⊛⥤ V`, we provide a bijective correspondence between lax monoidal structures on `F.functor` and
`Mon_Class F` structures. We also prove that through this correspondance, monoidal natural transformations correspond to morphisms of internal monoid objects.
---
- [ ] depends on: #26890
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-category-theory
|
1574/19 |
Mathlib.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/DayFunctor.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/Mon_.lean |
5 |
5 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
200-56029 6 months ago |
250-51385 250 days ago |
0-311 5 minutes |
| 27133 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Monoidal/DayConvolution): `C ⊛⥤ V` is monoidal closed when `V` is |
When `V` is a monoidal closed category admitting enough limits, we show that the type alias `C ⊛⥤ V` for functors `C ⥤ V` with Day convolution monoidal structure is monoidal closed using the API for `LawfulDayConvolutionClosedMonoidalCategoryStruct` developped in #27119.
We expose the required data to exhibit (realization as a functor of) the internal hom as a suitable, and we port the lemmas that characterize its functoriality in that regard, as well as the evaluation and coevaluation morphisms.
---
- [ ] depends on: #27119
- [ ] depends on: #26890
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-category-theory
|
1706/20 |
Mathlib.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/Closed.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/DayFunctor.lean |
5 |
6 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
200-55904 6 months ago |
245-82358 245 days ago |
0-1192 19 minutes |
| 27151 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Monoidal/DayConvolution): `C ⊛⥤ V` is braided/symmetric when `C` and `V` are braided/symmetric |
We use the machinery from #27150 to show that Day functors (the type alias for functors endowed with the Day convolution monoidal structure) are braided/symmetric when the base categories are.
---
- [ ] depends on: #27150
- [ ] depends on: #26890
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-category-theory
|
1591/20 |
Mathlib.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/Braided.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/DayFunctor.lean |
5 |
5 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
200-55902 6 months ago |
245-16451 245 days ago |
0-1022 17 minutes |
| 27175 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Monoidal/DayConvolution): `LawfulDayConvolutionMonoidalCategoryStruct.ι C V D` is monoidal when the target is `C ⊛⥤ V` |
We prove a "soundness" result for our notion of `LawfulDayConvolutionMonoidalCategoryStruct`, i.e that when be interpret its field `ι` as valued in Day functors (the type alias for functors endowed with the Day convolution monoidal structure), the data from `LawfulDayConvolutionMonoidalCategoryStruct` turn `ι` in a monoidal functor, proving that the categories endowed with such a structure are precisely those that can be identified to monoidal (not necessarily full) subcategories of Day functors.
Implicitly, the structure isomorphisms for this monoidal structure bundle isomorphisms asserting unicity up to isomorphisms of day convolutions.
---
- [ ] depends on: #26890
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-category-theory
|
1585/24 |
Mathlib.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution/DayFunctor.lean |
4 |
5 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
200-55901 6 months ago |
244-69983 244 days ago |
0-673 11 minutes |
| 26097 |
adomani author:adomani |
dev: the relative linter |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
awaiting-author
t-linter
|
316/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/Local.lean,Mathlib/Util/ParseGit.lean |
4 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
200-32676 6 months ago |
unknown |
0-0 0 seconds |
| 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-62016 6 months ago |
unknown |
0-0 0 seconds |
| 25741 |
robin-carlier author:robin-carlier |
feat(AlgebraicTopology/SimplexCategory/SimplicialObject): definitions of simplicial objects by generators and relation |
We leverage the equivalence between `SimplexCategory` and `SimplexCategoryGenRel` to give new constructors for (co)simplicial objects, as well as constructors for natural transformations (resp. isomorphism) between those.
Final PR in the series of PR formalising the equivalence between `SimplexCategory` and `SimplexCategoryGenRel`.
---
- [ ] depends on: #25740
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #21748.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/21748* |
t-algebraic-topology
blocked-by-other-PR
t-category-theory
large-import
merge-conflict
|
1363/9 |
Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/Equivalence.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean,Mathlib/AlgebraicTopology/SimplicialObject/GeneratorsRelations.lean |
4 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
197-9696 6 months ago |
278-17831 278 days ago |
0-829 13 minutes |
| 26931 |
javra author:javra |
feat(CategoryTheory/Enriched): `V`-enriched isomorphisms |
Defines isomorphisms in `V`-enriched categories and relate them to ordinary isomorphisms in the case of ordinary enriched categories.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-category-theory
infinity-cosmos
|
211/14 |
Mathlib.lean,Mathlib/CategoryTheory/Enriched/Basic.lean,Mathlib/CategoryTheory/Enriched/Iso.lean,Mathlib/CategoryTheory/Enriched/Opposite.lean,Mathlib/CategoryTheory/Enriched/Ordinary/Basic.lean,Mathlib/CategoryTheory/Enriched/Ordinary/Iso.lean |
6 |
21 |
['emilyriehl', 'github-actions', 'javra', 'joelriou', 'mathlib4-merge-conflict-bot', 'mckoen'] |
nobody |
197-9086 6 months ago |
231-13333 231 days ago |
19-75957 19 days |
| 27707 |
FLDutchmann author:FLDutchmann |
feat(NumberTheory/SelbergSieve): define Selberg's weights and prove basic results. |
This PR continues the work from #23635.
Original PR: https://github.com/leanprover-community/mathlib4/pull/23635
- [ ] depends on: #27702 |
merge-conflict
t-number-theory
blocked-by-other-PR
t-analysis
|
407/83 |
Mathlib/NumberTheory/Divisors.lean,Mathlib/NumberTheory/SelbergSieve.lean |
2 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
196-62746 6 months ago |
226-46425 226 days ago |
1-28996 1 day |
| 25208 |
erdOne author:erdOne |
feat(LinearAlgebra): `tensor_induction` macro |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
RFC
label:t-algebra$ |
87/116 |
Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Central/TensorProduct.lean,Mathlib/LinearAlgebra/DirectSum/Finsupp.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/RingTheory/Flat/Equalizer.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/Finite.lean,Mathlib/RingTheory/Unramified/Finite.lean |
8 |
8 |
['chrisflav', 'eric-wieser', 'github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
196-30453 6 months ago |
295-1900 295 days ago |
0-600 10 minutes |
| 28803 |
astrainfinita author:astrainfinita |
refactor: unbundle algebra from `ENormed*` |
Further speed up the search in the algebraic typeclass hierarchy by avoiding searching for `TopologicalSpace`.
This PR continues the work from #23961.
- Change `ESeminormed(Add)Monoid` and `ENormed(Add)Monoid` so they no longer carry algebraic data.
- Deprecate `ESeminormed(Add)CommMonoid` and `ENormed(Add)CommMonoid` in favor of `ESeminormed(Add)Monoid` and `ENormed(Add)Monoid` with a commutative algebraic typeclass.
|Old|New|
|---|---|
| `[ESeminormed(Add)(Comm)Monoid E]` | `[(Add)(Comm)Monoid E] [ESeminormed(Add)Monoid E]` |
| `[ENormed(Add)(Comm)Monoid]` | `[(Add)(Comm)Monoid E] [ENormed(Add)Monoid]` |
See [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2328803.20refactor.3A.20unbundle.20algebra.20from.20.60ENormed*.60/with/536024350)
------------
- [x] depends on: #28813 |
t-algebra
merge-conflict
slow-typeclass-synthesis
awaiting-zulip
t-analysis
label:t-algebra$ |
80/63 |
Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Group/Continuity.lean,Mathlib/Analysis/Normed/Group/InfiniteSum.lean,Mathlib/Analysis/NormedSpace/IndicatorFunction.lean,Mathlib/MeasureTheory/Function/L1Space/AEEqFun.lean,Mathlib/MeasureTheory/Function/L1Space/HasFiniteIntegral.lean,Mathlib/MeasureTheory/Function/L1Space/Integrable.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSeminorm/TriangleInequality.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean |
14 |
28 |
['astrainfinita', 'bryangingechen', 'github-actions', 'grunweg', 'kbuzzard', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib-bors', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'sgouezel'] |
grunweg assignee:grunweg |
195-47981 6 months ago |
203-85535 203 days ago |
0-19882 5 hours |
| 26935 |
Paul-Lez author:Paul-Lez |
feat(Analysis/SpecialFunction/NthRoot): definition and basic API of Real.nthRoot |
This PR continues the work from #25364.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25364
Co-authored-by: Eric Wieser |
t-analysis |
311/0 |
Mathlib/Analysis/SpecialFunctions/NthRoot.lean |
1 |
10 |
['Paul-Lez', 'eric-wieser', 'github-actions', 'mo271', 'smmercuri', 'yury-harmonic'] |
nobody |
194-50091 6 months ago |
250-10185 250 days ago |
0-75052 20 hours |
| 27995 |
kckennylau author:kckennylau |
feat(RingTheory/Valuation): alternate constructors for Valuation |
---
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
awaiting-CI
|
82/0 |
Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/FieldTheory/RatFunc/Degree.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/RingTheory/Valuation/Basic.lean |
4 |
22 |
['YaelDillies', 'github-actions', 'grunweg', 'kckennylau', 'pechersky'] |
nobody |
193-21966 6 months ago |
193-81615 193 days ago |
17-74458 17 days |
| 26159 |
upobir author:upobir |
feat(Algebra/QuadraticDiscriminant): Adding inequalities on quadratic from inequalities on discriminant |
This PR continues the work from #24517.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24517
---
[](https://gitpod.io/from-referrer/) |
awaiting-author
t-algebra
label:t-algebra$ |
34/0 |
Mathlib/Algebra/QuadraticDiscriminant.lean |
1 |
8 |
['chrisflav', 'github-actions', 'tb65536', 'upobir'] |
chrisflav assignee:chrisflav |
191-81270 6 months ago |
215-72798 215 days ago |
55-10605 55 days |
| 26908 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Monoidal/DayConvolution): alternative ext principle for unitors |
Currently, our infrastructure for left/right unitors for Day convolution of functors `C ⥤ V` do not have satisfactory extensionality principle: the current way to characterize morphisms out of `U ⊛ F` is the default extensionality principle for Day convolution, which characterizes first such functors via functors out of `U ⊠ F`. Left unitors are then obtained using the fact `U ⊠ F` is a left Kan extension of a functor from `PUnit × C` (which is equivalent to `C`) but we did not record on its own this principle.
Using the transitivity of left Kan extensions proved in #26899, we directly exhibit `U ⊛ F` as a left Kan extension of `F ⋙ tensorLeft (𝟙_ V)` along `tensorLeft (𝟙_ C)`. The unit of this Kan extension is composed exactly of the morphisms that appear in the [characterization of left unitors](https://leanprover-community.github.io/mathlib4_docs/Mathlib/CategoryTheory/Monoidal/DayConvolution.html#CategoryTheory.MonoidalCategory.DayConvolutionUnit.leftUnitor_hom_unit_app).
We also slightly generalize the instances that express that external products with unitors are left Kan extensions, so that they can be used when taking external products with more complicated functors than currently. This is again useful when chaining extensionality lemmas for morphisms out of terms of the form `(F ⊛ U) ⊛ G`.
We prove a similar thing for right unitors
With this, it should be possible to have a much more satisfactory way of working with Day convolutions: this allows to "elimiinate" units without ending up with terms in an external product.
---
- [ ] depends on: #26899
- [ ] depends on: #26906
[](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-80326 6 months ago |
189-80327 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-75365 6 months ago |
245-18660 245 days ago |
0-1002 16 minutes |
| 26462 |
PSchwahn author:PSchwahn |
feat(LinearAlgebra/Projection): add results about inverse of `Submodule.prodEquivOfIsCompl` |
Add two theorems `Submodule.prodEquivOfIsCompl_symm_apply` and `Submodule.prodEquivOfIsCompl_symm_add`, which are API for `Submodule.prodEquivOfIsCompl`.
We believe these theorems are useful; for example, we have used their statements in a [classification formalization project](https://github.com/LieLean/LowDimSolvClassification).
Co-authored by:
- [Viviana del Barco](https://github.com/vdelbarc)
- [Gustavo Infanti](https://github.com/GuQOliveira)
- [Exequiel Rivas](https://github.com/erivas)
---
I am not sure whether the `prodEquivOfIsCompl_symm_apply` theorem should be tagged with `@[simp]`; this might lead to confluence issues. Opinions are welcome!
[](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-48175 6 months ago |
189-79278 189 days ago |
73-43082 73 days |
| 27119 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Monoidal/DayConvolution): constructors for closed monoidal day convolution monoidal structures |
Following the pattern introduced in #26798 and #26820 and using results of #26879, we introduce a typeclass
`LawfulDayConvolutionClosedMonoidalCategoryStruct` that encodes the data needed on a `LawfulDayConvolutionMonoidalCategoryStruct` to define well-behaved internal homs. We give a constructor assuming existence of relevant ends, and prove that this data defines a `MonoidalClosed` instance on the monoidal category structures one can deduce from `LawfulDayConvolutionMonoidalCategoryStruct`.
---
- [x] depends on: #27079
- [x] depends on: #27091
- [x] depends on: #26879
- [x] depends on: #26820
[](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 |
189-2816 6 months ago |
246-24128 246 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-83077 6 months ago |
188-83078 188 days ago |
10-61840 10 days |
| 28804 |
grunweg author:grunweg |
feat: a few more tactic linters |
All analysis passes in this list have been suggested [on zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Tactic.20analysis.20framework/with/535766713).
---
Untested, so may not work yet.
- [ ] depends on: #28802
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-meta
|
204/26 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/TacticAnalysis/Declarations.lean,Mathlib/Tactic/TacticAnalysis/FunProp.lean,Mathlib/Tactic/TacticAnalysis/Misc.lean,MathlibTest/TacticAnalysis2.lean |
6 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
188-16241 6 months ago |
206-3178 206 days ago |
0-601 10 minutes |
| 13036 |
joelriou author:joelriou |
feat(CategoryTheory/Sites): under certain conditions, cover preserving functors preserve 1-hypercovers |
Previously, in order to show that a functor between Grothendieck sites was continuous, it was necessary to show that it was "cover preserving" and "compatible preserving". There were two lemmas which could be used in order to show that a functor was "compatible preserving".
Since #13012, the better condition of "1-hypercover preserving" functor was introduced and it implies that the functor is continuous. In this PR, under the same assumptions as in the two lemmas mentionned above, we show that cover preserving functors are 1-hypercover preserving functors. This gives slightly better criteria in order to show that a functor is continuous.
---
- [x] depends on: #13004
- [x] depends on: #13011
- [x] depends on: #13012
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-category-theory
|
94/7 |
Mathlib/CategoryTheory/Sites/Continuous.lean,Mathlib/CategoryTheory/Sites/CoverPreserving.lean,Mathlib/CategoryTheory/Sites/Over.lean,Mathlib/CategoryTheory/Sites/Sieves.lean |
4 |
3 |
['github-actions', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
187-52401 6 months ago |
667-4933 667 days ago |
0-1 1 second |
| 29527 |
kim-em author:kim-em |
feat: script for checking Github URLs |
This adds scripts/check_github_urls.py, which checks for links for closed github issues/prs, and shows the context at the link.
Of course, many links are to closed pull requests because the discussion there provides useful context. Not sure how to best filter results. |
WIP
CI
|
475/0 |
scripts/README.md,scripts/check_github_urls.py |
2 |
2 |
['github-actions', 'kim-em'] |
nobody |
187-41554 6 months ago |
187-42299 187 days ago |
0-1 1 second |
| 27335 |
eric-wieser author:eric-wieser |
chore(Data/List): use simp-normal-form for boolean equalities |
This replaces `¬(p x = true)` with `p x = false`. It also makes explicit some adjacent `h : p x` spellings for symmetry, but the `= true`s were already implied by the coercion.
Zulip: [#lean4 > `h : ¬(b = true)` vs `h : b = false` @ 💬](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/.60h.20.3A.20.C2.AC.28b.20.3D.20true.29.60.20vs.20.60h.20.3A.20b.20.3D.20false.60/near/529976237)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-data
|
38/32 |
Mathlib/Data/List/DropRight.lean,Mathlib/Data/List/SplitOn.lean,Mathlib/Data/List/TakeWhile.lean |
3 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] |
nobody |
187-36043 6 months ago |
191-45001 191 days ago |
0-22091 6 hours |
| 25778 |
thefundamentaltheor3m author:thefundamentaltheor3m |
feat: Monotonicity of `setIntegral` for nonnegative functions |
This PR makes it easier to prove monotonicity of the Bochner integral on sets for nonnegative functions by removing the stronger assumption required by the general monotonicity lemma that both of the functions being compared must be integrable.
---
[](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-78799 6 months ago |
278-237 277 days ago |
0-11893 3 hours |
| 29484 |
eric-wieser author:eric-wieser |
refactor: switch to [] notation for Stream' |
I'll continue fixing this only if people agree this is a good use of this notation.
[#mathlib4 > Changing `Stream.Seq` to use `GetElem` @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Changing.20.60Stream.2ESeq.60.20to.20use.20.60GetElem.60/near/538548680)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-data
large-import
|
195/173 |
Mathlib/Algebra/ContinuedFractions/Basic.lean,Mathlib/Algebra/ContinuedFractions/Computation/Basic.lean,Mathlib/Algebra/ContinuedFractions/Translations.lean,Mathlib/Combinatorics/Hindman.lean,Mathlib/Control/Fix.lean,Mathlib/Control/LawfulFix.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/Seq/Defs.lean,Mathlib/Data/Stream/Defs.lean,Mathlib/Data/Stream/Init.lean,Mathlib/Data/WSeq/Basic.lean,Mathlib/Data/WSeq/Productive.lean |
12 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
186-51062 6 months ago |
unknown |
0-0 0 seconds |
| 22517 |
j-loreaux author:j-loreaux |
feat: `ℕ+` powers in semigroups |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
large-import
|
275/28 |
Mathlib.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/PNatPowAssoc.lean,Mathlib/Algebra/Group/PPow.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/Algebra/Ring/ULift.lean,Mathlib/Data/Num/Lemmas.lean,Mathlib/Data/Real/Basic.lean,Mathlib/Data/ZMod/Defs.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/NumberTheory/Dioph.lean,Mathlib/Tactic/ToAdditive/Frontend.lean |
14 |
6 |
['eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-bot', 'mattrobball'] |
nobody |
185-56384 6 months ago |
378-57965 378 days ago |
0-27 27 seconds |
| 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-33710 6 months ago |
185-33711 185 days ago |
39-69478 39 days |
| 29615 |
eric-wieser author:eric-wieser |
chore: add a computable shortcut for `AddCommMonoid ℂ` |
---
[](https://gitpod.io/from-referrer/)
|
t-analysis
easy
bench-after-CI
|
9/1 |
Mathlib/Analysis/Complex/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
185-10843 6 months ago |
185-10822 185 days ago |
0-104 1 minute |
| 28802 |
grunweg author:grunweg |
feat: a tactic linter for continuity/measurability which can be `fun_prop` |
---
Let's see if this finds further locations in mathlib :tada:
This PR also runs the linter in mathlib by default. I strongly think this is a good idea --- but leaves all kinds of fun questions around "where do you import this linter best". Opinions on this welcome; this PR is a first start (but no more).
[](https://gitpod.io/from-referrer/)
|
merge-conflict
large-import
awaiting-CI
t-meta
|
144/26 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Basic.lean,Mathlib/Tactic/TacticAnalysis/Declarations.lean,Mathlib/Tactic/TacticAnalysis/FunProp.lean,MathlibTest/TacticAnalysis2.lean |
6 |
12 |
['Vierkantor', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] |
nobody |
184-82368 6 months ago |
206-6174 206 days ago |
0-260 4 minutes |
| 25069 |
erdOne author:erdOne |
feat(EllipticCurve): rational points of singular nodal cubics |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebraic-geometry
|
251/0 |
Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Singular/Node.lean |
3 |
14 |
['Multramate', 'acmepjz', 'chrisflav', 'erdOne', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] |
chrisflav assignee:chrisflav |
183-71585 6 months ago |
200-16994 200 days ago |
100-20975 100 days |
| 25070 |
erdOne author:erdOne |
feat(EllipticCurve): rational points on singular cuspidal cubics |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebraic-geometry
|
123/0 |
Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Singular/Cusp.lean |
2 |
12 |
['Multramate', 'acmepjz', 'adamtopaz', 'erdOne', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot'] |
adamtopaz assignee:adamtopaz |
183-71584 6 months ago |
209-72548 209 days ago |
90-52970 90 days |
| 26670 |
yu-yama author:yu-yama |
feat(GroupExtension/Abelian): define `conjClassesEquivH1` |
This PR continues the work from #21837.
Original PR: https://github.com/leanprover-community/mathlib4/pull/21837 |
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
162/5 |
Mathlib.lean,Mathlib/GroupTheory/GroupExtension/Abelian.lean,Mathlib/GroupTheory/GroupExtension/Basic.lean,Mathlib/GroupTheory/GroupExtension/Defs.lean,docs/references.bib |
5 |
3 |
['erdOne', 'github-actions', 'mathlib4-merge-conflict-bot', 'yu-yama'] |
erdOne assignee:erdOne |
183-13478 6 months ago |
207-63256 207 days ago |
49-15167 49 days |
| 26154 |
ADedecker author:ADedecker |
refactor: add refactored APIs for algebraic filter bases |
This PR continues the work from #18437.
Original PR: https://github.com/leanprover-community/mathlib4/pull/18437 |
merge-conflict
t-topology
|
651/0 |
Mathlib.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Algebra/FilterBasisNew.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Algebra/Nonarchimedean/BasesNew.lean |
5 |
3 |
['ADedecker', 'github-actions', 'mathlib4-merge-conflict-bot'] |
PatrickMassot assignee:PatrickMassot |
183-8921 6 months ago |
183-8922 183 days ago |
87-79752 87 days |
| 27024 |
grunweg author:grunweg |
feat: Gram-Schmidt orthonormalisation for sections of a vector bundle |
Add a parametrised version of Gram-Schmidt, for sections of a topological vector bundle with a bundle metric.
This will be used to define orthonormal local frames.
From the path towards geodesics and the Levi-Civita connection.
Co-authored-by: Patrick Massot
---
- [x] depends on: #27023
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-differential-geometry
|
279/11 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/GramSchmidtOrtho.lean,Mathlib/Topology/VectorBundle/GramSchmidtOrtho.lean,scripts/noshake.json |
4 |
71 |
['faenuccio', 'github-actions', 'grunweg', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'sgouezel'] |
sgouezel assignee:sgouezel |
182-85978 6 months ago |
214-72108 214 days ago |
28-14094 28 days |
| 28580 |
kmill author:kmill |
refactor: simplify implementation of `filter_upwards` |
This PR makes a few changes to `filter_upwards`:
- it uses `focus`, which prevents multiGoalLinter from ever blaming the tactics used inside its implementation
- it constructs the whole proof syntax and elaborates it at once using `evalTactic` and `refine`, rather than using the lower-level TermElab API, which can lose track of goals
- it's written in a way that doesn't require goals to be in some particular order
This was motivated by some multiGoalLinter issues I ran into when working on https://github.com/leanprover/lean4/pull/9942
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-order
t-meta
|
14/16 |
Mathlib/Order/Filter/Defs.lean |
1 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
182-83937 6 months ago |
211-30213 211 days ago |
0-1522 25 minutes |
| 29010 |
grunweg author:grunweg |
chore: more tests for field_simp features and edge cases |
---
[](https://gitpod.io/from-referrer/)
|
|
135/0 |
MathlibTest/FieldSimp.lean |
1 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
181-61781 6 months ago |
181-61239 181 days ago |
0-71078 19 hours |
| 27937 |
madvorak author:madvorak |
feat(Logic/Basic): `congr_heq₂` |
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-logic
|
6/0 |
Mathlib/Logic/Basic.lean |
1 |
8 |
['YaelDillies', 'fpvandoorn', 'github-actions', 'madvorak', 'vihdzp'] |
fpvandoorn assignee:fpvandoorn |
181-12114 6 months ago |
207-12899 207 days ago |
17-62721 17 days |
| 29741 |
JovanGerb author:JovanGerb |
trying #28803 using lean#10178 |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
1111/718 |
.github/actionlint.yml,.github/workflows/nightly-docgen.yml,.github/workflows/nightly_detect_failure.yml,.github/workflows/report-grind-regressions.yml,Cache/Requests.lean,Mathlib.lean,Mathlib/Algebra/Field/Rat.lean,Mathlib/Algebra/Homology/ExactSequence.lean,Mathlib/Algebra/Order/Ring/Rat.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/Algebra/Polynomial/Eval/Defs.lean,Mathlib/Algebra/Polynomial/Eval/SMul.lean,Mathlib/Algebra/Ring/Rat.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Instances.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Group/Continuity.lean,Mathlib/Analysis/SpecialFunctions/Log/Summable.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/Computability/TMToPartrec.lean,Mathlib/Data/DFinsupp/Notation.lean,Mathlib/Data/FP/Basic.lean,Mathlib/Data/Finsupp/Notation.lean,Mathlib/Data/Int/Bitwise.lean,Mathlib/Data/Int/GCD.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/Data/Nat/GCD/Basic.lean,Mathlib/Data/Nat/GCD/BigOperators.lean,Mathlib/Data/Nat/PartENat.lean,Mathlib/Data/Nat/Prime/Defs.lean,Mathlib/Data/Rat/Cast/Defs.lean,Mathlib/Data/Rat/Defs.lean,Mathlib/Data/Rat/Floor.lean,Mathlib/Data/Rat/Lemmas.lean,Mathlib/Data/Seq/Basic.lean,Mathlib/Data/UInt.lean,Mathlib/Dynamics/PeriodicPts/Defs.lean,Mathlib/GroupTheory/Perm/Centralizer.lean,Mathlib/Init.lean,Mathlib/Lean/Expr/Rat.lean,Mathlib/Lean/Meta/CongrTheorems.lean,Mathlib/LinearAlgebra/PID.lean,Mathlib/LinearAlgebra/Quotient/Basic.lean,Mathlib/LinearAlgebra/Vandermonde.lean,Mathlib/Logic/Equiv/Prod.lean,Mathlib/NumberTheory/Ostrowski.lean,Mathlib/NumberTheory/Padics/PadicVal/Basic.lean,Mathlib/Order/Defs/LinearOrder.lean,Mathlib/Order/Defs/PartialOrder.lean,Mathlib/Order/Disjoint.lean,Mathlib/Order/Filter/Defs.lean,Mathlib/Probability/Distributions/Pareto.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Reassoc.lean,Mathlib/Tactic/CategoryTheory/Refs.lean,Mathlib/Tactic/DeriveFintype.lean,Mathlib/Tactic/FieldSimp.lean,Mathlib/Tactic/Hint.lean,Mathlib/Tactic/Linarith/Oracle/SimplexAlgorithm/Datatypes.lean,Mathlib/Tactic/Linter/DeprecatedModule.lean,Mathlib/Tactic/Linter/Header.lean,Mathlib/Tactic/Linter/Lint.lean,Mathlib/Tactic/Linter/Style.lean,Mathlib/Tactic/NormNum/GCD.lean,Mathlib/Tactic/StacksAttribute.lean,Mathlib/Tactic/SuppressCompilation.lean,Mathlib/Tactic/ToAdditive/Frontend.lean,Mathlib/Tactic/WLOG.lean,Mathlib/Testing/Plausible/Sampleable.lean,Mathlib/Util/Notation3.lean,Mathlib/Util/ParseCommand.lean,Mathlib/Util/Superscript.lean,MathlibTest/AssertExists.lean,MathlibTest/CalcQuestionMark.lean,MathlibTest/Change.lean,MathlibTest/DeprecateTo.lean,MathlibTest/FieldSimp.lean,MathlibTest/FindSyntax.lean,MathlibTest/LibrarySearch/basic.lean,MathlibTest/LibrarySearch/mathlib.lean,MathlibTest/LibrarySearch/observe.lean,MathlibTest/MinImports.lean,MathlibTest/RewriteSearch/Basic.lean,MathlibTest/RewriteSearch/Polynomial.lean,MathlibTest/StacksAttribute.lean,MathlibTest/Subsingleton.lean,MathlibTest/Use.lean,MathlibTest/Variable.lean,MathlibTest/hint.lean,MathlibTest/lift.lean,MathlibTest/linarith.lean,MathlibTest/notation3.lean,MathlibTest/propose.lean,MathlibTest/renameBvar.lean,MathlibTest/rewrites.lean,MathlibTest/ring.lean,MathlibTest/says.lean,MathlibTest/success_if_fail_with_msg.lean |
105 |
2 |
['JovanGerb', 'leanprover-bot'] |
nobody |
181-7723 6 months ago |
181-14829 181 days ago |
0-15 15 seconds |
| 7125 |
eric-wieser author:eric-wieser |
feat: additive monoid structure via biproducts |
I suspect I'm missing a trick with these transport lemmas.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-category-theory
awaiting-CI
|
237/0 |
Mathlib/CategoryTheory/Limits/Skeleton.lean |
1 |
3 |
['alreadydone', 'eric-wieser', 'mathlib4-merge-conflict-bot'] |
nobody |
180-57042 5 months ago |
unknown |
0-0 0 seconds |
| 27950 |
alreadydone author:alreadydone |
feat(MonoidAlgebra): criteria for `single` to be a unit, irreducible or prime |
---
- [ ] depends on: #27936
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
blocked-by-other-PR
label:t-algebra$ |
714/192 |
Mathlib.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/BigOperators/Group/Finset/Piecewise.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Basic.lean,Mathlib/Algebra/Divisibility/Basic.lean,Mathlib/Algebra/Divisibility/Finite.lean,Mathlib/Algebra/Divisibility/Hom.lean,Mathlib/Algebra/Divisibility/Prod.lean,Mathlib/Algebra/Divisibility/Units.lean,Mathlib/Algebra/Group/Action/Pointwise/Finset.lean,Mathlib/Algebra/Group/Irreducible/Lemmas.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/MonoidAlgebra/Divisibility.lean,Mathlib/Algebra/MonoidAlgebra/NoZeroDivisors.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Prime/Defs.lean,Mathlib/Algebra/Prime/Lemmas.lean,Mathlib/Algebra/Prime/Prod.lean,Mathlib/Data/Nat/Init.lean,Mathlib/Dynamics/PeriodicPts/Defs.lean,Mathlib/GroupTheory/Coset/Card.lean,Mathlib/GroupTheory/Exponent.lean,Mathlib/GroupTheory/GroupAction/Blocks.lean,Mathlib/GroupTheory/GroupAction/Period.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/GroupTheory/Schreier.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/Tactic/ToAdditive/Frontend.lean |
33 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
180-1706 5 months ago |
224-59743 224 days ago |
0-53 53 seconds |
| 28067 |
grunweg author:grunweg |
Docstring enumerations |
Tracking PR; to be split. Audit all ocurrences of `^ \S`; exhaustive.
---
- [x] depends on: #28068
- [x] depends on: #28069
- [ ] depends on: #28070
- [x] depends on: #28118
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
|
264/263 |
Archive/Wiedijk100Theorems/SumOfPrimeReciprocalsDiverges.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/Algebra/BrauerGroup/Defs.lean,Mathlib/Algebra/Module/LinearMap/Polynomial.lean,Mathlib/CategoryTheory/Abelian/NonPreadditive.lean,Mathlib/CategoryTheory/EqToHom.lean,Mathlib/CategoryTheory/Filtered/Basic.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/Pi.lean,Mathlib/CategoryTheory/Monoidal/Center.lean,Mathlib/CategoryTheory/Sites/Grothendieck.lean,Mathlib/CategoryTheory/Sites/Pretopology.lean,Mathlib/Condensed/Discrete/Characterization.lean,Mathlib/FieldTheory/ChevalleyWarning.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Basic.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/RootSystem/GeckConstruction/Basic.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/MeasureSpaceDef.lean,Mathlib/MeasureTheory/OuterMeasure/Basic.lean,Mathlib/MeasureTheory/OuterMeasure/Defs.lean,Mathlib/NumberTheory/FLT/Basic.lean,Mathlib/NumberTheory/LSeries/PrimesInAP.lean,Mathlib/RingTheory/Grassmannian.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean,Mathlib/RingTheory/WittVector/Teichmuller.lean,Mathlib/Tactic/Bound.lean,Mathlib/Tactic/Bound/Attribute.lean,Mathlib/Tactic/ENatToNat.lean,Mathlib/Tactic/FBinop.lean,Mathlib/Tactic/IntervalCases.lean,Mathlib/Tactic/TermCongr.lean,Mathlib/Util/Notation3.lean,Mathlib/Util/Superscript.lean,docs/Conv/Guide.lean |
38 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
178-3841 5 months ago |
222-17904 222 days ago |
0-2498 41 minutes |
| 28908 |
joelriou author:joelriou |
feat(CategoryTheory): Pullback functors on `Over` categories in `Type` have right adjoints |
Given a map `f : E → B`, in order to show that `Over.pullback f : Over B ⥤ Over E` commutes with colimits, we show that it admits a right adjoint. In order to do that, we first construct a functor `overPullback f : Over B ⥤ Over E` whose definition involves explicit types rather than categorical pullbacks, and we define its right adjoint `overPushforward f : Over E ⥤ Over B`.
(In a future PR, it will be shown that the `Over.pullback` also commutes with colimits in categories of presheaves, and hopefully this will be used in the construction of the Quillen model category structure on simplicial sets.)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-category-theory
|
103/0 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Types/OverPullback.lean,Mathlib/CategoryTheory/Limits/Types/Shapes.lean |
3 |
10 |
['emilyriehl', 'github-actions', 'joelriou', 'mathlib4-merge-conflict-bot', 'robin-carlier', 'sinhp'] |
nobody |
175-66607 5 months ago |
190-379 189 days ago |
13-55255 13 days |
| 25480 |
ocfnash author:ocfnash |
feat: define a concrete model of the `𝔤₂` root system |
This is a bit of an experiment to test API but it should also make it easier to prove some properties of `𝔤₂`.
---
- [x] depends on: #25477
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
large-import
label:t-algebra$ |
120/15 |
Mathlib/LinearAlgebra/RootSystem/Defs.lean,Mathlib/LinearAlgebra/RootSystem/Finite/G2.lean,Mathlib/LinearAlgebra/RootSystem/Reduced.lean |
3 |
9 |
['eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'ocfnash'] |
nobody |
174-22407 5 months ago |
285-6515 285 days ago |
0-1 1 second |
| 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 |
174-20518 5 months ago |
174-20519 174 days ago |
19-81030 19 days |
| 29588 |
Periecle author:Periecle |
feat(Analysis/Complex/Residue): Implement residue theory for complex functions at isolated singularities |
# Add basic residue theory for complex functions
This PR introduces the residue theory implementation in mathlib.
## Main additions
- **`HasIsolatedSingularityAt f c`**: Predicate for functions with isolated singularities at point `c`
- **`residue f c hf`**: The residue of `f` at isolated singularity `c`, defined via circle integrals
- **Radius independence**: `residue_eq_two_pi_I_inv_smul_circleIntegral` - residue equals normalized circle integral for any valid radius
- **Holomorphic residues**: `residue_of_holomorphic` - functions holomorphic in a neighborhood have zero residue
- **Simple pole formula**: `residue_simple_pole` - for `f(z) = (z-c)⁻¹ * g(z)`, residue equals `g(c)`
## Implementation notes
- Builds on existing circle integral infrastructure in `CauchyIntegral.lean`
- Uses `Classical.choose` to extract witness radius from isolated singularity condition
- Comprehensive documentation with mathematical context and examples
- Establishes foundation for residue theorem, argument principle, and other applications
## Examples included
- `residue(1/z, 0) = 1` (canonical simple pole)
- Radius independence demonstration
- Zero residues for holomorphic functions
This provides the essential building blocks for complex analysis and first step to formalize residue theory. |
awaiting-author
t-analysis
new-contributor
|
383/0 |
Mathlib/Analysis/Complex/Residue/Basic.lean |
1 |
17 |
['Periecle', 'github-actions', 'hrmacbeth', 'llllvvuu', 'loefflerd'] |
nobody |
173-82277 5 months ago |
186-240 185 days ago |
0-1498 24 minutes |
| 29482 |
mattrobball author:mattrobball |
refactor (Algebra.Group.Defs): add npow/zpow/nsmul/zsmul as fields of new parents classes |
Adds ZPow G class and makes this a parent to DivInvMonoid and the corresponding additive versions. Updates zpow/zsmul operations to use the integrated power/scalar multiplication syntax.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
177/122 |
Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Algebra/Group/Commute/Defs.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Int/Defs.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/GroupWithZero/Basic.lean,Mathlib/Algebra/Module/NatInt.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean,Mathlib/Algebra/Ring/ULift.lean,Mathlib/Data/BitVec.lean,Mathlib/Tactic/Abel.lean,Mathlib/Tactic/NormNum/Pow.lean |
21 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
173-30776 5 months ago |
188-57215 188 days ago |
0-160 2 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-83108 5 months ago |
178-2832 178 days ago |
0-10638 2 hours |
| 27829 |
dupuisf author:dupuisf |
feat: modify `cfc_tac` to use `grind` |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
60/50 |
Mathlib/Algebra/Order/Star/Basic.lean,Mathlib/Algebra/Star/SelfAdjoint.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Integral.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/NonUnital.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unital.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/ExpLog.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/PosPart/Basic.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean,Mathlib/Tactic/ContinuousFunctionalCalculus.lean |
9 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
171-85019 5 months ago |
227-82579 227 days ago |
0-1 1 second |
| 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-82028 5 months ago |
252-81965 252 days ago |
73-13048 73 days |
| 26178 |
ppls-nd-prs author:ppls-nd-prs |
feat(CategoryTheory/Limits): Fubini for products |
We show that the product of products is a product indexed by the sigma type.
---
[](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 |
169-10921 5 months ago |
270-20321 270 days ago |
0-47289 13 hours |
| 27214 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): Categorical pullback squares |
In this PR, we give the definition and first basic properties of categorical pullback squares.
Using our previous work on `CategoricalPullback`, we define a typeclass `CatPullbackSquare T L R B` that asserts that a given `CatCommSq T L R B` is a "pullback square": this is the data of a chosen adjoint equivalence to the canonical functor from the top left corner of the square to the categorical pulback of its leg. Using this equivalence, be derive a universal property for functors from `X`with values in the top left corner of the square: they are equivalent to `CatCommSqOver R B X`, the category of categorical commutative squares over the cospan `R, B` with top left corner `X`.
We prove some coherence result for this equivalence, most notably an isomorphism that, given `S : CatCommSqOver R B X`, bundles the two commutative triangles formed by the induced functor, and the coherence between the squares that these isomorphisms satisfy: this is conveniently bundled in the data of a single isomorphisms of `CatCommSqOver R B X`.
Finally, we provide a `Prop`-class `IsCatPullbackSquare` that merely asserts the existence (via `Nonempty`) of the relevant data: we show that it is tautotogically equivalent to the propopsition that the canonical functor to the categorical pullback is an equivalence.
---
- [ ] depends on: #26679
[](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-72110 5 months ago |
168-72111 168 days ago |
0-4775 1 hour |
| 27391 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): pseudofunctoriality structure of categorical pullback squares |
Using pseudofunctoriality of the construction `CatCommSqOver`, we show that categorical pullback squares have pseudofunctorial-like structures: given a `CatCommSq T L R B` and a `CatPullbackSq T' L' R' B'`, and a `CatCospanTransform R B R' B'`, there is a
functor `CatPullbackSq.functorOfTransform` between the top left corners of the two squares. We give `CatCommSq` instances that relates this functor with other constructions such as `CatCommSqOver.transform`.
Similarly, we construct `CatPullbackSq.functorOfTransform₂`, that maps morphisms of `CatCospanTransforms` to natural transformations. Finally, we show that `functorOfTransform` respects identities and compositions.
We do not yet prove that all of this data satisfies all the expected properties of pseudofunctors: this will be the content of a follow-up PR.
---
- [ ] depends on: #27214
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-category-theory
|
1090/1 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean |
3 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
168-72108 5 months ago |
237-4202 237 days ago |
0-264 4 minutes |
| 27432 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): pseudofunctoriality of categorical pulback squares |
In this PR, we show that the "unbundled pseudofunctor" data constructed in #27391 satisfy the axioms of an actual "unbundled pseudo-functor". This is intended to give all the required coherence for a formal bicategory-like proof of the fact that `CatCospanAdjunction`s from #26578 (resp. `CatCospanEquivalence`s from #26579) promote to adjunctions (resp. equivalences) between the top left corners of categorical pullback squares.
---
- [ ] depends on: #27391
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-category-theory
|
1244/1 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean |
3 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
168-72106 5 months ago |
235-76303 235 days ago |
0-1056 17 minutes |
| 27481 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): adjunctions and equivalences of categorical pullback squares |
We show that a `CatCospanAdjunction` (resp `CatCospanEquivalence`) induces adjunctions (resp. equivalences) of the categories that sit at the top left corners of categorical pullback squares via the pseudofunctoriality proved in #27432. Thanks to the lemmas that proves that categorical pullback squares are fully pseudofunctorial, the proof is purely formal ("a pseudofunctor maps adjunctions (resp. equivalences) to adjunctions (resp. equivalences)"), rather than being a painful computation for the triangle equalities.
In particular, the results here show that two categorical pullback squares with equivalent "underlying categorical cospan" are equivalent, which realizes the equivalence-invariance of the notion of categorical pullbacks.
We do not yet show that a (not-necessarily pullback) `CatCommSq T L R B` equivalent to a `CatPullbackSquare T' L' R' B'` via a
`CatCospanEquivalence R B R' B'` is also a `CatPullbackSquare`: this will be the content of a follow-up PR.
---
- [ ] depends on: #27432
- [ ] depends on: #26579
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-category-theory
large-import
|
1829/1 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean |
4 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
168-72104 5 months ago |
234-74101 234 days ago |
0-49 49 seconds |
| 27686 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical/Square): more API for `CatPullbackSquare` |
In this PR, we provide more API around the notion of categorical pullback squares. Having established the pseudofunctoriality of the notion in #27432, we characterize the behaviour of the equivalence
`CatPullbackSquare.functorEquiv (π₁ R B) (π₂ R B) R B X : X ⥤ R ⊡ B ≌ CatCommSqOver R B X` via various (d)simp lemmas. This ports all the pseudofunctoriality and equivalence-invariance results of `CatPullbackSquare` to `CategoricalPullback`.
We also show this equivalence is isomorphic to the one from `CategoricalPullback.functorEquiv`.
Unfortunately, this small duplication is necessary, as `CatPullbackSquare.functorEquiv` is bulit using `CategoricalPullback.functorEquiv`. The equivalence `CategoricalPullback.functorEquiv` is now an implementation detail, the idiomatic way is to use `CatPullbackSquare.functorEquiv`; docstrings are updated accordingly.
This deprecates some constructions and lemmas for `CategoricalPullback`: they are now special case of the API that is available for any categorical pullback square.
---
- [ ] depends on: #27481
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-category-theory
large-import
|
2245/74 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean |
4 |
4 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
168-71979 5 months ago |
229-77842 229 days ago |
0-2752 45 minutes |
| 27687 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): squares equivalent to a `CatPullbackSquare` |
We provide the last remaining piece of the "equivalence-invariance" of categorical pullback squares: given a `CatCommSq (T : C₁ ⥤ _) L R B`, a `CatPullbackSquare (T' : D₁ ⥤ _) L' R' B'`, a `ψ : CatCospanEquivalence R B R' B'` and an equivalence `C₁ ≌ D₁` that identifies to the functor induced by `ψ`, the `CatCommSq T L R B` can be promoted to a `CatPullbackSquare T L R B'`.
In other words: a `CatCommSq` that is equivalent to a `CatPullbackSquare` is a `CatPullbackSquare`.
---
- [ ] depends on: #27686
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-category-theory
large-import
|
2318/74 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean |
4 |
4 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
168-71977 5 months ago |
229-78191 229 days ago |
0-959 15 minutes |
| 27688 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): coherence statement for `CatPullbackSquare.inverse` |
This PR records a "coherence" statement for `CatPullbackSquares`: it bridges the gap between the user-provided `inverse` field of the `CatPullbackSquare` structure, and the other way one can deduce an equivalence between the top left corner of the square and a categorical pullback (via the pseudofunctoriality of categorical pullback squares induced by the identity `CatCospanTransform`). We show the two possible natural isomorphisms on the inverses of the equivalences are in fact the same (hence the term "coherence").
---
- [ ] depends on: #27686
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-category-theory
large-import
|
2351/74 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean |
4 |
4 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
168-71976 5 months ago |
229-77845 229 days ago |
0-283 4 minutes |
| 27689 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): horizontal pasting calculus for `CatPullbackSquare` |
Given two categorical commutative squares that can be horizontally pasted, we prove that if the rightmost square is a `CatPullbackSquare`, then the leftmost square is a `CatPullbackSquare` if and only if the horizontal composition of the squares is a `CatPullbackSquare`. This generalizes to `CatPullbackSquare` the well-known "pasting calculus" for pullback squares in a category.
The statement is made available both in terms of the `Type`-class `CatPullbackSquare`, and in terms of the `Prop`-class `IsCatPullbackSquare`.
---
- [ ] depends on: #27686
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-category-theory
large-import
|
2562/74 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Pasting.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean |
5 |
4 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
168-71974 5 months ago |
229-77105 229 days ago |
0-667 11 minutes |
| 27690 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): vertical pasting calculus for `CatPullbackSquare` |
We mirror the constructions from #27689 to construct the vertical pasting calculus of `CatPullbackSquares`: given two vertically composable `CatCommSq` such that the bottom one is a `CatPullbackSquare`, the top square is a `CatPullbackSquare` if and only if the vertical composition (the "outer" square) is a `CatPullbackSquare`.
---
- [ ] depends on: #27689
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-category-theory
large-import
|
2841/74 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Pasting.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean |
5 |
4 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
168-71972 5 months ago |
229-10333 229 days ago |
0-5969 1 hour |
| 27740 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Limits/Shapes/Pullback/Categorical): pasting calculus for `CategoricalPullback` |
Specialize the pasting calculus for categorical pullback squares to `CategoricalPullback̀` by providing equivalences of categories `R ⊡ (B₁ ⋙ B₂) ≌ (π₂ R B₂) ⊡ B₁` and `(R₁ ⋙ R₂) ⊡ B ≌ R₁ ⊡ (π₁ R₂ B)`. The `@[simps!]` attribute works wonderfully on these equivalences so that their component all have the expected (d)simp lemmas.
---
- [ ] depends on: #27690
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-category-theory
large-import
|
2872/75 |
Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Pasting.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Square.lean |
5 |
4 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
168-71971 5 months ago |
229-10853 229 days ago |
0-507 8 minutes |
| 26330 |
Timeroot author:Timeroot |
feat: "Junk value" test file |
This PR continues the work from #25173.
Original PR: https://github.com/leanprover-community/mathlib4/pull/25173 |
awaiting-author
t-data
|
360/0 |
MathlibTest/Junk.lean |
1 |
17 |
['SnirBroshi', 'Timeroot', 'bryangingechen', 'github-actions', 'leanprover-community-bot-assistant', 'madvorak', 'pechersky', 'vihdzp'] |
pechersky assignee:pechersky |
168-39355 5 months ago |
168-39355 168 days ago |
48-73998 48 days |
| 28452 |
plp127 author:plp127 |
feat: Define `ZMod.fintype` without cases |
Define `ZMod.fintype` without casing on `n` except inside the proof.
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-data
|
2/3 |
Mathlib/Data/ZMod/Defs.lean |
1 |
2 |
['github-actions', 'jcommelin'] |
pechersky assignee:pechersky |
168-38574 5 months ago |
168-38574 168 days ago |
46-561 46 days |
| 28807 |
alreadydone author:alreadydone |
experiment: Submodule with SMul only (no Semiring) |
---
`SubMulAction` already takes `SMul`.
TODO: relax typeclass requirements of `Ideal` as well.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
awaiting-CI
bench-after-CI
label:t-algebra$ |
54/42 |
Mathlib/Algebra/Module/Submodule/Defs.lean |
1 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
168-35144 5 months ago |
unknown |
0-0 0 seconds |
| 28808 |
alreadydone author:alreadydone |
experiment: Ideal with Mul only (no Semiring) |
---
- [ ] depends on: #28807
[](https://gitpod.io/from-referrer/)
|
t-algebra
blocked-by-other-PR
bench-after-CI
awaiting-CI
merge-conflict
label:t-algebra$ |
172/120 |
Mathlib/Algebra/Module/Submodule/Defs.lean,Mathlib/Algebra/Module/Submodule/Lattice.lean,Mathlib/LinearAlgebra/Matrix/Ideal.lean,Mathlib/LinearAlgebra/TensorProduct/Subalgebra.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/DividedPowers/SubDPIdeal.lean,Mathlib/RingTheory/Ideal/Defs.lean,Mathlib/RingTheory/Ideal/Lattice.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean,Mathlib/RingTheory/Spectrum/Prime/RingHom.lean |
10 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
168-35143 5 months ago |
unknown |
0-0 0 seconds |
| 26466 |
robin-carlier author:robin-carlier |
feat(AlgebraicTopology/SimplexCategory/Augmented): the canonical monoid object in the augmented simplex category |
Show that in the augmented simplex category, `⦋0⦌` is an internal monoid object.
Future work will show that this is in fact the universal monoid object: for any monoidal category `C`, evaluation at `⦋0⦌` induces an equivalence of categories between `Mon_ C` and the category of monoidal functors from `AugmentedSimplexCategory` to `C`. The resulting augmented cosimplicial object one gets from this construction is sometimes called the "monoidal bar construction" attached to a monoid.
This PR was split from #25743.
---
- [ ] depends on: #25743
[](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 |
168-5112 5 months ago |
263-12396 263 days ago |
0-1708 28 minutes |
| 28074 |
grunweg author:grunweg |
Isbilinearmap |
TODO see if it builds, move everything to the right place, add docs.
update Pr description - written by Patrick, part of #26221 (and prereq for #28056)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
64/0 |
Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/LinearAlgebra/BilinearMap.lean |
2 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
167-57879 5 months ago |
222-17395 222 days ago |
0-2 2 seconds |
| 26579 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Limits/Pullbacks/Categorical/CatCospanTransform): equivalences of categorical cospans |
Building on the notion of adjunctions of categorical cospans, we define equivalences of categorical cospans as a structure extending that of an adjunction, with the extra data of a chosen inverse of the unit and counit morphisms.
To mirror the design for usual equivalences of categories, we provide an alternative constructor that requires the forward and
inverse direction of the equivalence, as well as unit and counits already as isomorphisms, and only a proof of the left triangle identity.
Finally, we also provide a third constructor that builds such an equivalence out of the data of 3 component equivalences of categories, as well as chosen `CatCommSq` on the functors of the these equivalences.
This notion of equivalence of categorical cospans is intended to encode the required data to show the full equivalence invariance of the categorical pullback defined in #26366.
---
- [ ] depends on: #26578
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-category-theory
large-import
|
438/0 |
Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/CatCospanTransform.lean |
1 |
5 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
167-11976 5 months ago |
259-16517 259 days ago |
0-838 13 minutes |
| 26578 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Limits/Pullbacks/Categorical/CatCospanTransform): adjunctions of categorical cospans |
We build upon the bicategory-like structure developed in #26447 and #26412 to define the notion of adjunctions of categorical cospans. This is a structure encoding the data of two `CatCospanTransform`s, along with the usual unit and counit morphisms as part of the data, satisfying the usual left and right triangle identities. We provide basic API for these, such as extracting adjunctions between individual components. We also provide a proof that the notion satisfies a "coherence": with our chosen constructor, the forward direction of the structure `CatCommSq` on the left adjoints correspond to the inverse of the square for the right adjoints through `mateEquiv`.
These adjunctions will be used as a substrate for defining equivalences of categorical cospans in a future PR: such an equivalence will be a structure extending a `CatCospanAdjunction` with isomorphisms data on the unit and co-unit (we will however provide alternative constructors in sync with the constructor for equivalences of categories).
---
- [x] depends on: #26447
- [x] depends on: #26547
[](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 |
167-8337 5 months ago |
259-17509 259 days ago |
0-625 10 minutes |
| 26115 |
grunweg author:grunweg |
WIP/proof of concept,feat: the inverse function theorem for manifolds |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-differential-geometry
|
348/0 |
Mathlib.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Geometry/Manifold/InverseFunctionTheorem.lean,Mathlib/Topology/PartialHomeomorph.lean |
4 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
166-10224 5 months ago |
unknown |
0-0 0 seconds |
| 27634 |
agjftucker author:agjftucker |
fix(Analysis/Calculus/Implicit): consistently rename {`map`, `fun`, `function`} to `fun` |
There are several clear naming issues in the file Implicit.lean, such as
```
theorem prod_map_implicitFunction :
∀ᶠ p : F × G in 𝓝 (φ.prodFun φ.pt), φ.prodFun (φ.implicitFunction p.1 p.2) = p :=
```
where `prod_map` and `prodFun` both refer to the same thing. In this PR I have done my best to resolve these as consistently as possible by renaming everything `map`, also everything `function`, to `fun`. This has the added benefit of making some long names a little shorter.
In passing I rewrapped some comments and replaced `haveI` with `have` where it had been used like `haveI` in Lean 3.
Moves:
- ImplicitFunctionData -> ImplicitFunData
- ImplicitFunctionData.implicitFunction -> ImplicitFunData.implicitFun
- ImplicitFunctionData.prod_map_implicitFunction -> ImplicitFunData.prodFun_implicitFun
- ImplicitFunctionData.left_map_implicitFunction -> ImplicitFunData.leftFun_implicitFun
- ImplicitFunctionData.right_map_implicitFunction -> ImplicitFunData.rightFun_implicitFun
- ImplicitFunctionData.implicitFunction_apply_image -> ImplicitFunData.implicitFun_apply_image
- ImplicitFunctionData.implicitFunction_hasStrictFDerivAt -> ImplicitFunData.hasStrictFDerivAt_implicitFun
- HasStrictFDerivAt.implicitFunctionDataOfComplemented -> HasStrictFDerivAt.implicitFunDataOfComplemented
- HasStrictFDerivAt.implicitFunctionOfComplemented -> HasStrictFDerivAt.implicitFunOfComplemented
- HasStrictFDerivAt.map_implicitFunctionOfComplemented_eq -> HasStrictFDerivAt.map_implicitFunOfComplemented_eq
- HasStrictFDerivAt.eq_implicitFunctionOfComplemented -> HasStrictFDerivAt.eq_implicitFunOfComplemented
- HasStrictFDerivAt.implicitFunctionOfComplemented_apply_image -> HasStrictFDerivAt.implicitFunOfComplemented_apply_image
- HasStrictFDerivAt.to_implicitFunctionOfComplemented -> HasStrictFDerivAt.to_implicitFunOfComplemented
- HasStrictFDerivAt.implicitFunction -> HasStrictFDerivAt.implicitFun
- HasStrictFDerivAt.tendsto_implicitFunction -> HasStrictFDerivAt.tendsto_implicitFun
- _root_.Filter.Tendsto.implicitFunction -> _root_.Filter.Tendsto.implicitFun
- HasStrictFDerivAt.map_implicitFunction_eq -> HasStrictFDerivAt.map_implicitFun_eq
- HasStrictFDerivAt.implicitFunction_apply_image -> HasStrictFDerivAt.implicitFun_apply_image
- HasStrictFDerivAt.eq_implicitFunction -> HasStrictFDerivAt.eq_implicitFun
- HasStrictFDerivAt.to_implicitFunction -> HasStrictFDerivAt.to_implicitFun
---
- [ ] depends on: #26985
[](https://gitpod.io/from-referrer/)
|
merge-conflict
blocked-by-other-PR
t-analysis
|
271/123 |
Mathlib/Analysis/Calculus/Implicit.lean,docs/1000.yaml,docs/overview.yaml,docs/undergrad.yaml |
4 |
4 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
166-7733 5 months ago |
207-62626 207 days ago |
23-28131 23 days |
| 28245 |
robin-carlier author:robin-carlier |
feat(CategoryTheory/Bicategory/NaturalTransformation/Icon): strict associativity and unitality of icon composition |
We show that the vertical composition of icons defined in #28244 satisfies strict associativity and strict unitality. This morally shows that icons are fit as the 2-cells of a bicategory structure on bicategories and lax functors, though we do not record an instance of this sort.
---
- [ ] depends on: #28244
[](https://gitpod.io/from-referrer/)
|
WIP
blocked-by-other-PR
t-category-theory
awaiting-CI
large-import
merge-conflict
|
975/33 |
Mathlib.lean,Mathlib/CategoryTheory/Bicategory/EqToHom.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Icon.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Lax.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Oplax.lean,Mathlib/CategoryTheory/Bicategory/Strict.lean,Mathlib/CategoryTheory/EqToHom.lean,scripts/noshake.json |
8 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
165-63248 5 months ago |
217-77987 217 days ago |
0-537 8 minutes |
| 30079 |
dagurtomas author:dagurtomas |
feat(CategoryTheory): IsSheafFor as a multiequalizer condition |
---
[](https://gitpod.io/from-referrer/)
|
WIP
t-category-theory
|
112/0 |
Mathlib/CategoryTheory/Sites/Multifork.lean |
1 |
3 |
['chrisflav', 'github-actions', 'joelriou'] |
nobody |
165-50572 5 months ago |
168-29378 168 days ago |
0-1 1 second |
| 29012 |
grunweg author:grunweg |
chore: reduce `Topology` imports in `Data` |
Move Data.Real.Sqrt to Analysis.
---
- [ ] depends on: #28966
[](https://gitpod.io/from-referrer/)
|
merge-conflict
file-removed
|
25/21 |
Archive/Imo/Imo1959Q2.lean,Archive/Imo/Imo1960Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2008Q4.lean,Archive/Sensitivity.lean,Mathlib.lean,Mathlib/Algebra/Star/CHSH.lean,Mathlib/Analysis/Complex/Norm.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Normed/Module/Ball/Homeomorph.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/Real/Sqrt.lean,Mathlib/Data/Rat/NatSqrt/Real.lean,Mathlib/Data/Real/CompleteField.lean,Mathlib/Data/Real/Irrational.lean,Mathlib/Data/Real/StarOrdered.lean,Mathlib/NumberTheory/Zsqrtd/ToReal.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/NormNum/RealSqrt.lean,MathlibTest/positivity.lean |
20 |
5 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
165-3650 5 months ago |
167-13502 167 days ago |
0-11345 3 hours |
| 26601 |
yuma-mizuno author:yuma-mizuno |
feat(CategoryTheory): make `Functor.comp` irreducible |
[#mathlib4 > Functor identity `𝟭 _ ⋙ F = F` is definitional equality](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Functor.20identity.20.60.F0.9D.9F.AD.20_.20.E2.8B.99.20F.20.3D.20F.60.20is.20definitional.20equality/with/523978659)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-category-theory
|
514/261 |
Mathlib/AlgebraicTopology/DoldKan/Compatibility.lean,Mathlib/AlgebraicTopology/SimplexCategory/Defs.lean,Mathlib/CategoryTheory/Adjunction/Basic.lean,Mathlib/CategoryTheory/CatCommSq.lean,Mathlib/CategoryTheory/Category/Cat.lean,Mathlib/CategoryTheory/Category/RelCat.lean,Mathlib/CategoryTheory/Category/ULift.lean,Mathlib/CategoryTheory/Core.lean,Mathlib/CategoryTheory/Discrete/Basic.lean,Mathlib/CategoryTheory/EqToHom.lean,Mathlib/CategoryTheory/Equivalence.lean,Mathlib/CategoryTheory/Functor/Basic.lean,Mathlib/CategoryTheory/Functor/Category.lean,Mathlib/CategoryTheory/Functor/Const.lean,Mathlib/CategoryTheory/Functor/Currying.lean,Mathlib/CategoryTheory/Functor/CurryingThree.lean,Mathlib/CategoryTheory/Functor/FullyFaithful.lean,Mathlib/CategoryTheory/Functor/Functorial.lean,Mathlib/CategoryTheory/Functor/ReflectsIso/Basic.lean,Mathlib/CategoryTheory/Functor/TwoSquare.lean,Mathlib/CategoryTheory/Groupoid/FreeGroupoid.lean,Mathlib/CategoryTheory/Join/Basic.lean,Mathlib/CategoryTheory/Limits/Cones.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Categorical/Basic.lean,Mathlib/CategoryTheory/ObjectProperty/FullSubcategory.lean,Mathlib/CategoryTheory/Opposites.lean,Mathlib/CategoryTheory/PathCategory/Basic.lean,Mathlib/CategoryTheory/Pi/Basic.lean,Mathlib/CategoryTheory/Products/Associator.lean,Mathlib/CategoryTheory/Products/Basic.lean,Mathlib/CategoryTheory/Quotient.lean,Mathlib/CategoryTheory/Sigma/Basic.lean,Mathlib/CategoryTheory/Whiskering.lean,Mathlib/CategoryTheory/Yoneda.lean |
34 |
3 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] |
nobody |
164-77851 5 months ago |
unknown |
0-0 0 seconds |
| 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-76452 5 months ago |
334-48825 334 days ago |
5-42380 5 days |
| 28630 |
Antidite author:Antidite |
feat(Archive/Imo): right isosceles configuration in the complex plane |
feat(Archive/Imo): right isosceles configuration in the complex plane
This adds `Archive/Imo/Imo1975Q3.lean`, formalizing a triangle configuration
with points A=0, B=1, C=z and auxiliary points R, P, Q built via complex
rotations and sine-based scale factors.
Main results:
* `angle_and_distance`: ∠QRP = π/2 and dist Q R = dist R P.
* Key identity `QRP_rot90`: (Q z).z − R.z = e^{iπ/2} · ((P z).z − R.z).
Design/Style:
* Minimal imports; module docstring; semantic lemma names; all definitions and
theorems live under the namespace `IMO.TriangleConfig`.
Moves:
- (none)
Deletions:
- (none)
---
[](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-63067 5 months ago |
163-63067 163 days ago |
46-26438 46 days |
| 30192 |
erdOne author:erdOne |
feat(RingTheory): valuative topology = adic topology for discrete rank 1 valuations |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-ring-theory
t-topology
|
190/2 |
Mathlib.lean,Mathlib/Order/Filter/Bases/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Integers.lean,Mathlib/Topology/Algebra/Nonarchimedean/AdicTopology.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean |
6 |
3 |
['erdOne', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
163-5775 5 months ago |
164-220 163 days ago |
0-331 5 minutes |
| 26886 |
pechersky author:pechersky |
feat(NumberTheory/Padics/ValuativeRel): ValuativeRel ℚ_[p] |
as well as instances for IsRankLeOne, IsNontrivial, IsDiscrete
---
[](https://gitpod.io/from-referrer/)
- [ ] depends on: #26827 |
WIP
t-number-theory
blocked-by-other-PR
t-algebra
merge-conflict
t-analysis
label:t-algebra$ |
310/25 |
Mathlib.lean,Mathlib/Analysis/Normed/ValuativeRel.lean,Mathlib/NumberTheory/Padics/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean |
4 |
4 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] |
nobody |
162-49652 5 months ago |
252-35565 252 days ago |
0-401 6 minutes |
| 27314 |
pechersky author:pechersky |
feat(TopologyValued): `Valued` based on a range topology |
Switch from a topology based on `fun γ : Γ₀ˣ => (v.ltAddSubgroup γ : AddSubgroup R)` to
```
fun rs : {rs : R × R // v rs.1 ≠ 0 ∧ v rs.2 ≠ 0} ↦
(v.ltAddSubgroup (Units.mk0 (v rs.val.2 / v rs.val.1) (by simp [rs.prop])) : AddSubgroup R)
```
This is in preparation for using `IsValuativeTopology` instead. In fact, that basis is precisely what `ValuativeTopology` asserts.
`Valued.mk'` is kept, we do not yet rely on `IsValuativeTopology` and `UniformSpace`.
The new `Valued` behaves the same way as it did before for `MulArchimedean` valuation codomains, which are all of the current in-mathlib uses of `Valued`. This is, for rank-one valuations. For valuations which rank one, but do not pass to the whole codomain, there are helper lemmas to discuss open/closed/clopen sets.
---
[](https://gitpod.io/from-referrer/)
- [x] depends on: #27264
- [x] depends on: #27265
- [ ] depends on: #27163
- [x] depends on: #27339 |
merge-conflict
t-topology
blocked-by-other-PR
|
733/259 |
Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/NumberTheory/FunctionField.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/Valuation/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/LocallyCompact.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean,Mathlib/Topology/Algebra/Valued/WithZeroMulInt.lean |
12 |
9 |
['github-actions', 'kckennylau', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
161-82703 5 months ago |
239-58790 239 days ago |
0-746 12 minutes |
| 30135 |
erdOne author:erdOne |
feat(RingTheory): `ValuativeRel` on subrings |
---
@pechersky do we want this?
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-ring-theory
|
19/0 |
Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean |
1 |
5 |
['erdOne', 'github-actions', 'pechersky'] |
nobody |
161-76748 5 months ago |
162-49440 162 days ago |
3-20137 3 days |
| 28328 |
pechersky author:pechersky |
chore(Topology/Valued): golf using local finite order of WithZeroTopology |
have to juggle in a version of `mrangeRestrict`
which works on valuations,
and also juggle the scoped topology over
the subtype topology
---
[](https://gitpod.io/from-referrer/)
- [ ] depends on: #28325 |
t-number-theory
blocked-by-other-PR
t-algebra
large-import
merge-conflict
t-topology
label:t-algebra$ |
187/88 |
Mathlib/Topology/Algebra/GroupWithZero.lean,Mathlib/Topology/Algebra/Valued/LocallyCompact.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean,Mathlib/Topology/Compactness/Compact.lean |
4 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
158-7724 5 months ago |
216-24686 216 days ago |
0-1600 26 minutes |
| 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-73522 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-72372 5 months ago |
548-13521 548 days ago |
1-21124 1 day |
| 30359 |
JLimperg author:JLimperg |
[Not a PR] Benchmark for Aesop RPINF precompilation |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
file-removed
|
5/3 |
lake-manifest.json,lakefile.lean,scripts/bench/fake-root/lib/lean/libleanshared.so,scripts/bench/run |
4 |
5 |
['JLimperg', 'github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
157-64379 5 months ago |
unknown |
0-0 0 seconds |
| 30351 |
JLimperg author:JLimperg |
[Not a PR] Benchmark Aesop's lazy forward state construction |
Testing the performance impact of an Aesop change.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
dependency-bump
|
3/3 |
lake-manifest.json,lakefile.lean |
2 |
11 |
['JLimperg', 'github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
157-53280 5 months ago |
unknown |
0-0 0 seconds |
| 30425 |
JLimperg author:JLimperg |
[Not a PR] Benchmark Aesop with precompiled RPINF at instance transparency |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
5/3 |
lake-manifest.json,lakefile.lean,scripts/bench/fake-root/lib/lean/libleanshared.so,scripts/bench/run |
4 |
3 |
['JLimperg', 'github-actions', 'leanprover-bot'] |
nobody |
157-46484 5 months ago |
unknown |
0-0 0 seconds |
| 30438 |
JLimperg author:JLimperg |
[Not a PR] Benchmark Aesop change that computes fewer RPINFs |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
5/3 |
lake-manifest.json,lakefile.lean,scripts/bench/fake-root/lib/lean/libleanshared.so,scripts/bench/run |
4 |
5 |
['JLimperg', 'github-actions', 'leanprover-bot'] |
nobody |
156-76861 5 months ago |
unknown |
0-0 0 seconds |
| 30440 |
JLimperg author:JLimperg |
[Not a PR] Benchmark Aesop with no `hypTypes` in `ForwardState` and `instances` RPINF transparency |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
5/3 |
lake-manifest.json,lakefile.lean,scripts/bench/fake-root/lib/lean/libleanshared.so,scripts/bench/run |
4 |
3 |
['JLimperg', 'github-actions', 'leanprover-bot'] |
nobody |
156-72342 5 months ago |
unknown |
0-0 0 seconds |
| 30452 |
JLimperg author:JLimperg |
[Not a PR] Benchmark Aesop with no `hypTypes` in `ForwardState`, RPINF at `instances` transparency and lazy forward state |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
5/3 |
lake-manifest.json,lakefile.lean,scripts/bench/fake-root/lib/lean/libleanshared.so,scripts/bench/run |
4 |
3 |
['JLimperg', 'github-actions', 'leanprover-bot'] |
nobody |
156-53221 5 months ago |
unknown |
0-0 0 seconds |
| 26284 |
plp127 author:plp127 |
feat: faster implementation of `Nat.primeFactorsList` + `@[csimp]` lemma |
Add a function `Nat.primeFactorsListFast` that `#eval`s faster, and a `@[csimp]` lemma `Nat.primeFactorsList_eq_primeFactorsListFast` that shows `Nat.primeFactorsList = Nat.primeFactorsListFast`.
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-data
|
95/0 |
Mathlib/Data/Nat/Factors.lean |
1 |
11 |
['b-mehta', 'github-actions', 'grunweg', 'plp127'] |
b-mehta assignee:b-mehta |
156-2850 5 months ago |
156-30063 156 days ago |
111-15071 111 days |
| 27990 |
kckennylau author:kckennylau |
feat(Counterexamples): a nontrivial valuation with discrete topology |
This file constructs a valuation on `K[X]` satisfying `IsValuativeTopology K[X] ∧ Nonempty (valuation K[X]).RankOne ∧ IsNontrivial K[X] ∧ DiscreteTopology K[X]`, and proves that `IsValuativeTopology F ∧ IsNontrivial F ∧ DiscreteTopology F` is not possible if `F` is a field.
---
[](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-78583 5 months ago |
155-78584 155 days ago |
67-79609 67 days |
| 28243 |
robin-carlier author:robin-carlier |
chore(CategoryTheory/Bicategory): move some `eqToHom` lemmas |
The file `CategoryTheory/Bicategory/EqToHom.lean` introduced in #28242 is a more suitable hom for the lemmas `CategoryTheory.Bicategory.whiskerLeft_eqToHom` and `CategoryTheory.Bicategory.eqToHom_whiskerRight` than the current `CategoryTheory/Bicategory/Strict.lean`. We move these lemmas to the new file, and make `CategoryTheory/Bicategory/Strict` import these lemmas.
---
- [x] depends on: #28242
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-category-theory
|
165/23 |
Mathlib.lean,Mathlib/CategoryTheory/Bicategory/EqToHom.lean,Mathlib/CategoryTheory/Bicategory/Strict.lean,Mathlib/CategoryTheory/EqToHom.lean,scripts/noshake.json |
5 |
9 |
['github-actions', 'joelriou', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robin-carlier'] |
nobody |
155-75321 5 months ago |
165-63251 165 days ago |
0-9063 2 hours |
| 26913 |
Paul-Lez author:Paul-Lez |
feat(NumberTheory/{*}): add a few lemmas about number field and cyclotomic extensions |
The motivation for this PR is that the main statement in [this PR](https://github.com/google-deepmind/formal-conjectures/pull/297) shouldn't need to assume `p` has type `PNat` for the instances to work.
This is still WIP as I need to clean up (currently waiting on the build!)
---
[](https://gitpod.io/from-referrer/)
|
WIP
t-number-theory
t-algebra
awaiting-CI
merge-conflict
label:t-algebra$ |
52/0 |
Mathlib/NumberTheory/ClassNumber/Temporary.lean,Mathlib/NumberTheory/Cyclotomic/Basic.lean,Mathlib/NumberTheory/Cyclotomic/Embeddings.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/TotallyRealComplex.lean |
4 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
152-80159 5 months ago |
251-54533 251 days ago |
0-28 28 seconds |
| 27302 |
tristan-f-r author:tristan-f-r |
feat(Fintype/Quotient): finLiftOn₂ |
The combination of [`Quotient.finLiftOn`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Fintype/Quotient.html#Quotient.finLiftOn) and [`liftOn₂`](https://leanprover-community.github.io/mathlib4_docs/Init/Core.html#Quotient.liftOn%E2%82%82).
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-data
|
19/0 |
Mathlib/Data/Fintype/Quotient.lean |
1 |
12 |
['github-actions', 'kckennylau', 'pechersky', 'tristan-f-r', 'vihdzp'] |
pechersky assignee:pechersky |
152-30115 5 months ago |
152-30115 152 days ago |
6-6533 6 days |
| 28925 |
grunweg author:grunweg |
chore: remove `linear_combination'` tactic |
When `linear_combination` was refactored in #15899, the old code was kept as the `linear_combination'` tactic, for easier migration. The consensus of the zulip discussion ([#mathlib4 > Narrowing the scope of `linear_combination` @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Narrowing.20the.20scope.20of.20.60linear_combination.60/near/470237816)) was to wait, and "revisit this once people have experienced the various tactics in practice".
One year later, the old tactic has almost no uses: it is unused in mathlib; [searching on github](https://github.com/search?q=linear_combination%27%20path%3A*.lean&type=code) yields 37 hits --- all of which are in various forks of mathlib. Thus, removing this tactic seems appropriate.
---
Do not merge before the zulip discussion has concluded!
[](https://gitpod.io/from-referrer/)
|
merge-conflict
file-removed
awaiting-zulip
|
0/564 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/LinearCombination'.lean,Mathlib/Tactic/Linter/UnusedTactic.lean,MathlibTest/linear_combination'.lean |
5 |
4 |
['euprunin', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] |
nobody |
152-25191 5 months ago |
203-56988 203 days ago |
0-1 1 second |
| 29432 |
lecopivo author:lecopivo |
feat: `data_synth` tactic to prove `HasFDerivAt 𝕜 f ?f' x` and similar |
New tactic `data_synth` that can prove proposition with holes e.g. figure out what `?f'` is and prove `HasFDerivAt 𝕜 f ?f' x`
---
Tactic `data_synth` is designed to synthesize some data that satisfies some proposition. The canonical example is `HasFDerivAt 𝕜 f ?f' x`, this tactic will figure out `f'` and provide proof of `HasFDerivAt 𝕜 f f' x`.
Another examples: `HasBoundinbBall s ?center ?radius` or `IsPolynomial f ?p`
```
def HasBoundingBall (s : Set α) (center : α) (radius : ℝ) : Prop :=
s ⊆ Metric.closedBall center radius
def IsPolynomial (f : R → R) (p : Polynomial R) :=
f = p.eval
``` |
WIP
t-meta
|
1932/0 |
Mathlib/Tactic/DataSynth.lean,Mathlib/Tactic/DataSynth/Attr.lean,Mathlib/Tactic/DataSynth/Core.lean,Mathlib/Tactic/DataSynth/Decl.lean,Mathlib/Tactic/DataSynth/Elab.lean,Mathlib/Tactic/DataSynth/FDeriv.lean,Mathlib/Tactic/DataSynth/FDeriv/Basic.lean,Mathlib/Tactic/DataSynth/FDeriv/Dispatch.lean,Mathlib/Tactic/DataSynth/FDeriv/Init.lean,Mathlib/Tactic/DataSynth/FDeriv/Simproc.lean,Mathlib/Tactic/DataSynth/Tests/BoundingBall.lean,Mathlib/Tactic/DataSynth/Tests/Compilation.lean,Mathlib/Tactic/DataSynth/Tests/FDeriv.lean,Mathlib/Tactic/DataSynth/Tests/FDerivInit.lean,Mathlib/Tactic/DataSynth/Tests/FwdDeriv.lean,Mathlib/Tactic/DataSynth/Tests/Normalize.lean,Mathlib/Tactic/DataSynth/Tests/Polynomial.lean,Mathlib/Tactic/DataSynth/Theorems.lean,Mathlib/Tactic/DataSynth/ToBatteries.lean,Mathlib/Tactic/DataSynth/Types.lean |
20 |
3 |
['JovanGerb', 'github-actions', 'lecopivo'] |
nobody |
151-76509 5 months ago |
190-10501 190 days ago |
0-1834 30 minutes |
| 29855 |
eric-wieser author:eric-wieser |
chore(Data/Finset/Sort): lemmas about `0 : Fin _` and `Fin.last _` |
We already had these for `⟨0, ⋯⟩` and `⟨k - 1, ⋯⟩`.
Moves:
- `Finset.orderEmbOfFin_zero` -> `Finset.orderEmbOfFin_mk_zero`
- `Finset.orderEmbOfFin_last` -> `Finset.orderEmbOfFin_mk_last`
---
[](https://gitpod.io/from-referrer/)
|
t-data
t-order
delegated
easy
|
17/7 |
Mathlib/Combinatorics/Enumerative/Composition.lean,Mathlib/Data/Finset/Sort.lean |
2 |
4 |
['eric-wieser', 'github-actions', 'mathlib-bors', 'ocfnash'] |
nobody |
151-63740 5 months ago |
173-9430 173 days ago |
3-79002 3 days |
| 19616 |
adamtopaz author:adamtopaz |
fix: fix the definition of the absolute Galois group of a field |
Previously it was defined as the Galois group of the algebraic closure, as opposed to the separable closure.
Also, this adds some missing instances for this group.
Still missing is compactness, but that seems like a bigger project.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
awaiting-author
t-number-theory
label:t-algebra$ |
23/8 |
Mathlib/FieldTheory/AbsoluteGaloisGroup.lean,Mathlib/FieldTheory/KrullTopology.lean |
2 |
4 |
['acmepjz', 'alreadydone', 'github-actions'] |
nobody |
150-18962 4 months ago |
468-83858 468 days ago |
3-64280 3 days |
| 28826 |
alreadydone author:alreadydone |
feat(CategoryTheory): Additive and Linear when Hom types are only monoids |
+ introduce Presemiadditive categories, which generalizes Preadditive categories: the Hom sets are commutative monoids rather than groups, and `comp_zero` and `zero_comp` is no longer automatic. The new file Preadditive/Semi.lean is adapted from Preadditive/Basic.lean, though many contents can't be generalized.
+ generalize Functor.Additive and Functor.Linear to take Presemiadditive categories instead. The former needs a `map_zero` field since it's not automatic for Presemiadditive categories.
+ introduce SemimoduleCat, the category of semimodules (mathlib's Module) over a Semiring. The new file ModuleCat/Semi.lean is copied from ModuleCat/Basic.lean.
TODOs: additive/linear equivalence between SemimoduleCat and ModuleCat and use it to transfer results; monoidal structure on SemimoduleCat; change `CommRing.Pic` to use SemimoduleCat.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-category-theory
awaiting-CI
|
978/123 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Semi.lean,Mathlib/Algebra/Category/MonCat/Presemiadditive.lean,Mathlib/CategoryTheory/Linear/Basic.lean,Mathlib/CategoryTheory/Preadditive/AdditiveFunctor.lean,Mathlib/CategoryTheory/Preadditive/Basic.lean,Mathlib/CategoryTheory/Preadditive/Biproducts.lean,Mathlib/CategoryTheory/Preadditive/FunctorCategory.lean,Mathlib/CategoryTheory/Preadditive/Semi.lean |
9 |
4 |
['alreadydone', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127'] |
nobody |
150-12747 4 months ago |
205-47592 205 days ago |
0-1 1 second |
| 16428 |
astrainfinita author:astrainfinita |
test use `QuotLike` APIs |
---
- [ ] depends on: #16421
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-data
|
1501/564 |
Mathlib.lean,Mathlib/Algebra/Associated/Basic.lean,Mathlib/Algebra/BigOperators/Associated.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Conj.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/Algebra/Order/CauSeq/Completion.lean,Mathlib/Algebra/Quandle.lean,Mathlib/CategoryTheory/IsomorphismClasses.lean,Mathlib/CategoryTheory/Monoidal/Free/Basic.lean,Mathlib/CategoryTheory/Monoidal/Free/Coherence.lean,Mathlib/CategoryTheory/Skeletal.lean,Mathlib/Data/Finmap.lean,Mathlib/Data/Fintype/Quotient.lean,Mathlib/Data/Multiset/Basic.lean,Mathlib/Data/Multiset/Functor.lean,Mathlib/Data/QPF/Multivariate/Constructions/Fix.lean,Mathlib/Data/QPF/Univariate/Basic.lean,Mathlib/Data/Quot.lean,Mathlib/Data/QuotLike.lean,Mathlib/Data/Real/Basic.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/GroupTheory/Coset/Basic.lean,Mathlib/GroupTheory/Coset/Defs.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/GroupAction/ConjAct.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/GroupTheory/Subgroup/Center.lean,Mathlib/LinearAlgebra/Quotient/Basic.lean,Mathlib/LinearAlgebra/Quotient/Defs.lean,Mathlib/Logic/Encodable/Basic.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/Logic/Relation.lean,Mathlib/Order/RelIso/Basic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Finite.lean,Mathlib/SetTheory/Game/Basic.lean,Mathlib/SetTheory/Lists.lean,Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/Topology/Inseparable.lean,test/QuotLike.lean |
43 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
149-27326 4 months ago |
unknown |
0-0 0 seconds |
| 16210 |
astrainfinita author:astrainfinita |
Clean up quotient APIs |
~~We may migrate to `Quot` and `IsEquiv` APIs in the future, but it might be a good start to clean up `Quotient` APIs anyway.~~
The diffs in this PR did not include `QuotLike` APIs, but eventually I decided to migrate to `QuotLike` before deprecating some old APIs. This is because some lemmas don't have alternatives that don't use `· ≈ ·`, and the alternatives that use `· ≈ ·` are in the core. See [Zulip](https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/.60.28.C2.B7.20.E2.89.88.20.C2.B7.29.60.20in.20.60Quotient.60.20APIs/near/466970386).
---
- [x] depends on: #16254
- [x] depends on: #16256
- [x] depends on: #16258
- [x] depends on: #16260
- [x] depends on: #16264
- [x] depends on: #16267
- [ ] depends on: #16314
- [x] depends on: #16410
- [x] depends on: #17588
- [x] depends on: #17594
- [x] depends on: #17940
- [ ] depends on: #17941
---
`QuotLike`
- [ ] depends on: #16421
- [ ] depends on: #16428
---
[remaining diffs](https://github.com/leanprover-community/mathlib4/compare/FR_quot_now..FR_quot)
[](https://gitpod.io/from-referrer/)
|
merge-conflict
tech debt
blocked-by-other-PR
t-data
|
1015/1114 |
Counterexamples/CliffordAlgebraNotInjective.lean,Mathlib/Algebra/Associated/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset.lean,Mathlib/Algebra/CharZero/Quotient.lean,Mathlib/Algebra/DirectLimit.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Lie/Free.lean,Mathlib/Algebra/Lie/Quotient.lean,Mathlib/Algebra/Module/Torsion.lean,Mathlib/Algebra/Module/Zlattice/Basic.lean,Mathlib/Algebra/Order/CauSeq/Completion.lean,Mathlib/Algebra/Periodic.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/StructureSheaf.lean,Mathlib/Analysis/Normed/Group/Quotient.lean,Mathlib/Analysis/Normed/Group/SemiNormedGrp/Kernels.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Angle.lean,Mathlib/CategoryTheory/ConnectedComponents.lean,Mathlib/CategoryTheory/Limits/Shapes/SingleObj.lean,Mathlib/CategoryTheory/Limits/Types.lean,Mathlib/CategoryTheory/Skeletal.lean,Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Subobject/FactorThru.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/Combinatorics/Quiver/ConnectedComponent.lean,Mathlib/Combinatorics/SimpleGraph/Path.lean,Mathlib/Computability/Reduce.lean,Mathlib/Computability/TuringMachine.lean,Mathlib/Data/Countable/Defs.lean,Mathlib/Data/FinEnum.lean,Mathlib/Data/Finite/Basic.lean,Mathlib/Data/Fintype/Basic.lean,Mathlib/Data/Fintype/Card.lean,Mathlib/Data/Fintype/Quotient.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/Multiset/Basic.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/Data/Setoid/Partition.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/FieldTheory/IsAlgClosed/AlgebraicClosure.lean,Mathlib/FieldTheory/PerfectClosure.lean,Mathlib/FieldTheory/SplittingField/Construction.lean,Mathlib/GroupTheory/Abelianization.lean,Mathlib/GroupTheory/Commensurable.lean,Mathlib/GroupTheory/CommutingProbability.lean,Mathlib/GroupTheory/Complement.lean,Mathlib/GroupTheory/Congruence/Basic.lean,Mathlib/GroupTheory/Coprod/Basic.lean,Mathlib/GroupTheory/Coset/Basic.lean,Mathlib/GroupTheory/DoubleCoset.lean,Mathlib/GroupTheory/FreeAbelianGroup.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/GroupAction/ConjAct.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/GroupTheory/PGroup.lean,Mathlib/GroupTheory/Perm/Cycle/Concrete.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/SchurZassenhaus.lean,Mathlib/GroupTheory/Sylow.lean,Mathlib/GroupTheory/Transfer.lean,Mathlib/LinearAlgebra/Alternating/DomCoprod.lean,Mathlib/LinearAlgebra/Dimension/Constructions.lean,Mathlib/LinearAlgebra/InvariantBasisNumber.lean,Mathlib/LinearAlgebra/Isomorphisms.lean,Mathlib/LinearAlgebra/Projectivization/Basic.lean,Mathlib/LinearAlgebra/Quotient.lean,Mathlib/LinearAlgebra/QuotientPi.lean,Mathlib/Logic/Encodable/Basic.lean,Mathlib/MeasureTheory/Constructions/Polish/Basic.lean,Mathlib/MeasureTheory/Function/AEEqFun.lean,Mathlib/MeasureTheory/Group/FundamentalDomain.lean,Mathlib/MeasureTheory/MeasurableSpace/Basic.lean,Mathlib/MeasureTheory/Measure/Haar/Quotient.lean,Mathlib/ModelTheory/DirectLimit.lean,Mathlib/ModelTheory/Fraisse.lean,Mathlib/ModelTheory/Ultraproducts.lean,Mathlib/NumberTheory/NumberField/Embeddings.lean,Mathlib/NumberTheory/NumberField/Units/DirichletTheorem.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/RamificationInertia.lean,Mathlib/Order/Antisymmetrization.lean,Mathlib/Order/Category/PartOrd.lean,Mathlib/Order/Filter/Germ/Basic.lean,Mathlib/Order/Partition/Finpartition.lean,Mathlib/Order/RelIso/Basic.lean,Mathlib/RepresentationTheory/GroupCohomology/Hilbert90.lean,Mathlib/RingTheory/AdicCompletion/Algebra.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/Functoriality.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Congruence/Basic.lean,Mathlib/RingTheory/Flat/Basic.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean |
134 |
6 |
['astrainfinita', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] |
nobody |
149-27325 4 months ago |
unknown |
0-0 0 seconds |
| 30642 |
thorimur author:thorimur |
bench: lean4#10832 |
|
merge-conflict
large-import
|
507/460 |
.github/workflows/nightly-docgen.yml,Cache/IO.lean,Mathlib.lean,Mathlib/Algebra/Algebra/StrictPositivity.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/ExpLog.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/FiveWheelLike.lean,Mathlib/Computability/DFA.lean,Mathlib/Computability/RegularExpressions.lean,Mathlib/Control/Monad/Cont.lean,Mathlib/Data/Finset/Attach.lean,Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Finset/Empty.lean,Mathlib/Data/Finsupp/Notation.lean,Mathlib/Data/Fintype/Defs.lean,Mathlib/Data/Fintype/EquivFin.lean,Mathlib/Data/Int/LeastGreatest.lean,Mathlib/Data/List/Chain.lean,Mathlib/Data/List/Flatten.lean,Mathlib/Data/List/SplitOn.lean,Mathlib/Data/List/Triplewise.lean,Mathlib/Data/Multiset/ZeroCons.lean,Mathlib/Data/Nat/Digits/Defs.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Data/Set/Operations.lean,Mathlib/Data/String/Basic.lean,Mathlib/Data/String/Defs.lean,Mathlib/Data/String/Lemmas.lean,Mathlib/Lean/Elab/InfoTree.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/LebesgueDifferentiationThm.lean,Mathlib/Order/CompleteLattice/MulticoequalizerDiagram.lean,Mathlib/SetTheory/PGame/Basic.lean,Mathlib/Tactic/Basic.lean,Mathlib/Tactic/DeclarationNames.lean,Mathlib/Tactic/Hint.lean,Mathlib/Tactic/Linter/CommandStart.lean,Mathlib/Tactic/Linter/DocString.lean,Mathlib/Tactic/Linter/Header.lean,Mathlib/Tactic/Linter/TextBased.lean,Mathlib/Tactic/Says.lean,Mathlib/Tactic/SuccessIfFailWithMsg.lean,Mathlib/Tactic/ToAdditive/Frontend.lean,Mathlib/Tactic/ToAdditive/GuessName.lean,Mathlib/Tactic/ToExpr.lean,Mathlib/Tactic/Widget/Calc.lean,Mathlib/Tactic/Widget/CongrM.lean,Mathlib/Tactic/Widget/Conv.lean,Mathlib/Tactic/Widget/GCongr.lean,Mathlib/Tactic/Widget/InteractiveUnfold.lean,Mathlib/Tactic/Widget/LibraryRewrite.lean,Mathlib/Tactic/Widget/SelectPanelUtils.lean,Mathlib/Util/CompileInductive.lean,Mathlib/Util/Superscript.lean,MathlibTest/CalcQuestionMark.lean,MathlibTest/Change.lean,MathlibTest/DeprecateTo.lean,MathlibTest/FieldSimp.lean,MathlibTest/FindSyntax.lean,MathlibTest/LibraryRewrite.lean,MathlibTest/LibrarySearch/basic.lean,MathlibTest/LibrarySearch/mathlib.lean,MathlibTest/LibrarySearch/observe.lean,MathlibTest/Simps.lean,MathlibTest/Subsingleton.lean,MathlibTest/Use.lean,MathlibTest/Util/PrintSorries.lean,MathlibTest/Variable.lean,MathlibTest/fast_instance.lean,MathlibTest/grind/pairwise_disjoint.lean,MathlibTest/hint.lean,MathlibTest/propose.lean,MathlibTest/rewrites.lean,MathlibTest/ring.lean,MathlibTest/says.lean,MathlibTest/says_whitespace.lean,MathlibTest/success_if_fail_with_msg.lean,MathlibTest/toAdditive.lean,lake-manifest.json,lakefile.lean,lean-toolchain,scripts/check-yaml.lean,scripts/noshake.json |
92 |
4 |
['github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot', 'thorimur'] |
nobody |
148-73536 4 months ago |
unknown |
0-0 0 seconds |
| 30643 |
thorimur author:thorimur |
bench: before lean4#10832 |
|
merge-conflict
large-import
|
507/460 |
.github/workflows/nightly-docgen.yml,Cache/IO.lean,Mathlib.lean,Mathlib/Algebra/Algebra/StrictPositivity.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/ExpLog.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/FiveWheelLike.lean,Mathlib/Computability/DFA.lean,Mathlib/Computability/RegularExpressions.lean,Mathlib/Control/Monad/Cont.lean,Mathlib/Data/Finset/Attach.lean,Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Finset/Empty.lean,Mathlib/Data/Finsupp/Notation.lean,Mathlib/Data/Fintype/Defs.lean,Mathlib/Data/Fintype/EquivFin.lean,Mathlib/Data/Int/LeastGreatest.lean,Mathlib/Data/List/Chain.lean,Mathlib/Data/List/Flatten.lean,Mathlib/Data/List/SplitOn.lean,Mathlib/Data/List/Triplewise.lean,Mathlib/Data/Multiset/ZeroCons.lean,Mathlib/Data/Nat/Digits/Defs.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Data/Set/Operations.lean,Mathlib/Data/String/Basic.lean,Mathlib/Data/String/Defs.lean,Mathlib/Data/String/Lemmas.lean,Mathlib/Lean/Elab/InfoTree.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/LebesgueDifferentiationThm.lean,Mathlib/Order/CompleteLattice/MulticoequalizerDiagram.lean,Mathlib/SetTheory/PGame/Basic.lean,Mathlib/Tactic/Basic.lean,Mathlib/Tactic/DeclarationNames.lean,Mathlib/Tactic/Hint.lean,Mathlib/Tactic/Linter/CommandStart.lean,Mathlib/Tactic/Linter/DocString.lean,Mathlib/Tactic/Linter/Header.lean,Mathlib/Tactic/Linter/TextBased.lean,Mathlib/Tactic/Says.lean,Mathlib/Tactic/SuccessIfFailWithMsg.lean,Mathlib/Tactic/ToAdditive/Frontend.lean,Mathlib/Tactic/ToAdditive/GuessName.lean,Mathlib/Tactic/ToExpr.lean,Mathlib/Tactic/Widget/Calc.lean,Mathlib/Tactic/Widget/CongrM.lean,Mathlib/Tactic/Widget/Conv.lean,Mathlib/Tactic/Widget/GCongr.lean,Mathlib/Tactic/Widget/InteractiveUnfold.lean,Mathlib/Tactic/Widget/LibraryRewrite.lean,Mathlib/Tactic/Widget/SelectPanelUtils.lean,Mathlib/Util/CompileInductive.lean,Mathlib/Util/Superscript.lean,MathlibTest/CalcQuestionMark.lean,MathlibTest/Change.lean,MathlibTest/DeprecateTo.lean,MathlibTest/FieldSimp.lean,MathlibTest/FindSyntax.lean,MathlibTest/LibraryRewrite.lean,MathlibTest/LibrarySearch/basic.lean,MathlibTest/LibrarySearch/mathlib.lean,MathlibTest/LibrarySearch/observe.lean,MathlibTest/Simps.lean,MathlibTest/Subsingleton.lean,MathlibTest/Use.lean,MathlibTest/Util/PrintSorries.lean,MathlibTest/Variable.lean,MathlibTest/fast_instance.lean,MathlibTest/grind/pairwise_disjoint.lean,MathlibTest/hint.lean,MathlibTest/propose.lean,MathlibTest/rewrites.lean,MathlibTest/ring.lean,MathlibTest/says.lean,MathlibTest/says_whitespace.lean,MathlibTest/success_if_fail_with_msg.lean,MathlibTest/toAdditive.lean,lake-manifest.json,lakefile.lean,lean-toolchain,scripts/check-yaml.lean,scripts/noshake.json |
92 |
4 |
['github-actions', 'leanprover-bot', 'mathlib4-merge-conflict-bot', 'thorimur'] |
nobody |
148-73535 4 months ago |
unknown |
0-0 0 seconds |
| 30460 |
janithamalith author:janithamalith |
feat(Nat): add lemma nat_card_orbit_mul_card_stabilizer_eq_card_group |
Added a lemma `nat_card_orbit_mul_card_stabilizer_eq_card_group` which is the Nat.card version of MulAction.card_orbit_mul_card_stabilizer_eq_card_group
---
[](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-82622 4 months ago |
147-82622 147 days ago |
8-8414 8 days |
| 30209 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: some TwoSidedIdeal.span lemmas |
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-ring-theory
FLT
|
16/0 |
Mathlib/RingTheory/TwoSidedIdeal/Operations.lean |
1 |
2 |
['erdOne', 'github-actions'] |
erdOne assignee:erdOne |
146-53916 4 months ago |
146-53916 146 days ago |
17-9153 17 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-46154 4 months ago |
146-46154 146 days ago |
148-3338 148 days |
| 27206 |
grhkm21 author:grhkm21 |
feat(CategoryTheory/Adjunction): partial adjoints are adjoints |
Partial adjunctions `F.partial{Left,Right}Adjunction` are adjunctions when fully
defined i.e. `F.{left,right}AdjointObjIsDefined = ⊤`.
|
awaiting-author
t-category-theory
|
48/2 |
Mathlib/CategoryTheory/Adjunction/PartialAdjoint.lean |
1 |
1 |
['github-actions'] |
nobody |
145-78390 4 months ago |
244-3972 244 days ago |
0-89 1 minute |
| 27196 |
YaelDillies author:YaelDillies |
refactor(Polynomial/Bivariate): swap `X` and `Y` for improved notation |
This way, `X` keeps on being `X`.
From Toric
---
[](https://gitpod.io/from-referrer/)
|
WIP
t-algebra
toric
label:t-algebra$ |
3/3 |
Mathlib/Algebra/Polynomial/Bivariate.lean |
1 |
7 |
['YaelDillies', 'alreadydone', 'github-actions', 'kckennylau'] |
nobody |
145-71943 4 months ago |
244-12016 244 days ago |
0-79 1 minute |
| 24532 |
robertmaxton42 author:robertmaxton42 |
feat(LinearAlgebra/FreeProduct): fill out the `FreeProduct.asPowers` namespace |
* Replicate the existing API for `LinearAlgebra.FreeProduct` under `FreeProduct.asPowers`, for convenience when working primarily with the power algebra representation
* Adds convenience lemmas for using the corresponding quotient relation `rel'` (used in the above).
---
- [x] depends on: #24531
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
label:t-algebra$ |
122/5 |
Mathlib/LinearAlgebra/FreeProduct/Basic.lean |
1 |
26 |
['YaelDillies', 'adomani', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robertmaxton42'] |
nobody |
145-36004 4 months ago |
310-17125 310 days ago |
0-47835 13 hours |
| 27683 |
dupuisf author:dupuisf |
feat: grind tags for set operations |
This PR adds `grind` tags for various set operations (union, intersection, complement, etc).
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-data
|
29/9 |
Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Operations.lean |
2 |
5 |
['dupuisf', 'euprunin', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
144-73693 4 months ago |
227-78200 227 days ago |
0-5675 1 hour |
| 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-69586 4 months ago |
144-69654 144 days ago |
0-83 1 minute |
| 29355 |
girving author:girving |
feat(Trigonometric): Taylor series bounds for sin and cos |
Zulip discussion here:
https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Better.20.60Real.2Esin.60.20bounds/near/535035576
We also include the full set of intervals on which sin and cos are monotone/antitone.
---
Questions to resolve as part of review:
1. I've left the `Finset.sum_range_even` in the new `SeriesBounds` file, but presumably it should go somewhere else (unless you want me to inline it, but that seems worse).
2. Is putting the new Taylor series bounds in a new `SeriesBounds` file right, or should it go in the current `Bounds.lean` file? When I started writing the PR I thought the new bounds would need more imports via more analysis, but it turns out the only new import needed would be `Mathlib.Algebra.BigOperators.Field` which seems lightweight. I am happy with whatever the preference is in terms of file structure.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-analysis
|
158/0 |
Mathlib.lean,Mathlib/Algebra/BigOperators/Ring/Finset.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Bounds.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/SeriesBounds.lean |
4 |
28 |
['Parcly-Taxel', 'Ruben-VandeVelde', 'adomani', 'girving', 'github-actions', 'llllvvuu', 'mathlib4-merge-conflict-bot', 'urkud'] |
nobody |
144-65076 4 months ago |
192-64707 192 days ago |
0-77704 21 hours |
| 28298 |
thorimur author:thorimur |
chore: dedent `to_additive` docstrings |
This PR uses automation to dedent `to_additive` docstrings throughout Mathlib. It does not lint against indentation or in any way enforce indentation standards for future docstrings. The convention was chosen in accordance with the discussion and polls at [this Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Poll.3A.20Indentation.20style.20for.20.60to_additive.60.20docstrings/with/534285603).
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
documentation
awaiting-author
|
949/949 |
Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/Finsupp/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Lemmas.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Defs.lean,Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/Category/Grp/Basic.lean,Mathlib/Algebra/Category/Grp/FilteredColimits.lean,Mathlib/Algebra/Category/Grp/Limits.lean,Mathlib/Algebra/Category/Grp/Ulift.lean,Mathlib/Algebra/Category/MonCat/Basic.lean,Mathlib/Algebra/Category/MonCat/FilteredColimits.lean,Mathlib/Algebra/Category/MonCat/Limits.lean,Mathlib/Algebra/Category/Semigrp/Basic.lean,Mathlib/Algebra/Free.lean,Mathlib/Algebra/FreeMonoid/Basic.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/Pi.lean,Mathlib/Algebra/Group/Action/Pointwise/Finset.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Embedding.lean,Mathlib/Algebra/Group/Equiv/Basic.lean,Mathlib/Algebra/Group/Equiv/Defs.lean,Mathlib/Algebra/Group/Equiv/Opposite.lean,Mathlib/Algebra/Group/Even.lean,Mathlib/Algebra/Group/Hom/Basic.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Hom/Instances.lean,Mathlib/Algebra/Group/Indicator.lean,Mathlib/Algebra/Group/Pi/Lemmas.lean,Mathlib/Algebra/Group/Pi/Units.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/Group/Subgroup/Map.lean,Mathlib/Algebra/Group/Subgroup/Pointwise.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Group/Submonoid/BigOperators.lean,Mathlib/Algebra/Group/Submonoid/Defs.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/Submonoid/MulAction.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/Algebra/Group/Subsemigroup/Basic.lean,Mathlib/Algebra/Group/Subsemigroup/Operations.lean,Mathlib/Algebra/Group/UniqueProds/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/Group/Units/Equiv.lean,Mathlib/Algebra/Group/Units/Hom.lean,Mathlib/Algebra/Group/Units/Opposite.lean,Mathlib/Algebra/Notation/Pi/Basic.lean,Mathlib/Algebra/Opposites.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Order/Group/Abs.lean,Mathlib/Algebra/Order/Group/Basic.lean,Mathlib/Algebra/Order/Group/Cone.lean,Mathlib/Algebra/Order/Group/OrderIso.lean,Mathlib/Algebra/Order/Group/Units.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Monoid/Basic.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Monoid/Submonoid.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Monoid/Units.lean,Mathlib/Algebra/Order/Pi.lean,Mathlib/Algebra/Regular/Defs.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/CategoryTheory/Monoidal/Discrete.lean,Mathlib/Data/Finset/NoncommProd.lean,Mathlib/Data/Fintype/BigOperators.lean,Mathlib/Data/Set/MulAntidiagonal.lean,Mathlib/Data/Set/SMulAntidiagonal.lean,Mathlib/Data/Vector/Basic.lean,Mathlib/Dynamics/Ergodic/Action/OfMinimal.lean,Mathlib/Dynamics/FixedPoints/Prufer.lean,Mathlib/Geometry/Manifold/Algebra/SmoothFunctions.lean,Mathlib/GroupTheory/Complement.lean,Mathlib/GroupTheory/Congruence/Basic.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Coprod/Basic.lean,Mathlib/GroupTheory/Coset/Basic.lean,Mathlib/GroupTheory/Divisible.lean,Mathlib/GroupTheory/EckmannHilton.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/GroupTheory/FreeGroup/Reduce.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/GroupAction/Blocks.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/GroupAction/FixedPoints.lean,Mathlib/GroupTheory/GroupAction/Hom.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/GroupTheory/GroupAction/Primitive.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/GroupAction/SubMulAction.lean |
141 |
11 |
['eric-wieser', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot', 'thorimur'] |
nobody |
142-13258 4 months ago |
215-65483 215 days ago |
0-46097 12 hours |
| 28737 |
astrainfinita author:astrainfinita |
refactor: deprecate `MulEquivClass` |
This PR continues the work from #18806.
Original PR: https://github.com/leanprover-community/mathlib4/pull/18806 |
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
67/77 |
Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Group/Equiv/Basic.lean,Mathlib/Algebra/Group/Equiv/Defs.lean,Mathlib/Algebra/Group/Irreducible/Lemmas.lean,Mathlib/Algebra/Group/Subgroup/Map.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/Algebra/Group/Units/Equiv.lean,Mathlib/Algebra/GroupWithZero/Equiv.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Prime/Lemmas.lean,Mathlib/Algebra/Ring/Divisibility/Basic.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/Algebra/Star/MonoidHom.lean,Mathlib/Combinatorics/Additive/FreimanHom.lean,Mathlib/GroupTheory/GroupExtension/Defs.lean,Mathlib/GroupTheory/Submonoid/Center.lean,Mathlib/LinearAlgebra/FreeModule/Finite/CardQuotient.lean,Mathlib/RingTheory/Bialgebra/Equiv.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/RingTheory/UniqueFactorizationDomain/NormalizedFactors.lean,Mathlib/Topology/Algebra/ContinuousMonoidHom.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean |
26 |
20 |
['Vierkantor', 'alreadydone', 'astrainfinita', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] |
Vierkantor assignee:Vierkantor |
140-15673 4 months ago |
203-62246 203 days ago |
2-31233 2 days |
| 28676 |
sun123zxy author:sun123zxy |
feat(NumberTheory/ArithmeticFunction): wrap `Nat.totient` as an `ArithmeticFunction` |
This wraps the Euler's totient function `Nat.totient` into a new `ArithmeticFunction` `ϕ`, with some basic identities such as `ϕ * ζ = id` and `μ * id = ϕ.`
---
We use the notation `ϕ` to distinguish from `Nat.totient`'s notation `φ`, however this might be controversial. Suggestions are welcome!
[](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 |
140-15625 4 months ago |
155-76701 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 |
140-7355 4 months ago |
160-76384 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 |
140-7353 4 months ago |
160-74253 160 days ago |
0-340 5 minutes |
| 30575 |
urkud author:urkud |
feat: lemmas about `_ • _` on Filters |
as well as `Set.Finite.f?derivWithin_eq`.
I wrote these lemmas for #24019, but the final version of that PR doesn't need them. I moved them here so that I don't forget to prepare a non-draft PR with these lemmas.
---
[](https://gitpod.io/from-referrer/)
|
t-topology |
51/0 |
Mathlib/Topology/TODO.lean |
1 |
3 |
['github-actions', 'plp127', 'urkud'] |
nobody |
139-72921 4 months ago |
unknown |
0-0 0 seconds |
| 27976 |
smmercuri author:smmercuri |
feat: `ramificationIdx` for `NumberField.InfinitePlace` |
This PR continues the work from #24884.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24884 |
merge-conflict
WIP
t-number-theory
|
22/0 |
Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean |
1 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
138-79595 4 months ago |
224-9180 224 days ago |
0-57 57 seconds |
| 26357 |
javra author:javra |
feat(CategoryTheory): linear categories as `ModuleCat R`-enriched categories |
Continues #23826.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-category-theory
large-import
|
197/0 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/CategoryTheory/Enriched/Linear.lean,Mathlib/CategoryTheory/Linear/Basic.lean,Mathlib/CategoryTheory/Monoidal/Linear.lean |
5 |
10 |
['adamtopaz', 'github-actions', 'javra', 'mathlib4-merge-conflict-bot'] |
adamtopaz assignee:adamtopaz |
137-38190 4 months ago |
181-64843 181 days ago |
78-30158 78 days |
| 26085 |
grunweg author:grunweg |
feat: disjoint unions distribute with products of manifolds |
This PR continues the work from #22611.
Original PR: https://github.com/leanprover-community/mathlib4/pull/22611 |
please-adopt
WIP
t-differential-geometry
merge-conflict
|
75/6 |
Mathlib/Geometry/Manifold/Diffeomorph.lean,Mathlib/Geometry/Manifold/LocalDiffeomorph.lean |
2 |
3 |
['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] |
nobody |
137-10193 4 months ago |
272-995 272 days ago |
0-74 1 minute |
| 27180 |
ADedecker author:ADedecker |
feat: quotient of a monoid with zero by a multiplicative congruence |
---
My motivation is getting a more conceptual construction of [ValuativeRel.ValueGroupWithZero](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Valuation/ValuativeRel.html#ValuativeRel.ValueGroupWithZero), but I think this is of independent interest.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-algebra
delegated
label:t-algebra$ |
141/26 |
Mathlib.lean,Mathlib/Data/Quot.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Congruence/GroupWithZero.lean |
5 |
32 |
['ADedecker', 'eric-wieser', 'github-actions', 'mathlib-bors', 'mathlib4-merge-conflict-bot', 'ocfnash'] |
ocfnash assignee:ocfnash |
136-85329 4 months ago |
216-14464 216 days ago |
28-12053 28 days |
| 29570 |
eric-wieser author:eric-wieser |
fix: substitute infotrees in linters |
I don't know whether this is necessary in these particular cases, but I've seen places where it is.
There are a handful more of these cases in Batteries.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
2/2 |
Mathlib/Tactic/Linter/Style.lean,Mathlib/Tactic/TacticAnalysis.lean |
2 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
136-81830 4 months ago |
unknown |
0-0 0 seconds |
| 30790 |
urkud author:urkud |
chore: partially migrate from `ContinuousMap.continuous` |
... to `map_continuous` or `by fun_prop`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
37/45 |
Mathlib/AlgebraicGeometry/Morphisms/Constructors.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/FundamentalGroup.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Restrict.lean,Mathlib/Analysis/Complex/Circle.lean,Mathlib/Analysis/Fourier/AddCircleMulti.lean,Mathlib/Condensed/Light/TopCatAdjunction.lean,Mathlib/Condensed/TopCatAdjunction.lean,Mathlib/Condensed/TopComparison.lean,Mathlib/Dynamics/Ergodic/Action/OfMinimal.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Basic.lean,Mathlib/Topology/Category/CompHausLike/Limits.lean,Mathlib/Topology/Compactification/OnePoint/Basic.lean,Mathlib/Topology/Compactness/CompactlyGeneratedSpace.lean,Mathlib/Topology/ContinuousMap/CompactlySupported.lean,Mathlib/Topology/ContinuousMap/Units.lean,Mathlib/Topology/ContinuousMap/ZeroAtInfty.lean,Mathlib/Topology/LocallyConstant/Basic.lean,Mathlib/Topology/PartitionOfUnity.lean,Mathlib/Topology/Sets/Opens.lean,Mathlib/Topology/TietzeExtension.lean,Mathlib/Topology/UniformSpace/CompactConvergence.lean,Mathlib/Topology/UniformSpace/Dini.lean,Mathlib/Topology/UrysohnsLemma.lean |
24 |
6 |
['erdOne', 'github-actions', 'mathlib4-merge-conflict-bot', 'urkud'] |
nobody |
136-81133 4 months ago |
145-54285 145 days ago |
0-5460 1 hour |
| 30631 |
ADedecker author:ADedecker |
refactor: evaluation of power series in semirings |
---
[](https://gitpod.io/from-referrer/)
|
|
665/71 |
Mathlib/Algebra/Module/Congruence/Defs.lean,Mathlib/RingTheory/MvPowerSeries/EvaluationSemi.lean,Mathlib/Topology/Algebra/LinearTopology.lean,Mathlib/Topology/Algebra/LinearUniformity.lean,Mathlib/Topology/Algebra/TopologicallyNilpotent.lean |
5 |
1 |
['github-actions'] |
nobody |
135-81083 4 months ago |
unknown |
0-0 0 seconds |
| 29871 |
zach1502 author:zach1502 |
feat(Matrix/Transvection): Gauss pivot determinant identity and pivot preservation |
This PR adds two lemmas formalizing standard Gaussian pivot identities:
* `Matrix.Transvection.listTransvecCol_mul_mul_listTransvecRow_pivot`:
After applying the canonical left/right transvection products that clear the last column and row,
the pivot (bottom-right) entry of a matrix is unchanged.
Marked `@[simp]`.
* `Matrix.Transvection.det_eq_detTopLeft_mul_pivot`:
If the pivot entry is nonzero, then the determinant of the matrix factors as
the determinant of the top-left block times the pivot entry, after performing
the canonical transvections.
This is the usual Gauss–pivot determinant identity.
* Added simple usage tests in `MathlibTest/matrix.lean` to check that the new lemmas
are usable by `simp`/`simpa`.
---
---
[](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 |
134-6876 4 months ago |
134-6876 134 days ago |
41-53612 41 days |
| 30109 |
scholzhannah author:scholzhannah |
feat: the subcomplexes of a (relative classical) CW complex form a completely distributive lattice |
In this PR we prove that the space of subcomplexes `Subcomplex C` of a (relative classical) CW complex `C` is a `CompletelyDistribLattice`.
---
[](https://gitpod.io/from-referrer/)
|
awaiting-author
t-topology
|
368/1 |
Mathlib/Order/Lattice.lean,Mathlib/Topology/CWComplex/Classical/Subcomplex.lean |
2 |
19 |
['ADedecker', 'github-actions', 'scholzhannah'] |
nobody |
133-82257 4 months ago |
133-82257 133 days ago |
6-69092 6 days |
| 25692 |
Whysoserioushah author:Whysoserioushah |
feat(RingTheory/MatrixAlgebra): add a more general version of `matrixEquivTensor` |
This adds `tensorMatrixLinearEquiv : A ⊗[R] Matrix n n B ≃ₐ[S] Matrix n n (A ⊗[R] B)`
which is a more general version of `matrixEquivTensor : Matrix n n A ≃ₐ[R] (A ⊗[R] Matrix n n R)`.
The latter is then implemented as a trivial consequence of the former.
Many internal implementation details are deleted without deprecation, although strictly these were not private.
Co-authored-by: @erdOne
Co-authored-by: Eric Wieser
---
- [ ] depends on: #28367
- [ ] depends on: #28359
- [ ] depends on: #28368
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-ring-theory
|
129/110 |
Mathlib/RingTheory/MatrixAlgebra.lean |
1 |
28 |
['Whysoserioushah', 'chrisflav', 'eric-wieser', 'github-actions', 'jcommelin', 'mathlib-bors', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'mattrobball'] |
chrisflav assignee:chrisflav |
133-80853 4 months ago |
210-17349 210 days ago |
47-20776 47 days |
| 25012 |
urkud author:urkud |
refactor(*): migrate from `Matrix.toLin'` to `Matrix.mulVecLin` |
or `Matrix.mulVec` whenever we don't need the `LinearEquiv.symm` part.
See [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Matrix.2EtoLin'.20vs.20Matrix.2EmulVecLin/with/515188548).
It makes sense to have only one normal form, and `Matrix.toLin'` has an extra `DecidableEq` assumption.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
165/126 |
Mathlib/Algebra/Lie/Matrix.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/Matrix.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/LinearAlgebra/Basis/Defs.lean,Mathlib/LinearAlgebra/Determinant.lean,Mathlib/LinearAlgebra/Finsupp/VectorSpace.lean,Mathlib/LinearAlgebra/Matrix/BilinearForm.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Minpoly.lean,Mathlib/LinearAlgebra/Matrix/Diagonal.lean,Mathlib/LinearAlgebra/Matrix/Gershgorin.lean,Mathlib/LinearAlgebra/Matrix/Rank.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean,Mathlib/LinearAlgebra/Matrix/ToLinearEquiv.lean,Mathlib/LinearAlgebra/UnitaryGroup.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean |
19 |
4 |
['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] |
nobody |
133-63254 4 months ago |
180-38756 180 days ago |
15-4939 15 days |
| 29638 |
yuma-mizuno author:yuma-mizuno |
feat(CategoryTheory): define descent data by presieves |
---
Addendum: I realized that there is prior work in #24434. Since this PR uses a slightly different definition, I plan to make this PR a follow-up to #24434. Until then, I’ll keep it marked as WIP. See the comment: https://github.com/leanprover-community/mathlib4/pull/29638#issuecomment-3290041719
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-category-theory
|
408/2 |
Mathlib.lean,Mathlib/CategoryTheory/Bicategory/Functor/Pseudofunctor.lean,Mathlib/CategoryTheory/Bicategory/LocallyDiscrete.lean,Mathlib/CategoryTheory/Category/Cat.lean,Mathlib/CategoryTheory/Stack/Basic.lean,Mathlib/CategoryTheory/Stack/Descent.lean |
6 |
7 |
['chrisflav', 'github-actions', 'joelriou', 'mathlib4-merge-conflict-bot', 'yuma-mizuno'] |
nobody |
133-59351 4 months ago |
184-3301 184 days ago |
0-74 1 minute |
| 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 |
133-26406 4 months ago |
133-26406 133 days ago |
31-69826 31 days |
| 28132 |
dupuisf author:dupuisf |
feat: preliminary `grind` tags for `IsUnit` |
This PR adds preliminary `grind` tags for the `IsUnit` predicate.
---
[](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-55181 4 months ago |
132-55182 132 days ago |
80-71575 80 days |
| 25903 |
pfaffelh author:pfaffelh |
feat(MeasureTheory): finite unions of sets in a semi-ring (in terms of measure theory) form a ring |
: Finite unions of sets in a semi-ring (in terms of measure theory) form a ring
The set containing finite unions of sets in a semi-ring are a ring.
Part of `MeasureTheory.SetSemiring` is moved to the new file `MeasureTheory.SetRing`.
---
- [ ] depends on: #25902 [contains changes in `SetSemiring` as well]
---
*This PR continues the work from #23117.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/23117* |
merge-conflict
blocked-by-other-PR
large-import
t-measure-probability
|
648/131 |
Mathlib.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Module/Bimodule.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/Data/Set/Pairwise/Lattice.lean,Mathlib/Data/Set/Prod.lean,Mathlib/MeasureTheory/MeasurableSpace/Pi.lean,Mathlib/MeasureTheory/Measure/AddContent.lean,Mathlib/MeasureTheory/PiSystem.lean,Mathlib/MeasureTheory/SetAlgebra.lean,Mathlib/MeasureTheory/SetRing.lean,Mathlib/MeasureTheory/SetSemiring.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ExtractLets.lean,lake-manifest.json,lakefile.lean |
16 |
5 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
132-42893 4 months ago |
210-53439 210 days ago |
0-11144 3 hours |
| 28863 |
yury-harmonic author:yury-harmonic |
ignore: make CI build oleans |
It looks like CI doesn't build oleans unless I open a PR. Or I can't see this workflow.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
large-import
|
624/100 |
Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/MvPolynomial/Expand.lean,Mathlib/Algebra/Order/Floor/Semifield.lean,Mathlib/Algebra/Order/Positive/Field.lean,Mathlib/Algebra/Order/Positive/Ring.lean,Mathlib/Data/Int/ModEq.lean,Mathlib/Data/NNRat/Floor.lean,Mathlib/Data/Nat/Factorial/Basic.lean,Mathlib/Data/Nat/ModEq.lean,Mathlib/Data/Nat/NthRoot/Defs.lean,Mathlib/Data/Rat/Floor.lean,Mathlib/Tactic/NormNum/Basic.lean,MathlibTest/norm_num_ext.lean |
13 |
4 |
['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] |
nobody |
132-22904 4 months ago |
unknown |
0-0 0 seconds |
| 29992 |
vlad902 author:vlad902 |
feat(Order): finite (Max)Chains always contains a top/max element |
---
- [ ] depends on: #29835 [optional extra text]
- [ ] depends on: #29993 [optional extra text]
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-order
large-import
|
35/0 |
Mathlib/Order/Preorder/Chain.lean |
1 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
130-74985 4 months ago |
172-20946 172 days ago |
0-56 56 seconds |
| 26901 |
5hv5hvnk author:5hv5hvnk |
feat: a simproc version of `compute_degree` |
Wrap `compute_degree` in a simproc for use by simp.
Closes #22219.
--- |
awaiting-CI
new-contributor
merge-conflict
awaiting-author
t-meta
|
198/0 |
Mathlib.lean,Mathlib/Tactic/Simproc/PolynomialDegree.lean,MathlibTest/polynomial_degree_simproc.lean |
3 |
19 |
['5hv5hvnk', 'YaelDillies', 'adomani', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
130-73074 4 months ago |
251-74444 251 days ago |
0-267 4 minutes |
| 26391 |
grunweg author:grunweg |
feat: immersed submanifolds |
Still under construction
---
- [ ] depends on: #26087
- [ ] depends on: #23040
Better version of #24549.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-differential-geometry
blocked-by-other-PR
|
1418/0 |
Mathlib.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Splits.lean,Mathlib/Geometry/Manifold/EmbeddedSubmanifold.lean,Mathlib/Geometry/Manifold/IsImmersionEmbedding.lean,Mathlib/Geometry/Manifold/MSplits.lean |
5 |
3 |
['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
130-59834 4 months ago |
unknown |
0-0 0 seconds |
| 31020 |
grunweg author:grunweg |
feat: mfderiv of Sum.inl and Sum.inr |
Nothing to see yet: waiting on the cache, then I will state the sorries and Newell Jansen has expressed interest in trying to prove this.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
64/0 |
Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean |
1 |
4 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
130-58602 4 months ago |
139-73081 139 days ago |
0-1 1 second |
| 31340 |
kim-em author:kim-em |
feat: helper script to summarize CI errors |
---
[](https://gitpod.io/from-referrer/)
|
CI |
235/0 |
scripts/README.md,scripts/failing_ci.py |
2 |
1 |
['github-actions'] |
nobody |
130-44756 4 months ago |
unknown |
0-0 0 seconds |
| 25775 |
emilyriehl author:emilyriehl |
feat(AlgebraicTopology/SimplicialSet/NerveAdjunction): to Strict Segal 2 |
Under a suitable hypothesis, a map of 2-truncated simplicial sets can be generated from a refl prefunctor between the underlying reflexive quivers --- provided the codomain is `StrictSegal`. This abstracts a previously formalized result that requires the codomain to be the 2-truncated nerve of a category.
Co-authored-by: Aaron Liu
---
The current draft displays the old code for comparison with new versions labeled ALT. After initial review this will be cut.
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #23848.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/23848* |
t-algebraic-topology
t-category-theory
merge-conflict
awaiting-author
infinity-cosmos
|
421/206 |
Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/Defs.lean,Mathlib/AlgebraicTopology/SimplicialSet/HomotopyCat.lean,Mathlib/AlgebraicTopology/SimplicialSet/NerveAdjunction.lean,Mathlib/AlgebraicTopology/SimplicialSet/StrictSegal.lean,Mathlib/CategoryTheory/ComposableArrows.lean,Mathlib/CategoryTheory/EqToHom.lean |
7 |
38 |
['emilyriehl', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
127-74412 4 months ago |
208-67138 208 days ago |
17-16247 17 days |
| 14752 |
AntoineChambert-Loir author:AntoineChambert-Loir |
fix(Topology/Algebra/Valued): repair definition of Valued |
Following a [discussion on Zulip](https://leanprover.zulipchat.com/#narrow/stream/116395-maths/topic/Question.20about.20.60Valued.2Eis_topological_valuation.60), we modify the definition of the field `is_topological_valuation` of `Valued` insisting that the element $\gamma$ showing up there is in the subgroup generated by the image of the valuation map.
Co-authored-by: @faenuccio
- [x] depends on: #25496 |
merge-conflict
WIP
t-topology
t-algebra
label:t-algebra$ |
1166/301 |
Mathlib.lean,Mathlib/Algebra/GroupWithZero/Range.lean,Mathlib/NumberTheory/NumberField/FinitePlaces.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/RankOne.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/UniformSpace/AbstractCompletion.lean,docs/references.bib |
12 |
28 |
['AntoineChambert-Loir', 'faenuccio', 'github-actions', 'jcommelin', 'kbuzzard', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'riccardobrasca'] |
nobody |
126-61853 4 months ago |
284-72734 284 days ago |
1-33784 1 day |
| 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-83785 4 months ago |
124-83785 124 days ago |
122-67006 122 days |
| 30150 |
imbrem author:imbrem |
feat(CategoryTheory/Monoidal): to_additive for MonoidalCategory |
Add `AddMonoidalCategory`, the additive version of `MonoidalCategory`.
To get this to work, I needed to _remove_ the `to_additive` attributes in `Discrete.lean`, since existing code relies on the `AddMonoid M → MonoidalCategory M` instance. For now, we simply implement the additive variants by hand instead.
---
As discussed in #28718; I added an `AddMonoidalCategory` struct and tagged `MonoidalCategory` with `to_additive`, along with the lemmas in `Category.lean`.
I think this is the right approach, since under this framework the "correct" additive version of `Discrete.lean` would be mapping an `AddMonoid` to an `AddMonoidalCategory`.
Next steps would be to:
- Make `monoidal_coherence` and `coherence` support `AddMonoidalCategory`
- Add `CocartesianMonoidalCategory` extending `AddMonoidalCategory`
[](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-36065 4 months ago |
164-14731 164 days ago |
1-160 1 day |
| 27135 |
JovanGerb author:JovanGerb |
feat: `gconvert` tactic |
The `gconvert` tactic calls `gcongr` internally, and it can be used as replacement/generalization of `peel`.
One drawback is that `peel` can unfold definitions until they are a binder, while `gconvert` cannot, but I think this is acceptable.
TODO: replace all uses of `peel` with either `gconvert` or `congr!`
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-meta
|
320/17 |
Mathlib/Tactic/GCongr/Core.lean,MathlibTest/GConvert.lean |
2 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
123-65210 4 months ago |
245-79807 245 days ago |
0-5 5 seconds |
| 25765 |
JovanGerb author:JovanGerb |
feat(gcongr): lemma for rewriting inside divisibility |
TODO: add test to show that we can rewrite using `a ≡ b [ZMOD n]` inside `n ∣ 2 * a + 1`.
edit: it's not yet entirely clear if this is the right thing to do.
edit: This lemma should be written using iff (or =), so that we can use it specifically when rewriting with a symmetric relation. Supporting equality in `gcongr` is still work in progress.
---
[](https://gitpod.io/from-referrer/)
|
delegated
t-data
|
5/0 |
Mathlib/Data/Int/ModEq.lean |
1 |
3 |
['fpvandoorn', 'github-actions', 'mathlib-bors'] |
nobody |
123-8931 4 months ago |
276-81611 276 days ago |
1-19951 1 day |
| 30978 |
dagurtomas author:dagurtomas |
Draft: adic spaces |
---
This is work in progress, mostly ported from the perfectoid project
[](https://gitpod.io/from-referrer/)
|
merge-conflict
large-import
|
1407/45 |
Mathlib.lean,Mathlib/AdicSpace/AdicSpace.lean,Mathlib/AdicSpace/HuberPair.lean,Mathlib/AdicSpace/Spa/RationalOpenData.lean,Mathlib/AdicSpace/Spa/StalkValuation.lean,Mathlib/AdicSpace/Spa/StructurePresheaf.lean,Mathlib/AdicSpace/Spv.lean,Mathlib/Topology/Category/TopCommRingCat.lean |
8 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
122-76764 4 months ago |
140-69583 140 days ago |
0-12 12 seconds |
| 30824 |
grunweg author:grunweg |
wip: another smoothness lemma for local frames |
---
Can I prove in general that the coefficients of a smooth section w.r.t. a smooth local frame are smooth?
This is certainly true for orthonormal frames...
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-differential-geometry
|
57/9 |
Mathlib/Geometry/Manifold/VectorBundle/LocalFrame.lean |
1 |
3 |
['github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] |
nobody |
121-65102 4 months ago |
144-76579 144 days ago |
0-6 6 seconds |
| 30770 |
robertmaxton42 author:robertmaxton42 |
(WIP) Limits and Colimits in Quiv |
WIP PR for the oleans
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
3652/31 |
Mathlib.lean,Mathlib/CategoryTheory/Category/Quiv.lean,Mathlib/CategoryTheory/Category/Quiv/AsFunctor/Defs.lean,Mathlib/CategoryTheory/Category/Quiv/Colimits.lean,Mathlib/CategoryTheory/Category/Quiv/Limits.lean,Mathlib/CategoryTheory/Category/Quiv/Shapes.lean,Mathlib/CategoryTheory/Category/Quiv/WalkingQuiver.lean,Mathlib/CategoryTheory/EqToHom.lean,Mathlib/CategoryTheory/Equivalence.lean,Mathlib/CategoryTheory/Filtered/Level.lean,Mathlib/CategoryTheory/Limits/Constructions/LimitsOfProductsAndEqualizers.lean,Mathlib/CategoryTheory/Limits/FunctorCategory/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/FunctorToTypes.lean,Mathlib/CategoryTheory/Limits/Types/Colimits.lean,Mathlib/CategoryTheory/ObjectProperty/FullSubcategory.lean,Mathlib/CategoryTheory/Topos/Classifier.lean,Mathlib/CategoryTheory/Topos/Presheaf.lean,Mathlib/Combinatorics/Quiver/Shapes.lean,Mathlib/Combinatorics/Quiver/WalkingQuiver.lean,Mathlib/Data/ULift.lean,Mathlib/Logic/Equiv/Basic.lean,Mathlib/Logic/Equiv/Sum.lean,Mathlib/Logic/Small/Defs.lean |
23 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
120-35530 4 months ago |
unknown |
0-0 0 seconds |
| 31593 |
Ruben-VandeVelde author:Ruben-VandeVelde |
feat: some lemmas about MonoidAlgebra |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-algebra
label:t-algebra$ |
26/0 |
Mathlib/Algebra/MonoidAlgebra/Basic.lean |
1 |
5 |
['github-actions', 'mathlib4-merge-conflict-bot', 'robin-carlier', 'themathqueen'] |
nobody |
120-29180 4 months ago |
122-84840 122 days ago |
0-85235 23 hours |
| 31596 |
grunweg author:grunweg |
chore: remove extraneous uses of push_neg |
---
Ideally, repeat this experiment after the new `contrapose!` for equivalences has been merged...
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
155/99 |
Mathlib/Algebra/Group/Fin/Basic.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/UniqueProds/Basic.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/Order/Archimedean/Class.lean,Mathlib/AlgebraicTopology/SimplicialSet/Degenerate.lean,Mathlib/Analysis/SpecialFunctions/BinaryEntropy.lean,Mathlib/CategoryTheory/Limits/Shapes/Preorder/WellOrderContinuous.lean,Mathlib/Combinatorics/Colex.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/Metric.lean,Mathlib/Data/EReal/Operations.lean,Mathlib/Data/Nat/Count.lean,Mathlib/Data/Seq/Basic.lean,Mathlib/GroupTheory/Perm/ClosureSwap.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/LinearAlgebra/LinearIndependent/Defs.lean,Mathlib/LinearAlgebra/RootSystem/GeckConstruction/Semisimple.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/NumberTheory/Padics/PadicVal/Basic.lean,Mathlib/NumberTheory/WellApproximable.lean,Mathlib/Order/LiminfLimsup.lean,Mathlib/RingTheory/HahnSeries/Basic.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/Ideal/AssociatedPrime/Basic.lean,Mathlib/RingTheory/Ideal/Oka.lean,Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/SetTheory/Ordinal/Principal.lean,Mathlib/Tactic/ByCases.lean,Mathlib/Tactic/ByContra.lean,Mathlib/Tactic/Contrapose.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/Push.lean,Mathlib/Topology/LocallyFinsupp.lean,Mathlib/Topology/Maps/Basic.lean,Mathlib/Topology/Separation/Regular.lean,Mathlib/Util/AtLocation.lean,MathlibTest/Contrapose.lean,MathlibTest/byContra.lean,MathlibTest/push_neg.lean |
42 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
120-21470 4 months ago |
123-77761 123 days ago |
0-1 1 second |
| 26885 |
pechersky author:pechersky |
feat(Topology/ValuativeRel): ValuativeTopology 𝒪[K] |
and even when not a field, `ValuativeRel 𝒪[K]`
This is an example of something achievable with the new declarations that wasn't possible with Valued
Such that we can discuss the valuations on the subring without always using coercions
But to achieve this, one needs some juggling of the value groups
---
[](https://gitpod.io/from-referrer/)
- [x] depends on: #26834
- [ ] depends on : #30135
|
t-algebra
t-number-theory
t-topology
label:t-algebra$ |
66/0 |
Mathlib/Topology/Algebra/Valued/ValuativeRel.lean |
1 |
10 |
['erdOne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] |
alreadydone assignee:alreadydone |
119-68326 3 months ago |
119-67863 119 days ago |
131-51649 131 days |
| 15651 |
TpmKranz author:TpmKranz |
feat(Computability/NFA): operations for Thompson's construction |
Lays the groundwork for a proof of equivalence of RE and NFA, w.r.t. described language. Actual connection to REs comes later, after the groundwork for the opposite direction has been laid.
Third chunk of #12648
---
[](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-53197 3 months ago |
538-80585 538 days ago |
45-84611 45 days |
| 12032 |
mcdoll author:mcdoll |
feat: delta distribution as a limit |
---
- [ ] depends on: #11496
[](https://gitpod.io/from-referrer/)
|
WIP
t-analysis
|
58/0 |
Mathlib/Analysis/Distribution/DiracDelta.lean |
1 |
2 |
['github-actions', 'mathlib4-dependent-issues-bot'] |
nobody |
119-36171 3 months ago |
706-80737 706 days ago |
0-1 1 second |
| 9693 |
madvorak author:madvorak |
feat: Linear programming in the standard form |
---
Zulip discussion:
https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.237386.20Linear.20Programming
Four PRs incompatible with each other:
https://github.com/leanprover-community/mathlib4/pull/7386 (list of constraints)
https://github.com/leanprover-community/mathlib4/pull/9693 (matrix form)
https://github.com/leanprover-community/mathlib4/pull/10026 (Antoine Chambert-Loir's def; semirings, linear)
https://github.com/leanprover-community/mathlib4/pull/10159 (Antoine Chambert-Loir's def; rings, affine)
- [x] depends on: #9652
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
RFC
label:t-algebra$ |
86/0 |
Mathlib.lean,Mathlib/LinearAlgebra/Matrix/LinearProgramming.lean |
2 |
15 |
['apurvanakade', 'github-actions', 'leanprover-community-mathlib4-bot', 'madvorak', 'mathlib4-merge-conflict-bot'] |
nobody |
119-543 3 months ago |
622-8535 622 days ago |
168-78821 168 days |
| 27392 |
Paul-Lez author:Paul-Lez |
feat(Tactic/SimpUtils): add simproc finding commands |
This PR adds some commands to allow users to find simprocs/dsimprocs/simp theorems that match on a given pattern.
Thanks to Robin Arnez for telling me about `simprocDeclExt` :)
---
[](https://gitpod.io/from-referrer/)
|
large-import
merge-conflict
file-removed
awaiting-author
t-meta
|
210277/112616 |
.github/PULL_REQUEST_TEMPLATE.md,.github/actionlint.yml,.github/build.in.yml,.github/workflows/PR_summary.yml,.github/workflows/actionlint.yml,.github/workflows/add_label_from_diff.yaml,.github/workflows/auto_assign_reviewers.yaml,.github/workflows/bench_summary_comment.yml,.github/workflows/bors.yml,.github/workflows/bot_fix_style.yaml,.github/workflows/build.yml,.github/workflows/build_fork.yml,.github/workflows/daily.yml,.github/workflows/discover-lean-pr-testing.yml,.github/workflows/docker_build.yml,.github/workflows/label_new_contributor.yml,.github/workflows/latest_import.yml,.github/workflows/lint_and_suggest_pr.yml,.github/workflows/long_file_report.yml,.github/workflows/maintainer_bors.yml,.github/workflows/maintainer_bors_wf_run.yml,.github/workflows/maintainer_merge.yml,.github/workflows/maintainer_merge_wf_run.yml,.github/workflows/mk_build_yml.sh,.github/workflows/nightly-docgen.yml,.github/workflows/nightly-regression-report.yml,.github/workflows/nightly_bump_toolchain.yml,.github/workflows/nightly_detect_failure.yml,.github/workflows/nightly_merge_master.yml,.github/workflows/nolints.yml,.github/workflows/pre-commit.yml,.github/workflows/remove_deprecated_decls.yml,.github/workflows/stale.yml,.github/workflows/technical_debt_metrics.yml,.github/workflows/update_dependencies.yml,.github/workflows/update_dependencies_zulip.yml,.github/workflows/weekly-lints.yml,.github/workflows/zulip_emoji_closed_pr.yaml,.github/workflows/zulip_emoji_labelling.yaml,.github/workflows/zulip_emoji_merge_delegate.yaml,.pre-commit-config.yaml,Archive.lean,Archive/Arithcc.lean,Archive/Examples/Eisenstein.lean,Archive/Examples/IfNormalization/Result.lean,Archive/Examples/IfNormalization/Statement.lean,Archive/Examples/IfNormalization/WithoutAesop.lean,Archive/Examples/Kuratowski.lean,Archive/Examples/MersennePrimes.lean,Archive/Imo/Imo1959Q2.lean,Archive/Imo/Imo1960Q1.lean,Archive/Imo/Imo1961Q3.lean,Archive/Imo/Imo1962Q1.lean,Archive/Imo/Imo1962Q4.lean,Archive/Imo/Imo1972Q5.lean,Archive/Imo/Imo1975Q1.lean,Archive/Imo/Imo1981Q3.lean,Archive/Imo/Imo1982Q1.lean,Archive/Imo/Imo1982Q3.lean,Archive/Imo/Imo1987Q1.lean,Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo1997Q3.lean,Archive/Imo/Imo1998Q2.lean,Archive/Imo/Imo2001Q2.lean,Archive/Imo/Imo2001Q3.lean,Archive/Imo/Imo2001Q4.lean,Archive/Imo/Imo2001Q5.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2005Q4.lean,Archive/Imo/Imo2006Q3.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q4.lean,Archive/Imo/Imo2011Q3.lean,Archive/Imo/Imo2013Q1.lean,Archive/Imo/Imo2013Q5.lean,Archive/Imo/Imo2015Q6.lean,Archive/Imo/Imo2019Q2.lean,Archive/Imo/Imo2021Q1.lean,Archive/Imo/Imo2024Q1.lean,Archive/Imo/Imo2024Q3.lean,Archive/Imo/Imo2024Q5.lean,Archive/Imo/Imo2024Q6.lean,Archive/Imo/README.md,Archive/Kuratowski.lean,Archive/MiuLanguage/DecisionSuf.lean,Archive/Sensitivity.lean,Archive/Wiedijk100Theorems/AbelRuffini.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Archive/Wiedijk100Theorems/AscendingDescendingSequences.lean,Archive/Wiedijk100Theorems/BallotProblem.lean,Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Archive/Wiedijk100Theorems/HeronsFormula.lean,Archive/Wiedijk100Theorems/InverseTriangleSum.lean,Archive/Wiedijk100Theorems/Partition.lean,Archive/Wiedijk100Theorems/PerfectNumbers.lean,Archive/Wiedijk100Theorems/SolutionOfCubicQuartic.lean,Archive/Wiedijk100Theorems/SumOfPrimeReciprocalsDiverges.lean,Cache/IO.lean,Cache/Main.lean |
5782 |
14 |
['Paul-Lez', 'Vierkantor', 'eric-wieser', 'github-actions', 'kmill', 'mathlib4-merge-conflict-bot'] |
nobody |
118-70010 3 months ago |
236-717 236 days ago |
0-5960 1 hour |
| 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-69438 3 months ago |
464-32968 464 days ago |
23-54870 23 days |
| 4786 |
thorimur author:thorimur |
feat: AppBuilder utils |
This supplements `Lean.Meta.AppBuilder`, introducing variants of `mkAppN` and `mkAppM` which allow for more fine-grained management of existing and created metavariables. [Description pending]
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-meta
|
205/0 |
Mathlib.lean,Mathlib/Lean/Meta/AppBuilder.lean |
2 |
1 |
['mathlib4-merge-conflict-bot'] |
nobody |
118-20898 3 months ago |
unknown |
0-0 0 seconds |
| 5745 |
alexjbest author:alexjbest |
feat: a tactic to consume type annotations, and make constructor nicer |
During the copenhagen masterclass I found some situations where applying the constructor tactic left the goal in a difficult to read state when autoParams were present.
We add a simple tactic to clean these up, and a macro for `constructor` to behave more like the constructor notation and do this automatically (constructor is in core)
It seems that these things should be cleaned up by simp, but a simp lemma to remove these annotations is not accepted by lean as the types are too similar.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-meta
|
41/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Consume.lean,test/consume.lean |
4 |
5 |
['alexjbest', 'digama0', 'kim-em', 'kmill', 'mathlib4-merge-conflict-bot'] |
nobody |
118-20897 3 months ago |
933-43759 933 days ago |
51-33889 51 days |
| 5863 |
eric-wieser author:eric-wieser |
feat: add elaborators for concrete matrices |
---
- [x] depends on: #5866
- [ ] depends on: #5897
[](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 |
118-20896 3 months ago |
978-557 978 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 |
118-20895 3 months ago |
801-45790 801 days ago |
0-433 7 minutes |
| 7386 |
madvorak author:madvorak |
feat: Define linear programs |
Linear programs over a general `Module` with constraints given in the form "aᵀx - b ≥ 0" and the objective function as an `AffineMap` to be minimized.
---
Zulip discussion:
https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.237386.20Linear.20Programming
Four PRs incompatible with each other:
https://github.com/leanprover-community/mathlib4/pull/7386 (list of constraints)
https://github.com/leanprover-community/mathlib4/pull/9693 (matrix form)
https://github.com/leanprover-community/mathlib4/pull/10026 (Antoine Chambert-Loir's def; semirings, linear)
https://github.com/leanprover-community/mathlib4/pull/10159 (Antoine Chambert-Loir's def; rings, affine)
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
t-algebra
RFC
label:t-algebra$ |
87/0 |
Mathlib.lean,Mathlib/LinearAlgebra/LinearProgramming.lean |
2 |
64 |
['Shreyas4991', 'YaelDillies', 'eric-wieser', 'github-actions', 'kim-em', 'madvorak', 'mathlib4-merge-conflict-bot'] |
nobody |
118-20892 3 months ago |
622-8523 622 days ago |
232-74885 232 days |
| 7890 |
grhkm21 author:grhkm21 |
feat(Mathlib/Tactic/Setm): implement setm tactic |
This is my first time doing metaprogramming in Lean 4, please provide feedback when you have them :)
The `setm` tactic, which stands for `set` + matching, matches a given expression with the goal and introduces new local hypotheses for the named holes specified. One of the best usage is for rearrangement proofs. As a simple example,
```lean
example : (1 + 1) + (4 * 3) - (1 + 1) = (3 * 4 : Rat) := by
setm ?A + ?B - ?A = (?C : Rat)
rw [show ∀ A B, A + B - A = B by intro A B ; ring_nf ]
apply Rat.mul_comm
```
One can imagine replacing the three term expression with a 7 term algebraic expression.
This was developed with tons of help from [Zulip](https://leanprover.zulipchat.com/#narrow/stream/239415-metaprogramming-.2F-tactics/topic/Help.20with.20writing.20tactic), especially from Thomas. Thanks!
TODO:
- [X] Support `setm ... at ...` syntax, see *example 1* below
- [X] Write docs
- [ ] Use `withNewMCtxDepth`
- [X] Rename the intermediate `MVar`s, see *example 2* below
- [ ] Use `elabTermWithHolesPostponing` in conjunction with `Term.synthesizeSyntheticMVarsNoPostPoning` after `isDefEq` to handle instances
Example 1:
```lean
/- Usage with `using` and `at` keywords -/
example (h1 : 1 + 1 = 3) (h2 : 1 + 3 = 5) (h3 : 2 + 2 = 5) : true := by
setm ?A + _ = (?B : Nat) using h2 at h1 h2 h3
guard_hyp A := 1
guard_hyp B := 5
guard_hyp h1 : A + A = 3
guard_hyp h2 : A + 3 = B
guard_hyp h3 : 2 + 2 = B
trivial
```
Example 2:
```lean
/- Test reusing named holes -/
example (h : b + a = c) : a + b = c := by
/- setm 1-/
setm ?A + ?B = (_ : Nat)
guard_hyp A := a
guard_hyp B := b
/- clean up -/
unfold_let A B
clear hA hB A B
/- setm 2 -/
rewrite [Nat.add_comm]
setm ?A + ?B = (_ : Nat) at h ⊢
guard_hyp A := b
guard_hyp B := a
exact h
```
Co-authored-by: Jireh Loreaux
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-meta
|
141/0 |
Mathlib.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/Setm.lean,test/Setm.lean |
4 |
4 |
['mathlib4-merge-conflict-bot', 'thorimur'] |
nobody |
118-20891 3 months ago |
875-20667 875 days ago |
0-104 1 minute |
| 9352 |
chenyili0818 author:chenyili0818 |
feat: arithmetic lemmas for `gradient` |
This file is based on Mathlib.Analysis.Calculus.Gradient.Basic, and describes the calculation properties
Co-authored-by: Ziyu Wang [tropicalfish910@gmail.com](mailto:tropicalfish910@gmail.com)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-analysis
|
404/0 |
Mathlib.lean,Mathlib/Analysis/Calculus/Gradient/Lemmas.lean |
2 |
31 |
['chenyili0818', 'github-actions', 'jcommelin', 'mathlib4-merge-conflict-bot', 'sgouezel', 'winstonyin'] |
nobody |
118-20767 3 months ago |
755-85616 755 days ago |
52-1358 52 days |
| 9795 |
sinhp author:sinhp |
feat: the type `Fib` of fibre of a function at a point |
This is the most basic file of the theory of fibred categories developed here: https://github.com/sinhp/LeanFibredCategories/tree/master
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-category-theory
|
74/0 |
Mathlib.lean,Mathlib/Data/Fiber.lean |
2 |
18 |
['adri326', 'joelriou', 'mathlib4-merge-conflict-bot', 'sinhp'] |
nobody |
118-20766 3 months ago |
788-16937 788 days ago |
2-35530 2 days |
| 10660 |
eric-wieser author:eric-wieser |
feat(LinearAlgebra/CliffordAlgebra): construction from a basis |
This is adapted from https://github.com/eric-wieser/lftcm2023-clifford_algebra, which only worked for the special case of `Q = 0`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
awaiting-author
t-algebra
label:t-algebra$ |
573/0 |
Mathlib.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Basis.lean |
2 |
16 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
118-20762 3 months ago |
unknown |
0-0 0 seconds |
| 10977 |
grunweg author:grunweg |
feat: germs of smooth functions |
Define the space of germs of smooth functions (between manifolds).
Endow it with a ring structure if the target manifold is a smooth ring (e.g., a Lie group or a field).
From the sphere eversion project, rewritten by me.
Co-authored-by: Patrick Massot
-------
Particular questions for review
- is the authorship/copyright information appropriate?
(`PatrickMassot` created the file `SmoothGerm` which I adapted; I didn't trace this far back through sphere-eversion.)
- is providing all the intermediate algebraic structures (such as, an additive subgroup) on the space of smooth germs useful in practice? (The sphere eversion project only needs a ring structure.)
- any further particular API lemmas (e.g., around coercions) which would be good to add?
---
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry
merge-conflict
awaiting-author
t-topology
t-analysis
|
150/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/Algebra/SmoothGerm.lean |
2 |
34 |
['YaelDillies', 'github-actions', 'grunweg', 'jcommelin', 'kim-em', 'mathlib4-merge-conflict-bot', 'mcdoll'] |
fpvandoorn assignee:fpvandoorn |
118-20761 3 months ago |
566-82796 566 days ago |
144-63944 144 days |
| 10998 |
hmonroe author:hmonroe |
feat(Logic): Arithmetization of partial recursive functions (toward Gödel's first incompleteness theorem) |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-logic
|
364/0 |
Mathlib.lean,Mathlib/Logic/Godel/PartArith.lean |
2 |
4 |
['Ruben-VandeVelde', 'YaelDillies', 'mathlib4-merge-conflict-bot'] |
nobody |
118-20760 3 months ago |
648-75688 648 days ago |
99-83915 99 days |
| 11890 |
adomani author:adomani |
feat: the terminal refine linter |
A linter that warns on usages of `refine` and `refine'` as a finishing tactic.
See this [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Usage.20of.20refine').
### Conclusion of the experiment
Systematic replacements of terminal `refine` with `exact` leads to an overall slow-down.
---
- [ ] depends on: #15616 (disable the linter in downstream projects)
[](https://gitpod.io/from-referrer/)
|
merge-conflict
t-linter
awaiting-author
|
77/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/TerminalRefineLinter.lean |
3 |
15 |
['adomani', 'github-actions', 'grunweg', 'joneugster', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot', 'urkud'] |
nobody |
118-20636 3 months ago |
580-55142 580 days ago |
18-28993 18 days |
| 11991 |
adomani author:adomani |
draft: syntax data linter |
A linter that prints `SyntaxNodeKind`s and `Range`s for all the nodes of a command.
See this [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/217875-Is-there-code-for-X.3F/topic/undocumented.20things).
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
WIP
|
152/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/SyntaxDataLinter.lean |
3 |
1 |
['mathlib4-merge-conflict-bot'] |
nobody |
118-20635 3 months ago |
unknown |
0-0 0 seconds |
| 12006 |
adomani author:adomani |
feat: the `suffa` tactic |
The `suffa` tactic.
`suffa tac` runs the tactic sequence `tac` and returns a `Try this:` suggestion
of the form `suffices [target_after_tac] by tac; assumption`.
For example
```lean
example {m n : Nat} (h : m = n) : 0 + m = n := by
suffa rewrite [Nat.zero_add]
assumption
```
suggests the replacement
```lean
example {m n : Nat} (h : m = n) : 0 + m = n := by
suffices m = n by
rewrite [Nat.zero_add]
assumption
assumption
```
See [this thread](https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/Try.20this.3A.20suffices.20simpa) as well as [this message](https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.2311822.20flexible.20tactics.20linter/near/431895664).
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-meta
|
161/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Suffa.lean,test/Suffa.lean |
4 |
4 |
['MoritzBeroRoos', 'YaelDillies', 'mathlib4-merge-conflict-bot'] |
nobody |
118-20633 3 months ago |
649-6011 649 days ago |
59-762 59 days |
| 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 |
118-20631 3 months ago |
568-12717 568 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 |
118-20629 3 months ago |
538-82165 538 days ago |
26-40037 26 days |
| 14345 |
digama0 author:digama0 |
feat: the Dialectica category is monoidal closed |
- [x] depends on: #14274
The monoidal closed structure of the Dialectica category.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-category-theory
|
252/0 |
Mathlib.lean,Mathlib/CategoryTheory/Dialectica/Closed.lean |
2 |
4 |
['github-actions', 'kim-em', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] |
nobody |
118-20506 3 months ago |
609-72460 609 days ago |
12-20456 12 days |
| 14727 |
jjaassoonn author:jjaassoonn |
feat(RingTheory/Flat/CategoryTheory): a flat module has vanishing higher Tor groups |
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-ring-theory
|
37/1 |
Mathlib/RingTheory/Flat/CategoryTheory.lean |
1 |
4 |
['github-actions', 'kim-em', 'mathlib4-merge-conflict-bot'] |
nobody |
118-20504 3 months ago |
607-54505 607 days ago |
3-28223 3 days |
| 14733 |
jjaassoonn author:jjaassoonn |
feat(RingTheory/Flat/CategoryTheory): a module is flat iff tensoring preserves finite limits |
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-ring-theory
|
99/1 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/RightExact.lean,Mathlib/RingTheory/Flat/CategoryTheory.lean |
4 |
3 |
['github-actions', 'kim-em', 'mathlib4-merge-conflict-bot'] |
nobody |
118-20502 3 months ago |
604-66366 604 days ago |
6-6256 6 days |
| 15055 |
sinhp author:sinhp |
feat: the category of pointed objects of a concrete category |
This file defines the category of pointed objects of a concrete category. After this we will have the categories of pointed groups, pointed abelian groups, pointed groupoids, etc.
To define `Pointed.functor`, we need to add the following "pullback" construction to the category of elements.
```
@[simps obj map]
def pullback (F : D ⥤ Type w) (G : C ⥤ D) :
(G ⋙ F).Elements ⥤ F.Elements where
obj X := ⟨G.obj X.1, X.2⟩
map {X Y} f := ⟨G.map f.1, f.2⟩
```
This is called pullback since the display map of `G ⋙ F` (i.e. `π (G ⋙ F)`) is a pullback of the display map of `F`.
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
t-category-theory
|
185/0 |
Mathlib.lean,Mathlib/CategoryTheory/ConcreteCategory/Pointed.lean,Mathlib/CategoryTheory/Elements.lean |
3 |
14 |
['dagurtomas', 'github-actions', 'kim-em', 'mathlib4-merge-conflict-bot'] |
nobody |
118-20501 3 months ago |
594-5843 594 days ago |
7-80557 7 days |
| 15224 |
AnthonyBordg author:AnthonyBordg |
feat(CategoryTheory/Sites): covering families and their associated Grothendieck topology |
Define covering families on a category and their associated Grothendieck topology by using the API for `Coverage`.
Give an explicit characterization of the covering sieves of the said topology.
---
[](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 |
118-20500 3 months ago |
593-73131 593 days ago |
1-48443 1 day |
| 15453 |
tomaz1502 author:tomaz1502 |
Track formalization of runtime complexity |
I finished porting https://github.com/leanprover-community/mathlib3/pull/14494/ to Lean 4 and made several small PRs, as suggested. This meta PR is used to track the progress of the smaller PRs.
## Pending PRs
- [Formalization of List.insertionSort](https://github.com/leanprover-community/mathlib4/pull/15449)
- [Lemmas about Split](https://github.com/leanprover-community/mathlib4/pull/15450)
- [Formalization of List.merge](https://github.com/leanprover-community/mathlib4/pull/15451)
- [Formalization of List.mergeSort](https://github.com/leanprover-community/mathlib4/pull/15452)
---
[](https://gitpod.io/from-referrer/)
|
merge-conflict |
525/0 |
Mathlib.lean,Mathlib/Computability/Timed/InsertionSort.lean,Mathlib/Computability/Timed/Merge.lean,Mathlib/Computability/Timed/MergeSort.lean,Mathlib/Computability/Timed/Split.lean |
5 |
5 |
['joneugster', 'mathlib4-merge-conflict-bot', 'mergify'] |
nobody |
118-20498 3 months ago |
580-12388 580 days ago |
11-43846 11 days |
| 16303 |
grunweg author:grunweg |
feat(CI): check for badly formatted titles or missing/contradictory labels |
---
The zulip workflow is entirely cargo-culted from #16296; please review carefully.
[](https://gitpod.io/from-referrer/)
|
merge-conflict
awaiting-author
CI
|
325/0 |
.github/build.in.yml,Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/ValidatePRTitle.lean,MathlibTest/ValidatePRTitle.lean,lakefile.lean,scripts/README.md,scripts/check-title-labels.lean |
8 |
45 |
['Command-Master', 'adomani', 'bryangingechen', 'edegeltje', 'github-actions', 'grunweg', 'joneugster', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot'] |
bryangingechen assignee:bryangingechen |
118-20496 3 months ago |
436-55989 436 days ago |
78-5771 78 days |
| 17587 |
kmill |