FLINT3.7.0-dev

_fmpz_mpoly_eval_rest_to_poly, _fmpz_mpoly_evaluate_rest_fmpz

Synopsis#include <flint/fmpz_mpoly_factor.h>
void _fmpz_mpoly_eval_rest_to_poly(fmpz_poly_t E, const fmpz_mpoly_t A, const fmpz * alphas, const fmpz_mpoly_ctx_t ctx)source
int _fmpz_mpoly_evaluate_rest_fmpz(fmpz * E, slong * starts, slong * ends, slong * stops, ulong * es, const fmpz * Acoeffs, const ulong * Aexps, slong Alen, slong var, const fmpz * alphas, const slong * offsets, const slong * shifts, slong N, ulong mask, slong nvars)source

The first sets E = A(x_0, \alpha_0, \ldots, \alpha_{n-2}) for A in a lex context with single-word exponents. The second is its kernel: for a block of Alen terms of a lex polynomial whose exponents agree in the variables before var, it evaluates the variables from var on at alphas (indexed from var) by a recursive Horner scheme and puts the value in E[0]; starts, ends, stops, es and the further entries of E are work arrays of length nvars, and offsets and shifts locate the exponent fields.

Cite this page

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