FpSemigroupInterface¶
-
class FpSemigroupInterface : public libsemigroups::Runner¶
Defined in
fpsemi-intf.hpp
.Every class for representing a finitely presented semigroup or monoid in
libsemigroups
is derived from FpSemigroupInterface, which holds the member functions that are common to all its derived classes. FpSemigroupInterface is an abstract class.Subclassed by libsemigroups::CongruenceWrapper< T >, libsemigroups::FpSemigroup, libsemigroups::fpsemigroup::Kambites< T >, libsemigroups::fpsemigroup::KnuthBendix
Member types¶
Type for characters. |
|
Type for const iterators to the defining rules. |
|
Type for rules. |
|
Type for strings. |
Constructors¶
Construct an empty finitely presented semigroup object. |
|
Default copy constructor. |
|
Deleted. |
Deleted constructors¶
Deleted. |
|
Deleted. |
Pure virtual member functions¶
Check if two strings represent the same element. |
|
Returns a normal form for a string. |
|
Returns the size of the finitely presented semigroup. |
Validation¶
Validates a letter specified by a |
|
Validates a letter specified by an integer. |
|
Validates a word given by a std::string. |
|
Validates a word given by a |
Initialization¶
Add a rule using a |
|
Add a rule using a |
|
|
Add a rule using two |
Add a rule using two std::string const references. |
|
Add a rule using two |
|
Add rules from a |
|
Add rules in a vector. |
|
Returns a const reference to the alphabet. |
|
Returns the |
|
Check if an identity has been set. |
|
Returns the identity (if any). |
|
Returns the inverses (if any). |
|
Returns the number of rules. |
|
Set the size of the alphabet. |
|
Set the alphabet of the finitely presented semigroup. |
|
Set a character in |
|
Set a character in |
|
Set the inverses of letters in |
Normal forms and equality testing¶
|
Check if two words represent the same element. |
Check if two words represent the same element. |
|
Returns a normal form for a |
|
Returns a normal form for a |
Words to strings and vice versa¶
Convert a char to a |
|
Convert a string to a |
|
Convert a |
|
Convert a |
Size¶
Check if the finitely presented semigroup is obviously finite. |
|
Check if the finitely presented semigroup is obviously infinite. |
Iterators¶
Returns an iterator pointing to the first rule. |
|
Returns an iterator pointing one past the last rule. |
Miscellanea¶
Returns a string containing GAP commands for defining a finitely presented semigroup. |
Member functions inherited from Runner¶
Check if the runner is dead. |
|
Check if |
|
Stop |
|
Check if it is time to report. |
|
Get the minimum elapsed time between reports. |
|
Set the minimum elapsed time between reports. |
|
Set the minimum elapsed time between reports. |
|
Report why |
|
Run until |
|
Run for a specified amount of time. |
|
Run for a specified amount of time. |
|
Run until a nullary predicate returns |
|
Run until a nullary predicate returns |
|
Check if currently running. |
|
Check if the runner is currently running for a particular length of time. |
|
Check if the runner is currently running until a nullary predicate returns |
|
Check if |
|
Check if the runner is stopped. |
|
Check if the runner was, or should, stop because of the argument for |
|
Check if the amount of time passed to |