Documentation

Mathlib.Analysis.Polynomial.Order

Eventual sign of polynomials #

This file proves that a polynomial has a fixed sign beyond its largest or smallest root.

Main statements #

TODO #

Generalize to real-closed fields.

theorem Polynomial.zero_lt_eval_of_roots_lt_of_leadingCoeff_nonneg {P : Polynomial ℝ} {x : ℝ} (hroots : ∀ (y : ℝ), P.IsRoot y → y < x) (hlc : 0 ≤ P.leadingCoeff) :
0 < eval x P
theorem Polynomial.zero_le_eval_of_roots_le_of_leadingCoeff_nonneg {P : Polynomial ℝ} {x : ℝ} (hroots : ∀ (y : ℝ), P.IsRoot y → y ≤ x) (hlc : 0 ≤ P.leadingCoeff) :
0 ≤ eval x P
theorem Polynomial.eval_lt_zero_of_roots_lt_of_leadingCoeff_nonpos {P : Polynomial ℝ} {x : ℝ} (hroots : ∀ (y : ℝ), P.IsRoot y → y < x) (hlc : P.leadingCoeff ≤ 0) :
eval x P < 0
theorem Polynomial.eval_le_zero_of_roots_le_of_leadingCoeff_nonpos {P : Polynomial ℝ} {x : ℝ} (hroots : ∀ (y : ℝ), P.IsRoot y → y ≤ x) (hlc : P.leadingCoeff ≤ 0) :
eval x P ≤ 0
theorem Polynomial.zero_lt_negOnePow_mul_eval_of_lt_roots_of_leadingCoeff_nonneg {P : Polynomial ℝ} {x : ℝ} (hroots : ∀ (y : ℝ), P.IsRoot y → x < y) (hlc : 0 ≤ P.leadingCoeff) :
0 < ↑↑(↑P.natDegree).negOnePow * eval x P
theorem Polynomial.zero_le_negOnePow_mul_eval_of_le_roots_of_leadingCoeff_nonneg {P : Polynomial ℝ} {x : ℝ} (hroots : ∀ (y : ℝ), P.IsRoot y → x ≤ y) (hlc : 0 ≤ P.leadingCoeff) :
0 ≤ ↑↑(↑P.natDegree).negOnePow * eval x P
theorem Polynomial.negOnePow_mul_eval_lt_zero_of_lt_roots_of_leadingCoeff_nonpos {P : Polynomial ℝ} {x : ℝ} (hroots : ∀ (y : ℝ), P.IsRoot y → x < y) (hlc : P.leadingCoeff ≤ 0) :
↑↑(↑P.natDegree).negOnePow * eval x P < 0
theorem Polynomial.negOnePow_mul_eval_le_zero_of_le_roots_of_leadingCoeff_nonpos {P : Polynomial ℝ} {x : ℝ} (hroots : ∀ (y : ℝ), P.IsRoot y → x ≤ y) (hlc : P.leadingCoeff ≤ 0) :
↑↑(↑P.natDegree).negOnePow * eval x P ≤ 0