Partial derivatives of polynomials #
This file defines the notion of the formal partial derivative of a polynomial, the derivative with respect to a single variable. This derivative is not connected to the notion of derivative from analysis. It is based purely on the polynomial exponents and coefficients.
Main declarations #
- MvPolynomial.pderiv i p: the partial derivative of- pwith respect to- i, as a bundled derivation of- MvPolynomial σ R.
Notation #
As in other polynomial files, we typically use the notation:
- σ : Type*(indexing the variables)
- R : Type*- [CommRing R](the coefficients)
- s : σ →₀ ℕ, a function from- σto- ℕwhich is zero away from a finite set. This will give rise to a monomial in- MvPolynomial σ Rwhich mathematicians might call- X^s
- a : R
- i : σ, with corresponding monomial- X i, often denoted- X_iby mathematicians
- p : MvPolynomial σ R
def
MvPolynomial.pderiv
{R : Type u}
{σ : Type v}
[CommSemiring R]
(i : σ)
 :
Derivation R (MvPolynomial σ R) (MvPolynomial σ R)
pderiv i p is the partial derivative of p with respect to i
Equations
Instances For
theorem
MvPolynomial.pderiv_def
{R : Type u}
{σ : Type v}
[CommSemiring R]
[DecidableEq σ]
(i : σ)
 :
@[simp]
theorem
MvPolynomial.pderiv_monomial
{R : Type u}
{σ : Type v}
{a : R}
{s : σ →₀ ℕ}
[CommSemiring R]
{i : σ}
 :
@[simp]
theorem
MvPolynomial.pderiv_X
{R : Type u}
{σ : Type v}
[CommSemiring R]
[DecidableEq σ]
(i j : σ)
 :
@[simp]
@[simp]
theorem
MvPolynomial.pderiv_X_of_ne
{R : Type u}
{σ : Type v}
[CommSemiring R]
{i j : σ}
(h : j ≠ i)
 :
theorem
MvPolynomial.pderiv_eq_zero_of_notMem_vars
{R : Type u}
{σ : Type v}
[CommSemiring R]
{i : σ}
{f : MvPolynomial σ R}
(h : i ∉ f.vars)
 :
@[deprecated MvPolynomial.pderiv_eq_zero_of_notMem_vars (since := "2025-05-23")]
theorem
MvPolynomial.pderiv_eq_zero_of_not_mem_vars
{R : Type u}
{σ : Type v}
[CommSemiring R]
{i : σ}
{f : MvPolynomial σ R}
(h : i ∉ f.vars)
 :
theorem
MvPolynomial.pderiv_monomial_single
{R : Type u}
{σ : Type v}
{a : R}
[CommSemiring R]
{i : σ}
{n : ℕ}
 :
theorem
MvPolynomial.pderiv_mul
{R : Type u}
{σ : Type v}
[CommSemiring R]
{i : σ}
{f g : MvPolynomial σ R}
 :
theorem
MvPolynomial.pderiv_pow
{R : Type u}
{σ : Type v}
[CommSemiring R]
{i : σ}
{f : MvPolynomial σ R}
{n : ℕ}
 :
theorem
MvPolynomial.pderiv_C_mul
{R : Type u}
{σ : Type v}
{a : R}
[CommSemiring R]
{f : MvPolynomial σ R}
{i : σ}
 :
theorem
MvPolynomial.pderiv_map
{R : Type u}
{σ : Type v}
[CommSemiring R]
{S : Type u_1}
[CommSemiring S]
{φ : R →+* S}
{f : MvPolynomial σ R}
{i : σ}
 :
theorem
MvPolynomial.pderiv_rename
{R : Type u}
{σ : Type v}
[CommSemiring R]
{τ : Type u_1}
{f : σ → τ}
(hf : Function.Injective f)
(x : σ)
(p : MvPolynomial σ R)
 :