Documentation

Mathlib.Algebra.Polynomial.Taylor

Taylor expansions of polynomials #

Main declarations #

The Taylor expansion of a polynomial f at r.

Equations
theorem Polynomial.taylor_apply {R : Type u_1} [Semiring R] (r : R) (f : Polynomial R) :
(taylor r) f = f.comp (X + C r)
@[simp]
theorem Polynomial.taylor_X {R : Type u_1} [Semiring R] (r : R) :
(taylor r) X = X + C r
@[simp]
theorem Polynomial.taylor_C {R : Type u_1} [Semiring R] (r x : R) :
(taylor r) (C x) = C x
theorem Polynomial.taylor_zero {R : Type u_1} [Semiring R] (f : Polynomial R) :
(taylor 0) f = f
@[simp]
theorem Polynomial.taylor_one {R : Type u_1} [Semiring R] (r : R) :
(taylor r) 1 = C 1
@[simp]
theorem Polynomial.taylor_monomial {R : Type u_1} [Semiring R] (r : R) (i : ) (k : R) :
(taylor r) ((monomial i) k) = C k * (X + C r) ^ i
theorem Polynomial.taylor_coeff {R : Type u_1} [Semiring R] (r : R) (f : Polynomial R) (n : ) :
((taylor r) f).coeff n = eval r ((hasseDeriv n) f)

The kth coefficient of Polynomial.taylor r f is (Polynomial.hasseDeriv k f).eval r.

@[simp]
theorem Polynomial.taylor_coeff_zero {R : Type u_1} [Semiring R] (r : R) (f : Polynomial R) :
((taylor r) f).coeff 0 = eval r f
@[simp]
theorem Polynomial.taylor_coeff_one {R : Type u_1} [Semiring R] (r : R) (f : Polynomial R) :
((taylor r) f).coeff 1 = eval r (derivative f)
@[simp]
theorem Polynomial.natDegree_taylor {R : Type u_1} [Semiring R] (p : Polynomial R) (r : R) :
@[simp]
theorem Polynomial.taylor_mul {R : Type u_2} [CommSemiring R] (r : R) (p q : Polynomial R) :
(taylor r) (p * q) = (taylor r) p * (taylor r) q
@[simp]
theorem Polynomial.taylorAlgHom_apply {R : Type u_2} [CommSemiring R] (r : R) (a : Polynomial R) :
(taylorAlgHom r) a = (taylor r) a
theorem Polynomial.taylor_taylor {R : Type u_2} [CommSemiring R] (f : Polynomial R) (r s : R) :
(taylor r) ((taylor s) f) = (taylor (r + s)) f
theorem Polynomial.taylor_eval {R : Type u_2} [CommSemiring R] (r : R) (f : Polynomial R) (s : R) :
eval s ((taylor r) f) = eval (s + r) f
theorem Polynomial.taylor_eval_sub {R : Type u_2} [CommRing R] (r : R) (f : Polynomial R) (s : R) :
eval (s - r) ((taylor r) f) = eval s f
theorem Polynomial.eq_zero_of_hasseDeriv_eq_zero {R : Type u_2} [CommRing R] (f : Polynomial R) (r : R) (h : ∀ (k : ), eval r ((hasseDeriv k) f) = 0) :
f = 0
theorem Polynomial.sum_taylor_eq {R : Type u_2} [CommRing R] (f : Polynomial R) (r : R) :
(((taylor r) f).sum fun (i : ) (a : R) => C a * (X - C r) ^ i) = f

Taylor's formula.

theorem Polynomial.eval_add_of_sq_eq_zero {A : Type u_2} [CommSemiring A] (p : Polynomial A) (x y : A) (hy : y ^ 2 = 0) :
eval (x + y) p = eval x p + eval x (derivative p) * y