fq_nmod_mpoly_compose_fq_nmod_mpoly, fq_nmod_mpoly_compose_fq_nmod_mpoly_horner, fq_nmod_mpoly_compose_fq_nmod_mpoly_geobucket
Synopsis
#include <flint/fq_nmod_mpoly.h>int fq_nmod_mpoly_compose_fq_nmod_mpoly(fq_nmod_mpoly_t A, const fq_nmod_mpoly_t B, fq_nmod_mpoly_struct * const * C, const fq_nmod_mpoly_ctx_t ctxB, const fq_nmod_mpoly_ctx_t ctxAC)sourceint fq_nmod_mpoly_compose_fq_nmod_mpoly_horner(fq_nmod_mpoly_t A, const fq_nmod_mpoly_t B, fq_nmod_mpoly_struct * const * C, const fq_nmod_mpoly_ctx_t ctxB, const fq_nmod_mpoly_ctx_t ctxAC)sourceint fq_nmod_mpoly_compose_fq_nmod_mpoly_geobucket(fq_nmod_mpoly_t A, const fq_nmod_mpoly_t B, fq_nmod_mpoly_struct * const * C, const fq_nmod_mpoly_ctx_t ctxB, const fq_nmod_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 uses a matrix transformation of the exponents when every C[i] is zero or a monomial with coefficient 1, and otherwise a Horner scheme or a geobucket sum.
Cite this page
The FLINT team, “fq_nmod_mpoly_compose_fq_nmod_mpoly, fq_nmod_mpoly_compose_fq_nmod_mpoly_horner, fq_nmod_mpoly_compose_fq_nmod_mpoly_geobucket (fq_nmod_mpoly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fq_nmod_mpoly/fq_nmod_mpoly_compose_fq_nmod_mpoly.html (generated 2026-10-20).
@misc{flint-doc-fq-nmod-mpoly-fq-nmod-mpoly-compose-fq-nmod-mpoly,
author = {{The FLINT team}},
title = {{fq\_nmod\_mpoly\_compose\_fq\_nmod\_mpoly, fq\_nmod\_mpoly\_compose\_fq\_nmod\_mpoly\_horner, fq\_nmod\_mpoly\_compose\_fq\_nmod\_mpoly\_geobucket (fq\_nmod\_mpoly.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/fq_nmod_mpoly/fq_nmod_mpoly_compose_fq_nmod_mpoly.html},
note = {Generated 2026-10-20}
}