fpsemigroup::KnuthBendix¶
-
class KnuthBendix : public libsemigroups::FpSemigroupInterface¶
Defined in
knuth-bendix.hpp.On this page we describe the functionality relating to the Knuth-Bendix algorithm for semigroups and monoids that is available in
libsemigroups. This page contains a details of the member functions of the class fpsemigroup::KnuthBendix.This class is used to represent a string rewriting system defining a finitely presented monoid or semigroup.
See also
- Example
KnuthBendix kb; kb.set_alphabet("abc"); kb.add_rule("aaaa", "a"); kb.add_rule("bbbb", "b"); kb.add_rule("cccc", "c"); kb.add_rule("abab", "aaa"); kb.add_rule("bcbc", "bbb"); !kb.confluent(); // true kb.run(); kb.number_of_active_rules(); // 31 kb.confluent(); // true
Public Types¶
Type of an const iterator to a normal form. |
|
Constructors¶
Deleted. |
|
Deleted constructors¶
Deleted. |
|
Deleted. |
Member functions¶
Settings¶
Member functions and types inherited from FpSemigroupInterface¶
|
|
Type for characters. |
|
Type for const iterators to the defining rules. |
|
|
|
Type for rules. |
|
Type for strings. |
|