Multivariate polynomials over a ring #
Many results about polynomials hold when the coefficient ring is a commutative semiring. Some stronger results can be derived when we assume this semiring is a ring.
This file does not define any new operations, but proves some of these stronger results.
Notation #
As in other polynomial files, we typically use the notation:
σ : Type*(indexing the variables)R : Type*[CommRing R](the coefficients)s : σ →₀ ℕ, a function fromσtoℕwhich is zero away from a finite set. This will give rise to a monomial inMvPolynomial σ Rwhich mathematicians might callX^s.a : Ri : σ, with corresponding monomialX i, often denotedX_iby mathematiciansp : MvPolynomial σ R
@[simp]
theorem
MvPolynomial.support_sub
{R : Type u}
(σ : Type u_1)
[CommRing R]
[DecidableEq σ]
(p q : MvPolynomial σ R)
:
@[simp]
theorem
MvPolynomial.degrees_sub_le
{R : Type u}
{σ : Type u_1}
[CommRing R]
[DecidableEq σ]
{p q : MvPolynomial σ R}
:
@[simp]
theorem
MvPolynomial.degreeOf_neg
{R : Type u}
{σ : Type u_1}
[CommRing R]
(i : σ)
(p : MvPolynomial σ R)
:
@[simp]
theorem
MvPolynomial.vars_sub_subset
{R : Type u}
{σ : Type u_1}
[CommRing R]
(p : MvPolynomial σ R)
{q : MvPolynomial σ R}
[DecidableEq σ]
:
@[simp]
theorem
MvPolynomial.vars_sub_of_disjoint
{R : Type u}
{σ : Type u_1}
[CommRing R]
(p : MvPolynomial σ R)
{q : MvPolynomial σ R}
[DecidableEq σ]
(hpq : Disjoint p.vars q.vars)
:
theorem
MvPolynomial.eval_sub
{R : Type u}
{σ : Type u_1}
[CommRing R]
(p : MvPolynomial σ R)
{q : MvPolynomial σ R}
(f : σ → R)
:
@[simp]
theorem
MvPolynomial.totalDegree_neg
{R : Type u}
{σ : Type u_1}
[CommRing R]
(a : MvPolynomial σ R)
:
theorem
MvPolynomial.totalDegree_sub
{R : Type u}
{σ : Type u_1}
[CommRing R]
(a b : MvPolynomial σ R)
:
theorem
MvPolynomial.totalDegree_sub_C_le
{R : Type u}
{σ : Type u_1}
[CommRing R]
(p : MvPolynomial σ R)
(r : R)
: