Degree and support of univariate polynomials #
Main results #
- Polynomial.as_sum_support: write- p : R[X]as a sum over its support
- Polynomial.as_sum_range: write- p : R[X]as a sum over- {0, ..., natDegree p}
- Polynomial.natDegree_mem_support_of_nonzero:- natDegree p ∈ support pif- p ≠ 0
theorem
Polynomial.supp_subset_range
{R : Type u}
{m : ℕ}
[Semiring R]
{p : Polynomial R}
(h : p.natDegree < m)
 :
theorem
Polynomial.sum_over_range'
{R : Type u}
{S : Type v}
[Semiring R]
[AddCommMonoid S]
(p : Polynomial R)
{f : ℕ → R → S}
(h : ∀ (n : ℕ), f n 0 = 0)
(n : ℕ)
(hn : p.natDegree < n)
 :
We can reexpress a sum over p.support as a sum over range n,
for any n satisfying p.natDegree < n.
theorem
Polynomial.sum_over_range
{R : Type u}
{S : Type v}
[Semiring R]
[AddCommMonoid S]
(p : Polynomial R)
{f : ℕ → R → S}
(h : ∀ (n : ℕ), f n 0 = 0)
 :
We can reexpress a sum over p.support as a sum over range (p.natDegree + 1).
theorem
Polynomial.as_sum_range'
{R : Type u}
[Semiring R]
(p : Polynomial R)
(n : ℕ)
(hn : p.natDegree < n)
 :
theorem
Polynomial.as_sum_range_C_mul_X_pow'
{R : Type u}
[Semiring R]
(p : Polynomial R)
{n : ℕ}
(hn : p.natDegree < n)
 :
theorem
Polynomial.natDegree_mem_support_of_nonzero
{R : Type u}
[Semiring R]
{p : Polynomial R}
(H : p ≠ 0)
 :
theorem
Polynomial.natDegree_eq_support_max'
{R : Type u}
[Semiring R]
{p : Polynomial R}
(h : p ≠ 0)
 :