FroidurePinBase

class FroidurePinBase : public libsemigroups::Runner

Defined in froidure-pin-base.hpp.

FroidurePinBase is an abstract base class for the class template FroidurePin.

FroidurePinBase allows a polymorphic interface to instances of FroidurePin and its member functions reflect those member functions of FroidurePin that do not depend on the template parameter TElementType (the type of the elements of the semigroup represented).

Subclassed by libsemigroups::FroidurePin< detail::KBE, FroidurePinTraits< detail::KBE, KnuthBendix > >, libsemigroups::FroidurePin< detail::TCE, FroidurePinTraits< detail::TCE, table_type > >, libsemigroups::FroidurePin< TElementType, TTraits >

Member types

cayley_graph_type

Type for a left or right Cayley graph.

const_rule_iterator

Return type of cbegin_rules and cend_rules .

element_index_type

size_type

Unsigned integer type.

Constructors

FroidurePinBase()

Default constructor.

FroidurePinBase(FroidurePinBase &&) = default

Default move constructor.

FroidurePinBase(FroidurePinBase const&)

Copy constructor.

Deleted constructors

operator=(FroidurePinBase &&) = delete

Deleted.

operator=(FroidurePinBase const &) = delete

Deleted.

Settings

batch_size() const noexcept

batch_size(size_t) noexcept

concurrency_threshold() const noexcept

concurrency_threshold(size_t) noexcept

immutable() const noexcept

immutable(bool) noexcept

max_threads() const noexcept

max_threads(size_t) noexcept

Attributes

current_number_of_rules() const noexcept

current_size() const noexcept

degree() const noexcept

enumerate(size_t)

is_monoid()

size()

Cayley graphs

left(element_index_type,letter_type)

left_cayley_graph()

right(element_index_type,letter_type)

right_cayley_graph()

Factorisation, products, and relations

cbegin_rules() const

cend_rules() const

current_length(element_index_type) const

current_max_word_length() const noexcept

current_position(letter_type) const

current_position(std::initializer_list< size_t > const &) const

current_position(word_type const &) const

factorisation(element_index_type)

factorisation(word_type&, element_index_type)

length(element_index_type)

minimal_factorisation(element_index_type)

minimal_factorisation(word_type &,element_index_type)

minimal_factorisation(word_type &,element_index_type) const

number_of_rules()

product_by_reduction(element_index_type,element_index_type) const

Prefixes and suffixes

final_letter(element_index_type) const

first_letter(element_index_type) const

prefix(element_index_type) const

suffix(element_index_type) const

Member functions inherited from Runner

dead() const noexcept

finished() const

kill() noexcept

report() const

report_every() const noexcept

report_every(TIntType)

report_every(std::chrono::nanoseconds)

report_why_we_stopped() const

run()

run_for(TIntType)

run_for(std::chrono::nanoseconds)

run_until(T&&)

run_until(bool(*)())

running() const noexcept

running_for() const noexcept

running_until() const noexcept

started() const

stopped() const

stopped_by_predicate() const

timed_out() const