FLINT3.7.0-dev

nmod_poly_mat_det, nmod_poly_mat_det_fflu, nmod_poly_mat_det_interpolate

Synopsis#include <flint/nmod_poly_mat.h>
void nmod_poly_mat_det(nmod_poly_t det, const nmod_poly_mat_t A)source
void nmod_poly_mat_det_fflu(nmod_poly_t det, const nmod_poly_mat_t A)source
void nmod_poly_mat_det_interpolate(nmod_poly_t det, const nmod_poly_mat_t A)source

Sets det to the determinant of the square matrix A. nmod_poly_mat_det_fflu uses fraction-free elimination; nmod_poly_mat_det_interpolate evaluates A at the points 0, 1, \ldots, L - 1 with L = n(\ell - 1) + 1, where \ell is the largest length of an entry, computes the determinants with nmod_mat_det and interpolates, falling back to fraction-free elimination if L exceeds the modulus. nmod_poly_mat_det uses explicit formulas for n \le 2, fraction-free elimination for n < 15 and interpolation otherwise. The modulus must be prime for n \ge 3.

Cite this page

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