Initialisation¶
This page contains information about the member functions of the SchreierSims
class that can be used for initialisation.
-
inline void libsemigroups::SchreierSims::add_base_point(point_type pt)¶
Add a base point to the stabiliser chain.
- Complexity
Linear in the current number of base points.
- Parameters
pt – the base point to add.
- Throws
LibsemigroupsException – if
pt
is out of range.LibsemigroupsException – if finished() returns
true
.LibsemigroupsException – if
pt
is already a base point.
- Returns
(None)
-
inline void libsemigroups::SchreierSims::add_generator(const_element_reference x)¶
Add a generator.
- Complexity
Constant
- Parameters
x – a const reference to the generator to add.
- Throws
LibsemigroupsException – if the degree of
x
is not equal to the first template parameterN
.- Returns
(None)
-
inline void libsemigroups::SchreierSims::clear()¶
Reset to the trivial group.
Removes all generators, and orbits, and resets
this
so that it represents the trivial group.- Complexity
\(O(N ^ 2)\) where
N
is the first template parameter.- Parameters
(None)
- Throws
(None) – This function guarantees not to throw a
LibsemigroupsException
.- Returns
(None)