row_space_size¶
-
template<typename Mat>
size_t row_space_size(Mat const &x)¶ Returns the size of the row space of the matrix
x
. This is currently only implemented for types of matrixMat
whereIsBMat<Mat>
istrue
. This function template is defined in namespacematrix_helpers
.- Parameters
x – the matrix
- Returns
A value of type
size_t
.- Exceptions
This function guarantees not to throw a
LibsemigroupsException
. It might throwstd::bad_alloc
if the algorithm cannot allocate enough memory.- Complexity
\(O(mn)\) where \(m\) is the size of the row basis of
x
and \(n\) is the size of the row space.Warning
If \(k\) is the dimension of the matrix
x
, then \(n\) can be as large as \(2 ^ k\).
Example
auto x = BMat<>::make({{1, 0, 0}, {0, 0, 1}, {0, 1, 0}}); matrix_helpers::row_space_size(x); // returns 7