This namespace contains helper functions for the Blocks class.
Functions | |
| void | throw_if_invalid (Blocks const &x) |
| Check a Blocks object. | |
| std::vector< std::vector< int32_t > > | underlying_partition (Blocks const &x) |
| Return the underlying partition of a Blocks object. | |
| void throw_if_invalid | ( | Blocks const & | x | ) |
This function checks a Blocks object, and throws an exception if the object does not:
x, then \(i - 1\) occurs earlier in x.The value of x[i] should represent the index of the block containing i.
For example, if x is {0, 1, 1, 2, 1, 1, 3, 1, 1, 4, 5, 6}, then the above conditions are satisfied, but if x is {1, 0, 1, 10} then they are not.
| x | the blocks object to check. |
| LibsemigroupsException | if x is invalid. |
|
nodiscard |
The underlying partition of a Blocks object x is the partition of a subset \(P\) of \(\{-n, \ldots, -1\}\cup \{1, \ldots,
n\}\) such that:
x is a transverse block.| x | the Blocks object. |