Documentation

Mathlib.Data.MvPolynomial.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 #

Notation #

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

def MvPolynomial.pderiv {R : Type u} {σ : Type v} [CommSemiring R] (i : σ) :

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

Instances For
    @[simp]
    theorem MvPolynomial.pderiv_monomial {R : Type u} {σ : Type v} {a : R} {s : σ →₀ } [CommSemiring R] {i : σ} :
    ↑(MvPolynomial.pderiv i) (↑(MvPolynomial.monomial s) a) = ↑(MvPolynomial.monomial (s - fun₀ | i => 1)) (a * ↑(s i))
    theorem MvPolynomial.pderiv_C {R : Type u} {σ : Type v} {a : R} [CommSemiring R] {i : σ} :
    ↑(MvPolynomial.pderiv i) (MvPolynomial.C a) = 0
    theorem MvPolynomial.pderiv_one {R : Type u} {σ : Type v} [CommSemiring R] {i : σ} :
    @[simp]
    theorem MvPolynomial.pderiv_X {R : Type u} {σ : Type v} [CommSemiring R] [DecidableEq σ] (i : σ) (j : σ) :
    @[simp]
    theorem MvPolynomial.pderiv_X_self {R : Type u} {σ : Type v} [CommSemiring R] (i : σ) :
    @[simp]
    theorem MvPolynomial.pderiv_X_of_ne {R : Type u} {σ : Type v} [CommSemiring R] {i : σ} {j : σ} (h : j i) :
    theorem MvPolynomial.pderiv_monomial_single {R : Type u} {σ : Type v} {a : R} [CommSemiring R] {i : σ} {n : } :
    ↑(MvPolynomial.pderiv i) (↑(MvPolynomial.monomial fun₀ | i => n) a) = ↑(MvPolynomial.monomial fun₀ | i => n - 1) (a * n)
    theorem MvPolynomial.pderiv_mul {R : Type u} {σ : Type v} [CommSemiring R] {i : σ} {f : MvPolynomial σ R} {g : MvPolynomial σ R} :
    ↑(MvPolynomial.pderiv i) (f * g) = ↑(MvPolynomial.pderiv i) f * g + f * ↑(MvPolynomial.pderiv i) g
    theorem MvPolynomial.pderiv_C_mul {R : Type u} {σ : Type v} {a : R} [CommSemiring R] {f : MvPolynomial σ R} {i : σ} :
    ↑(MvPolynomial.pderiv i) (MvPolynomial.C a * f) = MvPolynomial.C a * ↑(MvPolynomial.pderiv i) f