Initialization

This page contains information about initialising the Action class.

inline void libsemigroups::Action::add_generator(element_type gen)

Add a generator to the action.

An Action instance represents the action of the semigroup generated by the elements added via this member function.

Complexity

At most linear in the size() of the action.

Parameters

gen – the generator to add.

Throws

(None) – This function guarantees not to throw a LibsemigroupsException.

Returns

(None)

inline void libsemigroups::Action::add_seed(const_reference_point_type seed)

Add a seed to the action.

A seed is just a starting point for the action, it will belong to the action, as will every point that can be obtained from the seed by acting with the generators of the action.

Complexity

At most linear in the size() of the action.

Parameters

seed – the seed to add.

Throws

(None) – This function guarantees not to throw a LibsemigroupsException.

Returns

(None)

inline void libsemigroups::Action::reserve(size_t val)

Increase the capacity to a value that is greater or equal to val.

Complexity

At most linear in the size() of the Action.

Parameters

val – new capacity of an action instance.

Throws
  • std::length_error – if val is too large.

  • std::bad_alloc – or any exception thrown by the allocators of private data members.

Returns

(None)