RealZeroPackage Pol¶
realzero.spad line 1 [edit on github]
This package provides functions for finding the real zeros of univariate polynomials over the integers to arbitrary user-specified precision. The results are returned as a list of isolating intervals which are expressed as records with “left” and “right” rational number components.
- midpoint: Record(left: Fraction Integer, right: Fraction Integer) -> Fraction Integer
midpoint(int)
returns the midpoint of the intervalint
.
- midpoints: List Record(left: Fraction Integer, right: Fraction Integer) -> List Fraction Integer
midpoints(isolist)
returns the list of midpoints for the list of intervalsisolist
.
- realZeros: (Pol, Fraction Integer) -> List Record(left: Fraction Integer, right: Fraction Integer)
realZeros(pol, eps)
returns a list of intervals of length less than the rational number eps for all the real roots of the polynomialpol
.
- realZeros: (Pol, Record(left: Fraction Integer, right: Fraction Integer)) -> List Record(left: Fraction Integer, right: Fraction Integer)
realZeros(pol, range)
returns a list of isolating intervals for all the real zeros of the univariate polynomialpol
which lie in the interval expressed by the record range.
- realZeros: (Pol, Record(left: Fraction Integer, right: Fraction Integer), Fraction Integer) -> List Record(left: Fraction Integer, right: Fraction Integer)
realZeros(pol, int, eps)
returns a list of intervals of length less than the rational number eps for all the real roots of the polynomialpol
which lie in the interval expressed by the recordint
.
- realZeros: Pol -> List Record(left: Fraction Integer, right: Fraction Integer)
realZeros(pol)
returns a list of isolating intervals for all the real zeros of the univariate polynomialpol
.
- refine: (Pol, Record(left: Fraction Integer, right: Fraction Integer), Fraction Integer) -> Record(left: Fraction Integer, right: Fraction Integer)
refine(pol, int, eps)
refines the intervalint
containing exactly one root of the univariate polynomialpol
to size less than the rational number eps.
- refine: (Pol, Record(left: Fraction Integer, right: Fraction Integer), Record(left: Fraction Integer, right: Fraction Integer)) -> Union(Record(left: Fraction Integer, right: Fraction Integer), failed)
refine(pol, int, range)
takes a univariate polynomialpol
and and isolating intervalint
containing exactly one real root ofpol
; the operation returns an isolating interval which is contained within range, or “failed” if no such isolating interval exists.