_arb_fmpz_poly_evaluate_arb_horner, arb_fmpz_poly_evaluate_arb_horner, _arb_fmpz_poly_evaluate_arb_rectangular, arb_fmpz_poly_evaluate_arb_rectangular, _arb_fmpz_poly_evaluate_arb, arb_fmpz_poly_evaluate_arb
#include <flint/arb_fmpz_poly.h>void _arb_fmpz_poly_evaluate_arb_horner(arb_t res, const fmpz * poly, slong len, const arb_t x, slong prec)sourcevoid arb_fmpz_poly_evaluate_arb_horner(arb_t res, const fmpz_poly_t poly, const arb_t x, slong prec)sourcevoid _arb_fmpz_poly_evaluate_arb_rectangular(arb_t res, const fmpz * poly, slong len, const arb_t x, slong prec)sourcevoid arb_fmpz_poly_evaluate_arb_rectangular(arb_t res, const fmpz_poly_t poly, const arb_t x, slong prec)sourcevoid _arb_fmpz_poly_evaluate_arb(arb_t res, const fmpz * poly, slong len, const arb_t x, slong prec)sourcevoid arb_fmpz_poly_evaluate_arb(arb_t res, const fmpz_poly_t poly, const arb_t x, slong prec)sourceSet res to the value of the integer polynomial (given as a polynomial or as len coefficients) at the real ball x, using Horner's rule, rectangular splitting [PS1973] (which multiplies the integer coefficients by precomputed powers of x in dot products), or an automatic choice.
The default uses rectangular splitting for \mathit{len} \ge \max(6, 5 + 2500 / (\max(\mathit{prec}, 64) + 64)), unless \mathit{prec} > 1024 and the coefficients have more than \mathit{prec}/2 bits, and Horner's rule otherwise.
References#
- [PS1973] M. S. Paterson and L. J. Stockmeyer, "On the number of nonscalar multiplications necessary to evaluate polynomials", SIAM J. Comput (1973)
The FLINT team, “_arb_fmpz_poly_evaluate_arb_horner, arb_fmpz_poly_evaluate_arb_horner, _arb_fmpz_poly_evaluate_arb_rectangular, arb_fmpz_poly_evaluate_arb_rectangular, _arb_fmpz_poly_evaluate_arb, arb_fmpz_poly_evaluate_arb (arb_fmpz_poly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/arb_fmpz_poly/_arb_fmpz_poly_evaluate_arb_horner.html (generated 2026-10-20).
@misc{flint-doc-arb-fmpz-poly-arb-fmpz-poly-evaluate-arb-horner,
author = {{The FLINT team}},
title = {{\_arb\_fmpz\_poly\_evaluate\_arb\_horner, arb\_fmpz\_poly\_evaluate\_arb\_horner, \_arb\_fmpz\_poly\_evaluate\_arb\_rectangular, arb\_fmpz\_poly\_evaluate\_arb\_rectangular, \_arb\_fmpz\_poly\_evaluate\_arb, arb\_fmpz\_poly\_evaluate\_arb (arb\_fmpz\_poly.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/arb_fmpz_poly/_arb_fmpz_poly_evaluate_arb_horner.html},
note = {Generated 2026-10-20}
}