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 index is 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 noexcept and 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

true if number_of_generators() == 0 and false otherwise.

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

true if the stabiliser chain is fully enumerated and false otherwise.

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 index is out of bounds.

Returns

A const reference to the generator of this with index index.

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
Returns

A const reference to the insversal element of this at depth depth moving the corresponding point pt to 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 noexcept and 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 depth is out of bounds.

Returns

The number of strong generators, a value of size_t, at depth depth of 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 depth is out of bounds or if pt is out of bounds.

Returns

A boolean indicating if the point pt is in the orbit of the basepoint of this at depth depth.

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
Returns

A const reference to the strong generator of this at depth depth and with index index.

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
Returns

A const reference to the transversal element of this at depth depth moving the corresponding basepoint to the point pt.