This page contains documentation related to converting a libsemigroups
objects into a Congruence instances.
- See also
- The `to` function for an overview of possible conversions between
libsemigroups
types.
|
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.
|
|
◆ to()
template<typename Result, typename Node>
Defined in to-cong.hpp
Despite the hideous signature, this function should be invoked as follows:
auto to(detail::KnuthBendixImpl< Rewriter, ReductionOrder > &kb) -> std::enable_if_t< std::is_same_v< Presentation< typename Result::word_type >, Result >, Result >
No doc.
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
).
- Template Parameters
-
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 . |
- Parameters
-
knd | the kind of the congruence being constructed. |
fpb | the FroidurePin instance to be converted. |
wg | the left or right Cayley graph of fpb . |
- Returns
- A Congruence object representing the trivial congruence over the semigroup defined by
fpb
.
- Exceptions
-