Skip to content

Howell form with fewer rows? #2491

@simonbrandhorst

Description

@simonbrandhorst

For now Howell form and strong echelon form require at least as many rows as columns (see below).
In my application I act on matrices in Howell form by a (matrix)group and put them back in Howell form.
Thus the algorithm has to allocate a lot matrices. In my case the Howell form typically has less rows than columns. (For example 2 rows x 17 columns ). If this was allowed I could save some allocations.
Would it be possible to allow the number of rows to be smaller than the number of columns?

Strong echelon form and Howell form[¶](https://flintlib.org/doc/nmod_mat.html#strong-echelon-form-and-howell-form)

void nmod_mat_strong_echelon_form([nmod_mat_t](https://flintlib.org/doc/nmod_mat.html#c.nmod_mat_t) A)
...
  A  must have at least as many rows as columns.

[slong](https://flintlib.org/doc/flint.html#c.slong) nmod_mat_howell_form([nmod_mat_t](https://flintlib.org/doc/nmod_mat.html#c.nmod_mat_t) A)
...
A must have at least as many rows as columns.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions