Square-free polynomial coefficients #
The discarded monomials: those divisible by the square of a tag.
Equations
- LatinQuarter.repeatedTagIdeal κ = Ideal.span ((fun (d : κ →₀ ℕ) => (MvPolynomial.monomial d) 1) '' Set.range fun (j : κ) => Finsupp.single j 2)
Instances For
theorem
LatinQuarter.squarefree_coeff_zero_of_mem
{κ : Type u_1}
{p : MvPolynomial κ (ZMod 2)}
(hp : p ∈ repeatedTagIdeal κ)
{d : κ →₀ ℕ}
(hd : ∀ (j : κ), d j ≤ 1)
:
Discarding repeated tags cannot affect any square-free coefficient.
@[reducible, inline]
Polynomials modulo two, with the square of every tag set to zero.
Equations
- LatinQuarter.TagRing κ = (MvPolynomial κ (ZMod 2) ⧸ LatinQuarter.repeatedTagIdeal κ)
Instances For
The image of a polynomial variable in the square-zero bookkeeping quotient.
Equations
Instances For
theorem
LatinQuarter.squarefree_coeff_zero_of_quotient_zero
{κ : Type u_1}
{p : MvPolynomial κ (ZMod 2)}
(hp : (Ideal.Quotient.mk (repeatedTagIdeal κ)) p = 0)
{d : κ →₀ ℕ}
(hd : ∀ (j : κ), d j ≤ 1)
:
A zero polynomial in the bookkeeping ring has zero square-free coefficients in the original polynomial ring.
theorem
LatinQuarter.coeff_prod_add_constants
{ι : Type u_1}
{κ : Type u_2}
[Fintype ι]
(f : ι → κ)
(a : ι → ZMod 2)
(d : κ →₀ ℕ)
(hd : ∑ j ∈ d.support, d j = Fintype.card ι)
:
(∏ i : ι, (MvPolynomial.X (f i) + MvPolynomial.C (a i))).coeff d = (∏ i : ι, MvPolynomial.X (f i)).coeff d
Adding constants to m individual tags does not change a coefficient
of total degree m. This also allows zero constants.
The exponent vector for the product of all tags, once each.
Equations
- LatinQuarter.allTagsExponent κ = ∑ j : κ, Finsupp.single j 1
Instances For
@[simp]
@[simp]