[Merged by Bors] - feat: quotient lift on a finite family#5576
[Merged by Bors] - feat: quotient lift on a finite family#5576astrainfinita wants to merge 24 commits intomasterfrom
Conversation
|
That was leanprover-community/mathlib3#18318 but had been solved in a slightly more complicated way in #13235. See #15156 for golf. In the future it may be used to prove that |
This reverts commit ee8e506.
Cn you add that t othe PR description? |
YaelDillies
left a comment
There was a problem hiding this comment.
maintainer merge
apart from that. Thanks!
|
🚀 Pull request has been placed on the maintainer queue by YaelDillies. |
Co-authored-by: Yaël Dillies <yael.dillies@gmail.com>
…ty/mathlib4 into FR_quotient2'
| Authors: Mario Carneiro | ||
| Authors: Mario Carneiro, Yuyang Zhao | ||
| -/ | ||
| import Mathlib.Data.List.Pi |
There was a problem hiding this comment.
I'm a bit wary of adding extra imports here since this file does get imported by a big chunk of Mathlib. But looking at the import graph, most of those dependencies look like good splitting candidates anyway, so I think on balance it does not cause a bigger tangle than we already have.
In the future it may be used to prove that `ZFSet` is a model of ZF set theory without using `Classical.choice`. Specifically, it will be used to prove that all first-order formulas of `ZFSet` are definable. Comparing to `(finChoice q).liftOn f`, `finLiftOn q f` asks users to provide a proof of `(∀ i, a i ≈ b i) → f a = f b` instead of `a ≈ b → f a = f b`, which is more readable and easier to rewrite. It also makes it easier for users to discover and use relevant APIs. Co-authored-by: negiizhao <egresf@gmail.com>
|
Pull request successfully merged into master. Build succeeded: |
In the future it may be used to prove that
ZFSetis a model of ZF set theory without usingClassical.choice. Specifically, it will be used to prove that all first-order formulas ofZFSetare definable.Comparing to
(finChoice q).liftOn f,finLiftOn q fasks users to provide a proof of(∀ i, a i ≈ b i) → f a = f binstead ofa ≈ b → f a = f b, which is more readable and easier to rewrite. It also makes it easier for users to discover and use relevant APIs.Data/List/Pi#5549