fmpz_mat_is_reduced, fmpz_mat_is_reduced_gram
#include <flint/fmpz_mat.h>int fmpz_mat_is_reduced(const fmpz_mat_t A, double delta, double eta)sourceint fmpz_mat_is_reduced_gram(const fmpz_mat_t A, double delta, double eta)sourceReturns 1 if the rows of A are (\delta, \eta)-LLL-reduced, and 0 otherwise. fmpz_mat_is_reduced_gram takes the Gram matrix of the basis instead of the basis. The answer is proven.
fmpz_mat_is_reduced calls gr_mat_is_row_lll_reduced_naive in real ball arithmetic at doubling precisions from 64 bits and, once the precision exceeds about (64 + b) \max(m, n) for b-bit entries, in exact rational arithmetic. fmpz_mat_is_reduced_gram computes the Gram–Schmidt data over \mathbb{Q}. A basis with linearly dependent rows is not reduced.
The FLINT team, “fmpz_mat_is_reduced, fmpz_mat_is_reduced_gram (fmpz_mat.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fmpz_mat/fmpz_mat_is_reduced.html (generated 2026-10-20).
@misc{flint-doc-fmpz-mat-fmpz-mat-is-reduced,
author = {{The FLINT team}},
title = {{fmpz\_mat\_is\_reduced, fmpz\_mat\_is\_reduced\_gram (fmpz\_mat.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/fmpz_mat/fmpz_mat_is_reduced.html},
note = {Generated 2026-10-20}
}