Scaling the variables of a homogeneous polynomial #
Evaluating a homogeneous polynomial of degree n after multiplying every variable by a
multiplies its value by a ^ n. This permits normalizing linear substitutions without
expanding the polynomial.
The results live in MvPolynomial.IsHomogeneous, so a homogeneity proof supports dot
notation such as hp.eval₂_const_mul, hp.aeval_smul, and hp.eval_smul.
The file also records MvPolynomial.isHomogeneous_coeff_prod_X_sub_C: the coefficients of a
product of linear factors X - C Ψ with homogeneous Ψ of degree m are homogeneous.
Scaling all variables by a scales the value of a degree-n homogeneous polynomial
by a ^ n, after any change of coefficient ring.
This is not a global simp lemma: the degree n cannot be inferred from its left-hand side.
Scaling the variables of a homogeneous polynomial by a scalar scales its algebra evaluation by the corresponding power of that scalar. The scalar algebra may differ from the coefficient algebra.
Scaling the variables of a homogeneous polynomial scales its evaluation by the corresponding power of the scalar.
The coefficient of X ^ k in a product of linear factors X - C Ψ, whose constant terms Ψ
are all homogeneous of degree m, is homogeneous of degree m * (s.card - k).