![]() |
libsemigroups
v3.0.0
C++ library for semigroups and monoids
|
This page contains documentation related to converting a libsemigroups
objects into a Congruence instances.
libsemigroups
types. Functions | |
template<typename Result, typename Node> | |
auto | to (congruence_kind knd, FroidurePinBase &fpb, WordGraph< Node > const &wg) -> std::enable_if_t< std::is_same_v< Congruence< typename Result::native_word_type >, Result >, Result > |
Convert a FroidurePin object to a Congruence object. | |
auto to | ( | congruence_kind | knd, |
FroidurePinBase & | fpb, | ||
WordGraph< Node > const & | wg ) -> std::enable_if_t< std::is_same_v<Congruence<typename Result::native_word_type>, Result>, Result> |
Defined in to-cong.hpp
Despite the hideous signature, this function should be invoked as follows:
This function converts the FroidurePin object fpb
into a Congruence object using the WordGraph wg
(which should be either the left_cayley_graph or the right_cayley_graph of fpb
).
Result | used for SFINAE, the return type of this function, must be Congruence<Word> for some type Word . |
Node | the type of the nodes in the WordGraph wg . |
knd | the kind of the congruence being constructed. |
fpb | the FroidurePin instance to be converted. |
wg | the left or right Cayley graph of fpb . |
fpb
.LibsemigroupsException | if wg is not the left_cayley_graph or the right_cayley_graph of fpb . |