Source context 3 commands
Surrounding namespaces, section variables, and local commands at this declaration.
noncomputable section
open scoped BigOperators
namespace MvPolynomialtheorem eval_coefficient_coordinates
{K F : Type*} [Field K] [Field F] [Algebra K F]
{n : ℕ} (p : MvPolynomial (Fin n) F) (l : F →ₗ[K] K) (x : Fin n → K) :
eval x (∑ d ∈ p.support, monomial d (l (p.coeff d))) =
l (eval (fun i => algebraMap K F (x i)) p) := by
classical
rw [eval_sum, eval_eq]
simp only [eval_monomial, map_sum]
apply Finset.sum_congr rfl
intro d hd
have hm :
∏ i ∈ d.support, algebraMap K F (x i) ^ d i =
algebraMap K F (d.prod fun i e => x i ^ e) := by
simp only [Finsupp.prod, map_prod, map_pow]
rw [hm, mul_comm (p.coeff d), ← Algebra.smul_def, l.map_smul, smul_eq_mul, mul_comm]