FLINT3.7.0-dev

_padic_poly_evaluate_padic, padic_poly_evaluate_padic

Synopsis#include <flint/padic_poly.h>
void _padic_poly_evaluate_padic(fmpz_t u, slong * v, slong N, const fmpz * poly, slong val, slong len, const fmpz_t a, slong b, const padic_ctx_t ctx)source
void padic_poly_evaluate_padic(padic_t y, const padic_poly_t poly, const padic_t a, const padic_ctx_t ctx)source

Set y = p^v u to the value of poly at a = p^b a', reduced modulo p^N (the precision of y). padic_poly_evaluate_padic allows y to be the same object as a.

For b \ge 0 the integer polynomial is evaluated at p^b a' by Horner's rule modulo p^{N - val}. For b < 0 the polynomial p^{-nb} f(x) with n = len - 1 is integral at x = a' after the substitution, so p^{-nb} f(p^b a') is evaluated modulo p^{N - val - nb} and the valuation adjusted by nb. If poly and a are only known to precision N and b < 0, the value is only known to precision N + nb; this is not taken into account.

Cite this page

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