FLINT3.7.0-dev

_fq_nmod_poly_precompute_matrix, fq_nmod_poly_precompute_matrix

Synopsis#include <flint/fq_nmod_poly.h>
void _fq_nmod_poly_precompute_matrix(fq_nmod_mat_t A, const fq_nmod_struct * poly1, const fq_nmod_struct * poly2, slong len2, const fq_nmod_struct * poly2inv, slong len2inv, const fq_nmod_ctx_t ctx)
void fq_nmod_poly_precompute_matrix(fq_nmod_mat_t A, const fq_nmod_poly_t poly1, const fq_nmod_poly_t poly2, const fq_nmod_poly_t poly2inv, const fq_nmod_ctx_t ctx)

Set the rows of the matrix A to the coefficients of the powers g^i \bmod h, 0 \le i < m, for g = poly1 and h = poly2, as needed by fq_nmod_poly_compose_mod_brent_kung_precomp_preinv. A must have exactly m = \lfloor \sqrt{\deg h} \rfloor + 1 rows and \deg h columns (otherwise fq_nmod_poly_precompute_matrix throws FLINT_ERROR), and poly2inv must be the inverse of the reversal of h. In the underscore version g must be reduced and zero-padded to length len2 - 1.

Generated from the same template as _fq_poly_precompute_matrix, whose documentation has the details.

Cite this page

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