This page contains documentation related to converting a libsemigroups objects into a Congruence instances.
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. | |
| template<typename Result, typename Node> | |
| auto | to (congruence_kind knd, WordGraph< Node > const &wg) -> std::enable_if_t< std::is_same_v< Congruence< typename Result::native_word_type >, Result >, Result > |
| Convert a WordGraph object to a Congruence. | |
| 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. |
| auto to | ( | congruence_kind | knd, |
| 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 WordGraph object wg into a Congruence object by constructing a ToddCoxeter instance from wg and adding that as a runner to the Congruence.
| 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. |
| wg | the word graph wg. |
wg.wg is added as is to the constructed Congruence, and no checks are performed that the constructed ToddCoxeter or Congruence object are valid.