Sturm sequences of positive multiples and generalized Sturm sequences #
Candidates for Mathlib.Algebra.Polynomial.Sturm.Sequence: the Sturm sequence commutes with a map
of fields (Polynomial.sturmSeq_map); over an ordered field, the Sturm sequences of positive
multiples are entrywise positive multiples (Polynomial.forall₂_posAssoc_sturmSeq), and a list of
nonzero polynomials, each from the third on a positive multiple of the negated remainder of the
two before and the last a unit, is entrywise a list of positive multiples of the entries of the
Sturm sequence of its first two (Polynomial.forall₂_posAssoc_sturmSeq_of_getElem): a generalized
Sturm sequence, such as the remainder chain that integer arithmetic computes.
Main definitions #
Polynomial.PosAssoc: one polynomial a positive constant times another.
Main statements #
Polynomial.sturmSeq_map: the Sturm sequence of the images under a map of fields.Polynomial.forall₂_posAssoc_sturmSeq: the Sturm sequences of positive multiples.Polynomial.forall₂_posAssoc_sturmSeq_of_getElem: a generalized Sturm sequence.
The Sturm sequence commutes with a map of fields.
q is a positive constant times p.
Instances For
The Sturm sequences of positive multiples are entrywise positive multiples, of the same length.
Two lists of positive multiples of the entries of a third are entrywise positive multiples of each other.
A list [a, b] of nonzero polynomials with b a unit is, entrywise, the Sturm sequence of
a and b.
A list b :: l of positive multiples of the entries of the Sturm sequence of b and a positive
multiple of -a % b, preceded by a ≠ 0, is entrywise the Sturm sequence of a and b.
A list s₀, s₁, …, s_m of nonzero polynomials whose last entry is a unit and in which each
s_(k+2) is a positive multiple of -s_k % s_(k+1) is, entrywise, a list of positive multiples of
the entries of sturmSeq s₀ s₁: a generalized (scaled) Sturm sequence.