[Merged by Bors] - feat(Data/Finsupp/Basic): add Finsupp.(un)curry_single and @[simps] to Finsupp.finsuppProd(L)Equiv#23021
[Merged by Bors] - feat(Data/Finsupp/Basic): add Finsupp.(un)curry_single and @[simps] to Finsupp.finsuppProd(L)Equiv#23021101damnations wants to merge 8 commits intomasterfrom
Finsupp.(un)curry_single and @[simps] to Finsupp.finsuppProd(L)Equiv#23021Conversation
PR summary cfd58948ddImport changes for modified filesNo significant changes to the import graph Import changes for all files
Declarations diffNo declarations were harmed in the making of this PR! 🐙 You can run this locally as follows## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>
## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>The doc-module for No changes to technical debt.You can run this locally as
|
|
✌️ 101damnations can now approve this pull request. To approve and merge a pull request, simply reply with |
|
Please consider moving some or all of the description above the Generally, the bit below the |
|
This pull request has conflicts, please merge |
This reverts commit 5501e95.
|
bors r+ |
…]` to `Finsupp.finsuppProd(L)Equiv` (#23021) This was raised by @Whysoserioushah regarding #21732. We add `Finsupp.uncurry_apply`, which simplifies `Finsupp.uncurry` applied to a term of a product type `xy : α × β`, to prevent `Basis.smulTower_repr` breaking. However, we don't tag this with `@[simp]`; there is already a `@[simp]` tag on the less eager `Finsupp.uncurry_apply_pair`, which applies to a pair of terms `x : α`, `y : β`.
|
Pull request successfully merged into master. Build succeeded: |
Finsupp.(un)curry_single and @[simps] to Finsupp.finsuppProd(L)EquivFinsupp.(un)curry_single and @[simps] to Finsupp.finsuppProd(L)Equiv
…]` to `Finsupp.finsuppProd(L)Equiv` (#23021) This was raised by @Whysoserioushah regarding #21732. We add `Finsupp.uncurry_apply`, which simplifies `Finsupp.uncurry` applied to a term of a product type `xy : α × β`, to prevent `Basis.smulTower_repr` breaking. However, we don't tag this with `@[simp]`; there is already a `@[simp]` tag on the less eager `Finsupp.uncurry_apply_pair`, which applies to a pair of terms `x : α`, `y : β`.
…]` to `Finsupp.finsuppProd(L)Equiv` (leanprover-community#23021) This was raised by @Whysoserioushah regarding leanprover-community#21732. We add `Finsupp.uncurry_apply`, which simplifies `Finsupp.uncurry` applied to a term of a product type `xy : α × β`, to prevent `Basis.smulTower_repr` breaking. However, we don't tag this with `@[simp]`; there is already a `@[simp]` tag on the less eager `Finsupp.uncurry_apply_pair`, which applies to a pair of terms `x : α`, `y : β`.
This was raised by @Whysoserioushah regarding #21732. We add
Finsupp.uncurry_apply, which simplifiesFinsupp.uncurryapplied to a term of a product typexy : α × β, to preventBasis.smulTower_reprbreaking. However, we don't tag this with@[simp]; there is already a@[simp]tag on the less eagerFinsupp.uncurry_apply_pair, which applies to a pair of termsx : α,y : β.(Original comment: Adding the lemmas and
@[simps]on their own breaks this lemma and the simplest way to fix it (and justify removingFinsupp.finsuppProdLEquiv_symm_apply) is to make the argument toFinsupp.uncurry_apply_pair(added in #22939) any term of the product type, but maybe that would be too eager a simp lemma?)