CongruenceByPairsHelper¶
-
template<typename
TFroidurePinType
>
classCongruenceByPairsHelper
: public libsemigroups::CongruenceInterface, protected libsemigroups::detail::BruidhinnTraits<TFroidurePinType::element_type>¶ Defined in
cong-pair.hpp
.This class contains an implementation of a brute force breadth first search algorithm for computing left, right, and 2-sided congruences on semigroups and monoids.
This page contains a summary of the member functions of the class CongruenceByPairs, and related things in libsemigroups. CongruenceByPairsHelper is a helper class, CongruenceByPairs has identical functionality, please use CongruenceByPairs, but not CongruenceByPairsHelper since this will be deprecated in a later version of
libsemigroups
.- See
congruence_type and tril.
- Example
using namespace libsemigroups; auto rg = ReportGuard(); using Transf = typename TransfHelper<8>::type; FroidurePin<Transf> S({Transf({7, 3, 5, 3, 4, 2, 7, 7}), Transf({1, 2, 4, 4, 7, 3, 0, 7}), Transf({0, 6, 4, 2, 2, 6, 6, 4}), Transf({3, 6, 3, 4, 0, 6, 0, 7})}); using P = CongruenceByPairs<decltype(S)>; P cong1(right, S); cong1.nr_classes(); // 11804 P cong2(left, S); cong2.nr_classes(); // 11804 P cong3(twosided, S); cong3.nr_classes(); // 11804
Aliases¶
Constructors¶
- CongruenceByPairsHelper
- CongruenceByPairsHelper(CongruenceByPairsHelper const&)
- CongruenceByPairsHelper(CongruenceByPairsHelper&&)
- CongruenceByPairsHelper(congruence_type, T const&)
- CongruenceByPairsHelper(congruence_type, std::shared_ptr<FroidurePinBase>)
- operator=(CongruenceByPairsHelper const&)
- operator=(CongruenceByPairsHelper&&)