FLINT3.7.0-dev

_gr_poly_preinv_compose_mod, gr_poly_preinv_compose_mod, _gr_poly_preinv_compose_mod_horner, _gr_poly_preinv_compose_mod_brent_kung, _gr_poly_preinv_precompute_matrix, gr_poly_preinv_precompute_matrix, _gr_poly_preinv_compose_mod_brent_kung_precomp, gr_poly_preinv_compose_mod_brent_kung_precomp, _gr_poly_preinv_compose_mod_brent_kung_vec, gr_poly_preinv_compose_mod_brent_kung_vec, _gr_poly_preinv_mod_matrix_rows_evaluate

Synopsis#include <flint/gr_poly.h>
int _gr_poly_preinv_compose_mod(gr_ptr res, gr_srcptr poly1, slong len1, gr_srcptr poly2, const gr_poly_preinv_t P, gr_ctx_t ctx)source
int gr_poly_preinv_compose_mod(gr_poly_t res, const gr_poly_t poly1, const gr_poly_t poly2, const gr_poly_preinv_t P, gr_ctx_t ctx)source
int _gr_poly_preinv_compose_mod_horner(gr_ptr res, gr_srcptr f, slong lenf, gr_srcptr g, const gr_poly_preinv_t P, gr_ctx_t ctx)source
int _gr_poly_preinv_compose_mod_brent_kung(gr_ptr res, gr_srcptr poly1, slong len1, gr_srcptr poly2, const gr_poly_preinv_t P, gr_ctx_t ctx)source
int _gr_poly_preinv_precompute_matrix(gr_mat_t A, gr_srcptr poly1, const gr_poly_preinv_t P, gr_ctx_t ctx)source
int gr_poly_preinv_precompute_matrix(gr_mat_t A, const gr_poly_t poly1, const gr_poly_preinv_t P, gr_ctx_t ctx)source
int _gr_poly_preinv_compose_mod_brent_kung_precomp(gr_ptr res, gr_srcptr poly1, slong len1, const gr_mat_t A, const gr_poly_preinv_t P, gr_ctx_t ctx)source
int gr_poly_preinv_compose_mod_brent_kung_precomp(gr_poly_t res, const gr_poly_t poly1, const gr_mat_t A, const gr_poly_preinv_t P, gr_ctx_t ctx)source
int _gr_poly_preinv_compose_mod_brent_kung_vec(gr_poly_struct * res, const gr_poly_struct * polys, slong lenpolys, slong l, gr_srcptr g, slong glen, const gr_poly_preinv_t P, gr_ctx_t ctx)source
int gr_poly_preinv_compose_mod_brent_kung_vec(gr_poly_struct * res, const gr_poly_struct * polys, slong len1, slong n, const gr_poly_t g, const gr_poly_preinv_t P, gr_ctx_t ctx)source
int _gr_poly_preinv_mod_matrix_rows_evaluate(gr_ptr res, const gr_mat_t A, gr_srcptr h, slong n, const gr_poly_preinv_t P, gr_ctx_t ctx)source

Modular composition f(g) \bmod h with the precomputed modulus h. The algorithms and conventions are those of the corresponding gr_poly_compose_mod functions and of gr_poly_precompute_matrix below, which are wrappers of these.

Cite this page

The FLINT team, “_gr_poly_preinv_compose_mod, gr_poly_preinv_compose_mod, _gr_poly_preinv_compose_mod_horner, _gr_poly_preinv_compose_mod_brent_kung, _gr_poly_preinv_precompute_matrix, gr_poly_preinv_precompute_matrix, _gr_poly_preinv_compose_mod_brent_kung_precomp, gr_poly_preinv_compose_mod_brent_kung_precomp, _gr_poly_preinv_compose_mod_brent_kung_vec, gr_poly_preinv_compose_mod_brent_kung_vec, _gr_poly_preinv_mod_matrix_rows_evaluate (gr_poly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/gr_poly/_gr_poly_preinv_compose_mod.html (generated 2026-10-20).