FLINT3.7.0-dev

fmpz_poly_mat_mul, fmpz_poly_mat_mul_classical, fmpz_poly_mat_mul_KS

Synopsis#include <flint/fmpz_poly_mat.h>
void fmpz_poly_mat_mul(fmpz_poly_mat_t C, const fmpz_poly_mat_t A, const fmpz_poly_mat_t B)source
void fmpz_poly_mat_mul_classical(fmpz_poly_mat_t C, const fmpz_poly_mat_t A, const fmpz_poly_mat_t B)source
void fmpz_poly_mat_mul_KS(fmpz_poly_mat_t C, const fmpz_poly_mat_t A, const fmpz_poly_mat_t B)source

Sets C = AB. C may be A or B. fmpz_poly_mat_mul_classical computes each entry as a sum of polynomial products; fmpz_poly_mat_mul_KS packs the entries into integers by Kronecker substitution and multiplies the integer matrices with fmpz_mat_mul. fmpz_poly_mat_mul uses the classical algorithm if a dimension is less than 8 and Kronecker substitution otherwise. See Multiplication.

Cite this page

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