fmpz_mod_mpoly_compose_fmpz_mod_mpoly, fmpz_mod_mpoly_compose_fmpz_mod_mpoly_horner, fmpz_mod_mpoly_compose_fmpz_mod_mpoly_geobucket
Synopsis
#include <flint/fmpz_mod_mpoly.h>int fmpz_mod_mpoly_compose_fmpz_mod_mpoly(fmpz_mod_mpoly_t A, const fmpz_mod_mpoly_t B, fmpz_mod_mpoly_struct * const * C, const fmpz_mod_mpoly_ctx_t ctxB, const fmpz_mod_mpoly_ctx_t ctxAC)sourceint fmpz_mod_mpoly_compose_fmpz_mod_mpoly_horner(fmpz_mod_mpoly_t A, const fmpz_mod_mpoly_t B, fmpz_mod_mpoly_struct * const * C, const fmpz_mod_mpoly_ctx_t ctxB, const fmpz_mod_mpoly_ctx_t ctxAC)sourceint fmpz_mod_mpoly_compose_fmpz_mod_mpoly_geobucket(fmpz_mod_mpoly_t A, const fmpz_mod_mpoly_t B, fmpz_mod_mpoly_struct * const * C, const fmpz_mod_mpoly_ctx_t ctxB, const fmpz_mod_mpoly_ctx_t ctxAC)sourceSet A to B evaluated at the polynomials C[i] of the context ctxAC, one per variable of ctxB. A must not alias B or any C[i]. Return 1 for success and 0 if the computation would be too large. The main function transforms exponents by a matrix when every C[i] is zero or a monomial with coefficient 1, and otherwise uses a Horner scheme or a geobucket sum.
Cite this page
The FLINT team, “fmpz_mod_mpoly_compose_fmpz_mod_mpoly, fmpz_mod_mpoly_compose_fmpz_mod_mpoly_horner, fmpz_mod_mpoly_compose_fmpz_mod_mpoly_geobucket (fmpz_mod_mpoly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fmpz_mod_mpoly/fmpz_mod_mpoly_compose_fmpz_mod_mpoly.html (generated 2026-10-20).
@misc{flint-doc-fmpz-mod-mpoly-fmpz-mod-mpoly-compose-fmpz-mod-mpoly,
author = {{The FLINT team}},
title = {{fmpz\_mod\_mpoly\_compose\_fmpz\_mod\_mpoly, fmpz\_mod\_mpoly\_compose\_fmpz\_mod\_mpoly\_horner, fmpz\_mod\_mpoly\_compose\_fmpz\_mod\_mpoly\_geobucket (fmpz\_mod\_mpoly.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/fmpz_mod_mpoly/fmpz_mod_mpoly_compose_fmpz_mod_mpoly.html},
note = {Generated 2026-10-20}
}