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) ↔ βˆ€ xi ∈ x.support, βˆƒ si ∈ s, 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) ↔ βˆ€ xi ∈ x.support, βˆƒ si ∈ s, (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) ↔ βˆ€ m ∈ x.support, βˆƒ i ∈ s, 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 ↔ βˆ€ x ∈ p.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 < n β†’ coeff x p = 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 : βˆ€ p ∈ B, IsUnit (m.leadingCoeff p)) :
      Ideal.span (m.leadingTerm '' B) = Ideal.span ((fun (p : MvPolynomial Οƒ R) => (MvPolynomial.monomial (m.degree p)) 1) '' B)
      theorem MonomialOrder.span_leadingTerm_eq_span_monomialβ‚€ {Οƒ : Type u_1} {R : Type u_2} [CommSemiring R] {m : MonomialOrder Οƒ} {B : Set (MvPolynomial Οƒ R)} (hB : βˆ€ p ∈ B, 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.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 ∈ I βŠ” J
      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) :