const_contains

tril libsemigroups::Congruence::const_contains(word_type const&, word_type const&) const override

Check if a pair of words is known to belong to the congruence.

Return

  • libsemigroups::tril::TRUE if the words u and v are known to belong to the same congruence class

  • libsemigroups::tril::FALSE if the words are known to not belong to the same congruence class

  • libsemigroups::tril::unknown otherwise.

Complexity

Linear in u.size() + v.size().

Parameters
  • u: a word (vector of integers) over the generators of the semigroup.

  • v: a word (vector of integers) over the generators of the semigroup.

Exceptions