FpSemigroupInterface¶
-
class FpSemigroupInterface : public libsemigroups::Runner¶
Defined in
fpsemi-intf.hpp.Every class for representing a finitely presented semigroup or monoid in
libsemigroupsis 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 |