FLINT3.7.0-dev

_fq_poly_mul_reorder, fq_poly_mul_reorder

Synopsis#include <flint/fq_poly.h>
void _fq_poly_mul_reorder(fq_struct * rop, const fq_struct * op1, slong len1, const fq_struct * op2, slong len2, const fq_ctx_t ctx)source
void fq_poly_mul_reorder(fq_poly_t rop, const fq_poly_t op1, const fq_poly_t op2, const fq_ctx_t ctx)source

Set rop to the product, computed by exchanging the roles of x and the generator y: the inputs are written as \sum_{j < d} y^j a_j(x) with a_j \in \mathbb{Z}[x], the d^2 products a_j b_k are computed with fast integer polynomial multiplication, and the result is reduced modulo the defining polynomial. This is efficient for small d and long polynomials. The underscore version requires len1, len2 \ge 1 and allows aliasing.

Cite this page

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