Derivations of multivariate polynomials #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
In this file we prove that a derivation of mv_polynomial σ R
is determined by its values on all
monomials mv_polynomial.X i
. We also provide a constructor mv_polynomial.mk_derivation
that
builds a derivation from its values on X i
s and a linear equivalence
mv_polynomial.equiv_derivation
between σ → A
and derivation (mv_polynomial σ R) A
.
The derivation on mv_polynomial σ R
that takes value f i
on X i
, as a linear map.
Use mv_polynomial.mk_derivation
instead.
Equations
- mv_polynomial.mk_derivationₗ R f = ⇑(finsupp.lsum R) (λ (xs : σ →₀ ℕ), ⇑((linear_map.ring_lmap_equiv_self R R A).symm) (xs.sum (λ (i : σ) (k : ℕ), ⇑(mv_polynomial.monomial (xs - finsupp.single i 1)) ↑k • f i)))
If two derivations agree on X i
, i ∈ s
, then they agree on all polynomials from
mv_polynomial.supported R s
.
The derivation on mv_polynomial σ R
that takes value f i
on X i
.
Equations
- mv_polynomial.mk_derivation R f = {to_linear_map := mv_polynomial.mk_derivationₗ R f, map_one_eq_zero' := _, leibniz' := _}
mv_polynomial.mk_derivation
as a linear equivalence.
Equations
- mv_polynomial.mk_derivation_equiv R = {to_fun := λ (D : derivation R (mv_polynomial σ R) A) (i : σ), ⇑D (mv_polynomial.X i), map_add' := _, map_smul' := _, inv_fun := mv_polynomial.mk_derivation R _inst_5, left_inv := _, right_inv := _}.symm