Documentation

Mathlib.RingTheory.MvPolynomial.Basic

Multivariate polynomials over commutative rings #

This file contains basic facts about multivariate polynomials over commutative rings, for example that the monomials form a basis.

Main definitions #

Main statements #

TODO #

Generalise to noncommutative (semi)rings

instance MvPolynomial.instCharP (σ : Type u) (R : Type v) [CommSemiring R] (p : ) [CharP R p] :
theorem MvPolynomial.mapRange_eq_map (σ : Type u) {R : Type u_1} {S : Type u_2} [CommSemiring R] [CommSemiring S] (p : MvPolynomial σ R) (f : R →+* S) :
Finsupp.mapRange f p = (map f) p
def MvPolynomial.restrictSupport {σ : Type u} (R : Type v) [CommSemiring R] (s : Set (σ →₀ )) :

The submodule of polynomials that are sum of monomials in the set s.

Equations
    Instances For
      def MvPolynomial.basisRestrictSupport {σ : Type u} (R : Type v) [CommSemiring R] (s : Set (σ →₀ )) :
      Module.Basis (↑s) R (restrictSupport R s)

      restrictSupport R s has a canonical R-basis indexed by s.

      Equations
        Instances For

          The submodule of polynomials of total degree less than or equal to m.

          Equations
            Instances For

              The submodule of polynomials such that the degree with respect to each individual variable is less than or equal to m.

              Equations
                Instances For
                  theorem MvPolynomial.mem_restrictDegree (σ : Type u) {R : Type v} [CommSemiring R] (p : MvPolynomial σ R) (n : ) :
                  p restrictDegree σ R n sp.support, ∀ (i : σ), s i n
                  theorem MvPolynomial.mem_restrictDegree_iff_sup (σ : Type u) {R : Type v} [CommSemiring R] [DecidableEq σ] (p : MvPolynomial σ R) (n : ) :
                  p restrictDegree σ R n ∀ (i : σ), Multiset.count i p.degrees n

                  The monomials form a basis on MvPolynomial σ R.

                  Equations
                    Instances For
                      @[simp]
                      theorem MvPolynomial.coe_basisMonomials (σ : Type u) (R : Type v) [CommSemiring R] :
                      (basisMonomials σ R) = fun (s : σ →₀ ) => (monomial s) 1
                      instance MvPolynomial.instFree (σ : Type u) (R : Type v) [CommSemiring R] :

                      The R-module MvPolynomial σ R is free.