@@ -1719,7 +1719,6 @@ theorem curryFinFinset_symm_apply {k l n : ℕ} {s : Finset (Fin n)} (hk : #s =
1719
1719
m <| finSumEquivOfFinset hk hl (Sum.inr i) :=
1720
1720
rfl
1721
1721
1722
- -- @[ simp ] -- Porting note: simpNF linter, lhs simplifies, added aux version below
1723
1722
theorem curryFinFinset_symm_apply_piecewise_const {k l n : ℕ} {s : Finset (Fin n)} (hk : #s = k)
1724
1723
(hl : #sᶜ = l)
1725
1724
(f : MultilinearMap R (fun _ : Fin k => M') (MultilinearMap R (fun _ : Fin l => M') M₂))
@@ -1734,42 +1733,21 @@ theorem curryFinFinset_symm_apply_piecewise_const {k l n : ℕ} {s : Finset (Fin
1734
1733
rw [finSumEquivOfFinset_inr, Finset.piecewise_eq_of_not_mem]
1735
1734
exact Finset.mem_compl.1 (Finset.orderEmbOfFin_mem _ _ _)
1736
1735
1737
- @[simp]
1738
- theorem curryFinFinset_symm_apply_piecewise_const_aux {k l n : ℕ} {s : Finset (Fin n)}
1739
- (hk : #s = k) (hl : #sᶜ = l)
1740
- (f : MultilinearMap R (fun _ : Fin k => M') (MultilinearMap R (fun _ : Fin l => M') M₂))
1741
- (x y : M') :
1742
- ((⇑f fun _ => x) (fun i => (Finset.piecewise s (fun _ => x) (fun _ => y)
1743
- ((sᶜ.orderEmbOfFin hl) i))) = f (fun _ => x) fun _ => y) := by
1744
- have := curryFinFinset_symm_apply_piecewise_const hk hl f x y
1745
- simp only [curryFinFinset_symm_apply, finSumEquivOfFinset_inl, Finset.orderEmbOfFin_mem,
1746
- Finset.piecewise_eq_of_mem, finSumEquivOfFinset_inr] at this
1747
- exact this
1748
-
1749
1736
@[simp]
1750
1737
theorem curryFinFinset_symm_apply_const {k l n : ℕ} {s : Finset (Fin n)} (hk : #s = k)
1751
1738
(hl : #sᶜ = l)
1752
1739
(f : MultilinearMap R (fun _ : Fin k => M') (MultilinearMap R (fun _ : Fin l => M') M₂))
1753
1740
(x : M') : ((curryFinFinset R M₂ M' hk hl).symm f fun _ => x) = f (fun _ => x) fun _ => x :=
1754
1741
rfl
1755
1742
1756
- -- @[ simp ] -- Porting note: simpNF, lhs simplifies, added aux version below
1757
1743
theorem curryFinFinset_apply_const {k l n : ℕ} {s : Finset (Fin n)} (hk : #s = k)
1758
1744
(hl : #sᶜ = l) (f : MultilinearMap R (fun _ : Fin n => M') M₂) (x y : M') :
1759
1745
(curryFinFinset R M₂ M' hk hl f (fun _ => x) fun _ => y) =
1760
1746
f (s.piecewise (fun _ => x) fun _ => y) := by
1747
+ -- Porting note: `rw` fails
1761
1748
refine (curryFinFinset_symm_apply_piecewise_const hk hl _ _ _).symm.trans ?_
1762
- -- `rw` fails
1763
1749
rw [LinearEquiv.symm_apply_apply]
1764
1750
1765
- @[simp]
1766
- theorem curryFinFinset_apply_const_aux {k l n : ℕ} {s : Finset (Fin n)} (hk : #s = k)
1767
- (hl : #sᶜ = l) (f : MultilinearMap R (fun _ : Fin n => M') M₂) (x y : M') :
1768
- (f fun i => Sum.elim (fun _ => x) (fun _ => y) ((⇑ (Equiv.symm (finSumEquivOfFinset hk hl))) i))
1769
- = f (s.piecewise (fun _ => x) fun _ => y) := by
1770
- rw [← curryFinFinset_apply]
1771
- apply curryFinFinset_apply_const
1772
-
1773
1751
end MultilinearMap
1774
1752
1775
1753
end Currying
0 commit comments