Attributes¶
This page contains information about non-const attributes of the SchreierSims class.
-
inline point_type libsemigroups::SchreierSims::base(index_type index) const¶
Get a base point.
- Complexity
Constant.
- Parameters:
index – the index of the base point.
- Throws:
LibsemigroupsException – if
indexis out of range.- Returns:
the base point with index
index.
-
inline size_t libsemigroups::SchreierSims::base_size() const noexcept¶
Get the size of the current base.
- Complexity
Constant.
- Parameters
(None)
- Throws:
(None) – This function is
noexceptand is guaranteed never to throw.- Returns:
A
size_t.
-
inline bool libsemigroups::SchreierSims::empty()¶
Check if any generators have been added so far.
- Parameters
(None)
- Complexity
Constant.
- Throws:
(None) – This function guarantees not to throw a
LibsemigroupsException.- Returns:
trueifnumber_of_generators() == 0andfalseotherwise.
-
inline bool libsemigroups::SchreierSims::finished() const¶
Check if the stabiliser chain is fully enumerated.
- Complexity
Constant.
- Parameters
(None)
- Throws:
(None) – This function guarantees not to throw a
LibsemigroupsException.- Returns:
trueif the stabiliser chain is fully enumerated andfalseotherwise.
-
inline const_element_reference libsemigroups::SchreierSims::generator(index_type index) const¶
Get a generator.
- Complexity
Constant.
- Parameters:
index – the index of the generator we want.
- Throws:
LibsemigroupsException – if the
indexis out of bounds.- Returns:
A const reference to the generator of
thiswith indexindex.
-
inline const_element_reference libsemigroups::SchreierSims::identity() const¶
Returns a const reference to the identity.
- Parameters
(None)
- Throws:
(None) – This function guarantees not to throw a
LibsemigroupsException.- Returns:
A
bool.
-
inline const_element_reference libsemigroups::SchreierSims::inversal_element(index_type depth, point_type pt)¶
Get an inversal element.
- Complexity
Constant.
- Parameters:
depth – the depth.
pt – the point to map to the base point under the inversal.
- Throws:
LibsemigroupsException – if the
depthis out of bounds.LibsemigroupsException – if
ptis not in the orbit of the basepoint.
- Returns:
A const reference to the insversal element of
thisat depthdepthmoving the corresponding pointptto the basepoint.
-
inline size_t libsemigroups::SchreierSims::number_of_generators() const noexcept¶
The number of generators.
- Complexity
Constant.
- Parameters
(None)
- Throws:
(None) – This function is
noexceptand is guaranteed never to throw.- Returns:
The number of generators, a value of
size_t.
-
inline size_t libsemigroups::SchreierSims::number_of_strong_generators(index_type depth) const¶
The number of strong generators at a given depth.
- Complexity
Constant.
- Parameters
(None)
- Parameters:
depth – the depth.
- Throws:
LibsemigroupsException – if the
depthis out of bounds.- Returns:
The number of strong generators, a value of
size_t, at depthdepthof the stabiliser chain.
-
inline bool libsemigroups::SchreierSims::orbits_lookup(index_type depth, point_type pt)¶
Check if a point is in the orbit of a basepoint.
- Complexity
Constant.
- Parameters:
depth – the depth.
pt – the point.
- Throws:
LibsemigroupsException – if the
depthis out of bounds or ifptis out of bounds.- Returns:
A boolean indicating if the point
ptis in the orbit of the basepoint ofthisat depthdepth.
-
inline uint64_t libsemigroups::SchreierSims::size()¶
Returns the size of the group represented by this.
- Parameters
(None)
- Throws:
(None) – This function guarantees not to throw a
LibsemigroupsException.- Returns:
the size, a value of
uint64_t.
-
inline const_element_reference libsemigroups::SchreierSims::strong_generator(index_type depth, index_type index) const¶
Get a strong generator.
- Complexity
Constant.
- Parameters:
depth – the depth.
index – the index of the generator we want.
- Throws:
LibsemigroupsException – if the
depthis out of bounds.LibsemigroupsException – if the
indexis out of bounds.
- Returns:
A const reference to the strong generator of
thisat depthdepthand with indexindex.
-
inline const_element_reference libsemigroups::SchreierSims::transversal_element(index_type depth, point_type pt)¶
Get a transversal element.
- Complexity
Constant.
- Parameters:
depth – the depth.
pt – the image of the base point under the traversal.
- Throws:
LibsemigroupsException – if the
depthis out of bounds.LibsemigroupsException – if
ptis not in the orbit of the basepoint.
- Returns:
A const reference to the transversal element of
thisat depthdepthmoving the corresponding basepoint to the pointpt.