FLINT3.7.0-dev

_fmpz_poly_signature, fmpz_poly_signature

Synopsis#include <flint/fmpz_poly.h>
void _fmpz_poly_signature(slong * r1, slong * r2, const fmpz * poly, slong len)source
void fmpz_poly_signature(slong * r1, slong * r2, const fmpz_poly_t poly)source

Set (r_1, r_2) to the signature of the squarefree polynomial poly: it has r_1 real roots and r_2 pairs of complex conjugate roots. Uses a Sturm sequence, Algorithm 4.1.11 of [Coh1996]. The zero polynomial gives (0, 0); for a polynomial that is not squarefree the result is undefined and an exception may be raised.

References#

  • [Coh1996] Cohen, Henri : A course in computational algebraic number theory, Springer, 1996
Cite this page

The FLINT team, “_fmpz_poly_signature, fmpz_poly_signature (fmpz_poly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fmpz_poly/_fmpz_poly_signature.html (generated 2026-10-20).