Attributes¶
This page contains information about attributes of the FroidurePinBase
class.

inline size_t libsemigroups::FroidurePinBase::current_number_of_rules() const noexcept¶
Returns the number of relations that have been found so far.
This is only guaranteed to be the actual number of relations in a presentation defining the semigroup if the semigroup is fully enumerated.
 Parameters
(None)
 Complexity
Constant.
 Throws
(None) – This function is
noexcept
and is guaranteed never to throw. Returns
A value of type
size_t
.

inline size_t libsemigroups::FroidurePinBase::current_size() const noexcept¶
Returns the number of elements so far enumerated.
This is only the actual size of the semigroup if the semigroup is fully enumerated.
 Parameters
(None)
 Complexity
Constant.
 Throws
(None) – This function is
noexcept
and is guaranteed never to throw. Returns
A value of type
size_t
.

inline size_t libsemigroups::FroidurePinBase::degree() const noexcept¶
Returns the degree of any and all elements.
 Parameters
(None)
 Complexity
Constant.
 Throws
(None) – This function is
noexcept
and is guaranteed never to throw. Returns
A value of type
size_t
.

void libsemigroups::FroidurePinBase::enumerate(size_t limit)¶
Enumerate until at least a specified number of elements are found.
If the semigroup is already fully enumerated, or the number of elements previously enumerated exceeds
limit
, then calling this function does nothing. Otherwise, run attempts to find at least the maximum oflimit
and batch_size elements of the semigroup. Complexity
At worst \(O(mn)\) where \(m\) equals
limit
and \(n\) is the return value of FroidurePin::number_of_generators.
 Parameters
limit – the limit for current_size()
 Throws
(None) – This function guarantees not to throw a
LibsemigroupsException
. Returns
(None)

inline bool libsemigroups::FroidurePinBase::is_monoid()¶
Check if the semigroup is a monoid.
 Complexity
At worst \(O(Sn)\) where \(S\) is the semigroup represented by
this
, and \(n\) is the return value of FroidurePin::number_of_generators. Parameters
(None).
 Throws
(None) – This function guarantees not to throw a
LibsemigroupsException
. Returns
true
if the semigroup represented bythis
contains FroidurePin::One, andfalse
if not.

inline size_t libsemigroups::FroidurePinBase::size()¶
Returns the size.
 Parameters
(None)
 Complexity
At worst \(O(Sn)\) where \(S\) is the semigroup represented by
this
, and \(n\) is the return value of FroidurePin::number_of_generators.
 Throws
(None) – This function guarantees not to throw a
LibsemigroupsException
. Returns
A value of type
size_t
.