mathlib documentation

data.polynomial.derivative

The derivative map on polynomials #

Main definitions #

noncomputable def polynomial.derivative {R : Type u} [semiring R] :

derivative p is the formal derivative of the polynomial p

Equations
theorem polynomial.derivative_apply {R : Type u} [semiring R] (p : R[X]) :
⇑polynomial.derivative p = p.sum (λ (n : ℕ) (a : R), (⇑polynomial.C (a * ↑n)) * polynomial.X ^ (n - 1))
theorem polynomial.coeff_derivative {R : Type u} [semiring R] (p : R[X]) (n : ℕ) :
(⇑polynomial.derivative p).coeff n = (p.coeff (n + 1)) * (↑n + 1)
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
theorem polynomial.derivative_C {R : Type u} [semiring R] {a : R} :
@[simp]
@[simp]
theorem polynomial.derivative_sum {R : Type u} {ι : Type y} [semiring R] {s : finset ι} {f : ι → R[X]} :
⇑polynomial.derivative (∑ (b : ι) in s, f b) = ∑ (b : ι) in s, ⇑polynomial.derivative (f b)
@[simp]
theorem polynomial.derivative_smul {R : Type u} [semiring R] {S : Type u_1} [monoid S] [distrib_mul_action S R] [is_scalar_tower S R R] (s : S) (p : R[X]) :
@[simp]
theorem polynomial.iterate_derivative_smul {R : Type u} [semiring R] {S : Type u_1} [monoid S] [distrib_mul_action S R] [is_scalar_tower S R R] (s : S) (p : R[X]) (k : ℕ) :
theorem polynomial.of_mem_support_derivative {R : Type u} [semiring R] {p : R[X]} {n : ℕ} (h : n ∈ (⇑polynomial.derivative p).support) :
n + 1 ∈ p.support
theorem polynomial.degree_derivative_lt {R : Type u} [semiring R] {p : R[X]} (hp : p ≠ 0) :
@[simp]
theorem polynomial.iterate_derivative_eq_zero {R : Type u} [semiring R] {p : R[X]} {x : ℕ} (hx : p.nat_degree < x) :
theorem polynomial.derivative_eval {R : Type u} [comm_semiring R] (p : R[X]) (x : R) :
polynomial.eval x (⇑polynomial.derivative p) = p.sum (λ (n : ℕ) (a : R), (a * ↑n) * x ^ (n - 1))
theorem polynomial.derivative_pow_succ {R : Type u} [comm_semiring R] (p : R[X]) (n : ℕ) :
theorem polynomial.derivative_pow {R : Type u} [comm_semiring R] (p : R[X]) (n : ℕ) :
theorem polynomial.derivative_prod {R : Type u} {ι : Type y} [comm_semiring R] {s : multiset ι} {f : ι → R[X]} :
theorem polynomial.eval_multiset_prod_X_sub_C_derivative {R : Type u} [comm_ring R] {S : multiset R} {r : R} (hr : r ∈ S) :
@[simp]