An annihilator from low pattern complexity #
The finite-range form of Lemma 3.2 (lem:ann-exists) is proved by affine
dependence among the occurring patterns. exists_affine_annihilator gives a nonzero filter
with constant output, and exists_nonzero_annihilator multiplies it by a nonzero difference.
The windowPolynomial linear map identifies finite coefficient vectors with
Laurent polynomials supported in the window. Its injectivity, support, action,
and reconstruction lemmas also supply the finite-dimensional pairing used in
Theorem 2.2 (thm:descent).
Auxiliary construction for Lemma 3.2 (lem:ann-exists): identify a coefficient vector on a
finite window with its supported Laurent polynomial.
Equations
- Nivat.Algebra.windowPolynomial D a = ∑ z : ↥D, AddMonoidAlgebra.single (↑z) (a z)
Instances For
Auxiliary construction for Lemma 3.2 (lem:ann-exists): the supported polynomial recovers each
input coefficient on the window.
Auxiliary construction for Lemma 3.2 (lem:ann-exists): the coefficient-vector identification
is injective.
Auxiliary construction for Lemma 3.2 (lem:ann-exists): the polynomial associated with a window
vector is supported inside that window.
Auxiliary construction for Lemma 3.2 (lem:ann-exists): the associated Laurent action is the
coefficient pairing with a translated restriction.
Auxiliary construction for Lemma 3.2 (lem:ann-exists): the supported-polynomial identification
as a rational linear map.
Equations
- Nivat.Algebra.windowPolynomialLinear D = { toFun := Nivat.Algebra.windowPolynomial D, map_add' := ⋯, map_smul' := ⋯ }
Instances For
Auxiliary construction for Lemma 3.2 (lem:ann-exists): affine dependence among the occurring
patterns gives a nonzero supported filter with constant output.
Lemma 3.2 (lem:ann-exists): low complexity gives a nonzero Laurent annihilator. A nonzero
difference polynomial annihilates the constant output of the affine relation.