# mathlibdocumentation

data.mv_polynomial.pderiv

# 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 #

• mv_polynomial.pderiv i p : the partial derivative of p with respect to i, as a bundled derivation of mv_polynomial σ R.

## Notation #

As in other polynomial files, we typically use the notation:

• σ : Type* (indexing the variables)

• R : Type* [comm_ring R] (the coefficients)

• s : σ →₀ ℕ, a function from σ to ℕ which is zero away from a finite set. This will give rise to a monomial in mv_polynomial σ R which mathematicians might call X^s

• a : R

• i : σ, with corresponding monomial X i, often denoted X_i by mathematicians

• p : mv_polynomial σ R

noncomputable def mv_polynomial.pderiv {R : Type u} {σ : Type v} (i : σ) :
R) R)

pderiv i p is the partial derivative of p with respect to i

Equations
@[simp]
theorem mv_polynomial.pderiv_monomial {R : Type u} {σ : Type v} {a : R} {s : σ →₀ } {i : σ} :
a) = (mv_polynomial.monomial (s - 1)) (a * (s i))
theorem mv_polynomial.pderiv_C {R : Type u} {σ : Type v} {a : R} {i : σ} :
= 0
theorem mv_polynomial.pderiv_one {R : Type u} {σ : Type v} {i : σ} :
= 0
@[simp]
theorem mv_polynomial.pderiv_X {R : Type u} {σ : Type v} [d : decidable_eq σ] (i j : σ) :
= 1 j
@[simp]
theorem mv_polynomial.pderiv_X_self {R : Type u} {σ : Type v} (i : σ) :
= 1
@[simp]
theorem mv_polynomial.pderiv_X_of_ne {R : Type u} {σ : Type v} {i j : σ} (h : j i) :
= 0
theorem mv_polynomial.pderiv_eq_zero_of_not_mem_vars {R : Type u} {σ : Type v} {i : σ} {f : R} (h : i f.vars) :
= 0
theorem mv_polynomial.pderiv_monomial_single {R : Type u} {σ : Type v} {a : R} {i : σ} {n : } :
( a) = (mv_polynomial.monomial (n - 1))) (a * n)
theorem mv_polynomial.pderiv_mul {R : Type u} {σ : Type v} {i : σ} {f g : R} :
(f * g) = * g + f *
@[simp]
theorem mv_polynomial.pderiv_C_mul {R : Type u} {σ : Type v} {a : R} {f : R} {i : σ} :
* f) =