Ring-theoretic supplement of data.polynomial. #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
Main results #
mv_polynomial.is_domain: If a ring is an integral domain, then so is its polynomial ring over finitely many variables.polynomial.is_noetherian_ring: Hilbert basis theorem, that if a ring is noetherian then so is its polynomial ring.polynomial.wf_dvd_monoid: If an integral domain is awf_dvd_monoid, then so is its polynomial ring.polynomial.unique_factorization_monoid,mv_polynomial.unique_factorization_monoid: If an integral domain is aunique_factorization_monoid, then so is its polynomial ring (of any number of variables).
The R-submodule of R[X] consisting of polynomials of degree ≤ n.
Equations
- polynomial.degree_le R n = ⨅ (k : ℕ) (h : ↑k > n), linear_map.ker (polynomial.lcoeff R k)
The R-submodule of R[X] consisting of polynomials of degree < n.
Equations
- polynomial.degree_lt R n = ⨅ (k : ℕ) (h : k ≥ n), linear_map.ker (polynomial.lcoeff R k)
The first n coefficients on degree_lt n form a linear equivalence with fin n → R.
The finset of nonzero coefficients of a polynomial.
Given a polynomial, return the polynomial whose coefficients are in the ring closure of the original coefficients.
Equations
- p.restriction = p.support.sum (λ (i : ℕ), ⇑(polynomial.monomial i) ⟨p.coeff i, _⟩)
Given a polynomial p and a subring T that contains the coefficients of p,
return the corresponding polynomial whose coefficients are in T.
Equations
- p.to_subring T hp = p.support.sum (λ (i : ℕ), ⇑(polynomial.monomial i) ⟨p.coeff i, _⟩)
Given a polynomial whose coefficients are in some subring, return the corresponding polynomial whose coefficients are in the ambient ring.
Equations
- polynomial.of_subring T p = p.support.sum (λ (i : ℕ), ⇑(polynomial.monomial i) ↑(p.coeff i))
Transport an ideal of R[X] to an R-submodule of R[X].
Given an ideal I of R[X], make the R-submodule of I
consisting of polynomials of degree ≤ n.
Equations
- I.degree_le n = polynomial.degree_le R n ⊓ I.of_polynomial
Given an ideal I of R[X], make the ideal in R of
leading coefficients of polynomials in I with degree ≤ n.
Equations
- I.leading_coeff_nth n = submodule.map (polynomial.lcoeff R n) (I.degree_le ↑n)
Given an ideal I in R[X], make the ideal in R of the
leading coefficients in I.
Equations
- I.leading_coeff = ⨆ (n : ℕ), I.leading_coeff_nth n
If every coefficient of a polynomial is in an ideal I, then so is the polynomial itself
The push-forward of an ideal I of R to R[X] via inclusion
is exactly the set of polynomials whose coefficients are in I
If I is an ideal, and pᵢ is a finite family of polynomials each satisfying
∀ k, (pᵢ)ₖ ∈ Iⁿⁱ⁻ᵏ for some nᵢ, then p = ∏ pᵢ also satisfies ∀ k, pₖ ∈ Iⁿ⁻ᵏ with n = ∑ nᵢ.
R[X] is never a field for any ring R.
The only constant in a maximal ideal over a field is 0.
If P is a prime ideal of R, then P.R[x] is a prime ideal of R[x].
If P is a prime ideal of R, then P.R[x] is a prime ideal of R[x].
Hilbert basis theorem: a polynomial ring over a noetherian ring is a noetherian ring.
The multivariate polynomial ring in finitely many variables over a noetherian ring is itself a noetherian ring.
Auxiliary lemma:
Multivariate polynomials over an integral domain
with variables indexed by fin n form an integral domain.
This fact is proven inductively,
and then used to prove the general case without any finiteness hypotheses.
See mv_polynomial.no_zero_divisors for the general case.
Auxiliary definition:
Multivariate polynomials in finitely many variables over an integral domain form an integral domain.
This fact is proven by transport of structure from the mv_polynomial.no_zero_divisors_fin,
and then used to prove the general case without finiteness hypotheses.
See mv_polynomial.no_zero_divisors for the general case.
The multivariate polynomial ring over an integral domain is an integral domain.
If every coefficient of a polynomial is in an ideal I, then so is the polynomial itself,
multivariate version.
The push-forward of an ideal I of R to mv_polynomial σ R via inclusion
is exactly the set of polynomials whose coefficients are in I