Documentation

Mathlib.RingTheory.MvPolynomial.Ideal

Lemmas about ideals of MvPolynomial #

Notably this contains results about monomial ideals.

Main results #

theorem MvPolynomial.mem_ideal_span_monomial_image {σ : Type u_1} {R : Type u_2} [CommSemiring R] {x : MvPolynomial σ R} {s : Set (σ →₀ )} :
x Ideal.span ((fun (s : σ →₀ ) => (monomial s) 1) '' s) xix.support, sis, si xi

x is in a monomial ideal generated by s iff every element of its support dominates one of the generators. Note that si ≤ xi is analogous to saying that the monomial corresponding to si divides the monomial corresponding to xi.

theorem MvPolynomial.mem_ideal_span_monomial_image_iff_dvd {σ : Type u_1} {R : Type u_2} [CommSemiring R] {x : MvPolynomial σ R} {s : Set (σ →₀ )} :
x Ideal.span ((fun (s : σ →₀ ) => (monomial s) 1) '' s) xix.support, sis, (monomial si) 1 (monomial xi) (coeff xi x)
theorem MvPolynomial.mem_ideal_span_X_image {σ : Type u_1} {R : Type u_2} [CommSemiring R] {x : MvPolynomial σ R} {s : Set σ} :
x Ideal.span (X '' s) mx.support, is, m i 0

x is in a monomial ideal generated by variables X iff every element of its support has a component in s.

def MvPolynomial.idealOfVars (σ : Type u_1) (R : Type u_2) [CommSemiring R] :

The ideal spanned by all variables.

Equations
Instances For
    theorem MvPolynomial.pow_idealOfVars_eq_span {σ : Type u_1} {R : Type u_2} [CommSemiring R] (n : ) :
    idealOfVars σ R ^ n = Ideal.span ((fun (x : σ →₀ ) => (monomial x) 1) '' (Finsupp.degree ⁻¹' {n}))

    The nth power of idealOfVars is spanned by all monic monomials of total degree n.

    theorem MvPolynomial.mem_pow_idealOfVars_iff {σ : Type u_1} {R : Type u_2} [CommSemiring R] (n : ) (p : MvPolynomial σ R) :
    p idealOfVars σ R ^ n xp.support, n Finsupp.degree x
    theorem MvPolynomial.mem_pow_idealOfVars_iff' {σ : Type u_1} {R : Type u_2} [CommSemiring R] (n : ) (p : MvPolynomial σ R) :
    p idealOfVars σ R ^ n ∀ (x : σ →₀ ), Finsupp.degree x < ncoeff x p = 0
    theorem MvPolynomial.monomial_mem_pow_idealOfVars_iff {σ : Type u_1} {R : Type u_2} [CommSemiring R] (n : ) (x : σ →₀ ) {r : R} (h : r 0) :
    theorem MvPolynomial.C_mem_pow_idealOfVars_iff {σ : Type u_1} {R : Type u_2} [CommSemiring R] (n : ) (r : R) :
    C r idealOfVars σ R ^ n r = 0 n = 0
    theorem MonomialOrder.span_leadingTerm_eq_span_monomial {σ : Type u_1} {R : Type u_2} [CommSemiring R] {m : MonomialOrder σ} {B : Set (MvPolynomial σ R)} (hB : pB, IsUnit (m.leadingCoeff p)) :
    theorem MonomialOrder.span_leadingTerm_eq_span_monomial₀ {σ : Type u_1} {R : Type u_2} [CommSemiring R] {m : MonomialOrder σ} {B : Set (MvPolynomial σ R)} (hB : pB, IsUnit (m.leadingCoeff p) p = 0) :
    Ideal.span (m.leadingTerm '' B) = Ideal.span ((fun (p : MvPolynomial σ R) => (MvPolynomial.monomial (m.degree p)) 1) '' (B \ {0}))
    theorem MonomialOrder.span_leadingTerm_eq_span_monomial' {σ : Type u_1} {m : MonomialOrder σ} {k : Type u_3} [Field k] {B : Set (MvPolynomial σ k)} :
    Ideal.span (m.leadingTerm '' B) = Ideal.span ((fun (p : MvPolynomial σ k) => (MvPolynomial.monomial (m.degree p)) 1) '' (B \ {0}))
    theorem MonomialOrder.sPolynomial_mem_sup_ideal {σ : Type u_1} {m : MonomialOrder σ} {R : Type u_3} [CommRing R] {I J : Ideal (MvPolynomial σ R)} {p q : MvPolynomial σ R} (hp : p I) (hq : q J) :
    m.sPolynomial p q IJ
    theorem MonomialOrder.sPolynomial_mem_ideal {σ : Type u_1} {m : MonomialOrder σ} {R : Type u_3} [CommRing R] {I : Ideal (MvPolynomial σ R)} {p q : MvPolynomial σ R} (hp : p I) (hq : q I) :