fmpz_mod_mat_howell_form
Synopsis
#include <flint/fmpz_mod_mat.h>slong fmpz_mod_mat_howell_form(fmpz_mod_mat_t mat, const fmpz_mod_ctx_t ctx)sourceTransforms mat into its Howell form [How1986; StoMul1998] and returns the number of nonzero rows. mat must have at least as many rows as columns. Two matrices generate the same submodule of (\mathbb{Z}/n\mathbb{Z})^c if and only if their Howell forms are equal.
Guides#
References#
- [How1986] J. A. Howell, "Spans in the module (\mathbb{Z}_m)^s", Linear and Multilinear Algebra 19 (1986), 67-77
- [StoMul1998] Storjohann, Arne and Mulders, Thom : Fast algorithms for linear algebra modulo :math:N : Algorithms—{ESA} '98 (Venice), Lecture Notes in Comput. Sci. 1461 139–150
Cite this page
The FLINT team, “fmpz_mod_mat_howell_form (fmpz_mod_mat.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fmpz_mod_mat/fmpz_mod_mat_howell_form.html (generated 2026-10-20).
@misc{flint-doc-fmpz-mod-mat-fmpz-mod-mat-howell-form,
author = {{The FLINT team}},
title = {{fmpz\_mod\_mat\_howell\_form (fmpz\_mod\_mat.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/fmpz_mod_mat/fmpz_mod_mat_howell_form.html},
note = {Generated 2026-10-20}
}