fq_nmod_mat_reduce_row
#include <flint/fq_nmod_mat.h>slong fq_nmod_mat_reduce_row(fq_nmod_mat_t A, slong * P, slong * L, slong m, const fq_nmod_ctx_t ctx)sourceReduces row m of A against the earlier rows, which must already be in reduced form (pivot entries 1, not necessarily in order), and returns the column of the new pivot, or -1 if row m becomes zero. P[i] is the row with its pivot in column i, or -1; it is updated when a new pivot is found, and the new pivot row is scaled to make the pivot 1. L[i] is the number of possibly nonzero columns of row i, which allows faster reduction of matrices that are zero on the right; the entries of L must be nondecreasing, and can all be set to the number of columns. The arithmetic is done without intermediate reductions modulo the defining polynomial.
Generated from the same template as fq_mat_reduce_row, whose documentation has the details.
The FLINT team, “fq_nmod_mat_reduce_row (fq_nmod_mat.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fq_nmod_mat/fq_nmod_mat_reduce_row.html (generated 2026-10-20).
@misc{flint-doc-fq-nmod-mat-fq-nmod-mat-reduce-row,
author = {{The FLINT team}},
title = {{fq\_nmod\_mat\_reduce\_row (fq\_nmod\_mat.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/fq_nmod_mat/fq_nmod_mat_reduce_row.html},
note = {Generated 2026-10-20}
}