libsemigroups
|
This class provides a call operator which can be used to compare libsemigroups::rws_word_t. More...
#include <rws.h>
Public Member Functions | |
ReductionOrdering (std::function< bool(std::string const *, std::string const *)> func) | |
A constructor. More... | |
size_t | operator() (std::string const *p, std::string const *q) const |
Returns true if the word pointed to by p is greater than the word pointed to by q in the reduction ordering. More... | |
size_t | operator() (std::string const &p, std::string const &q) const |
Returns true if the word p is greater than the word q in the reduction ordering. More... | |
This class provides a call operator which can be used to compare libsemigroups::rws_word_t.
A reduction ordering is a linear order \(\prec\) with no infinite descending chains and where \(u \prec v\) for some libsemigroups::rws_word_t \(u\) and \(v\) implies that \( aub \prec avb\) for all libsemigroups::rws_word_t \(a\) and \(b\).
|
inlineexplicit |
A constructor.
This constructs a reduction ordering object whose call operator uses the function func
to compare libsemigroups::rws_word_t's. It is the responsibility of the caller to verify that func
specifies a reduction ordering.
|
inline |
Returns true
if the word pointed to by p
is greater than the word pointed to by q
in the reduction ordering.
|
inline |
Returns true
if the word p
is greater than the word q
in the reduction ordering.