This page contains documentation related to converting libsemigroups
objects into ToddCoxeter instances.
- See also
- The `to` function for an overview of possible conversions between
libsemigroups
types.
|
template<template< typename... > typename Thing, typename Word, typename Rewriter, typename ReductionOrder> |
auto | to (congruence_kind knd, KnuthBendix< Word, Rewriter, ReductionOrder > &kb) -> std::enable_if_t< std::is_same_v< ToddCoxeter< Word >, Thing< Word > >, ToddCoxeter< Word > > |
| Convert a KnuthBendix object to a ToddCoxeter object.
|
|
template<typename Result, typename Node> |
auto | to (congruence_knd knd, FroidurePinBase &fpb, WordGraph< Node > const &wg) -> std::enable_if_t< std::is_same_v< ToddCoxeter< typename Result::native_word_type >, Result >, Result > |
| Convert a FroidurePin object to a ToddCoxeter object.
|
|
◆ to() [1/2]
template<template< typename... > typename Thing, typename Word, typename Rewriter, typename ReductionOrder>
auto to |
( |
congruence_kind | knd, |
|
|
KnuthBendix< Word, Rewriter, ReductionOrder > & | kb ) -> std::enable_if_t< std::is_same_v< ToddCoxeter< Word >, Thing< Word > >, ToddCoxeter< Word > > |
Defined in to-todd-coxeter.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 KnuthBendix object kb
into a ToddCoxeter object using the right Cayley graph of the semigroup represented by kb
.
- Template Parameters
-
Thing | used for SFINAE, must be ToddCoxeter. |
Word | the type of the words used in relations in kb . |
Rewriter | the type of rewriter used by kb . |
ReductionOrder | the type of reduction ordering used by kb . |
- Parameters
-
knd | the kind of the congruence being constructed. |
kb | the KnuthBendix object being converted. |
- Returns
- A ToddCoxeter object representing the trivial congruence over the semigroup defined by
kb
.
- Exceptions
-
◆ to() [2/2]
template<typename Result, typename Node>
auto to |
( |
congruence_knd | knd, |
|
|
FroidurePinBase & | fpb, |
|
|
WordGraph< Node > const & | wg ) -> std::enable_if_t< std::is_same_v< ToddCoxeter< typename Result::native_word_type >, Result >, Result > |
Defined in to-todd-coxeter.hpp
Despite the hideous signature, this function should be invoked as follows:
This function converts the FroidurePin object fpb
into a ToddCoxeter 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 ToddCoxeter<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 ToddCoxeter object representing the trivial congruence over the semigroup defined by
fpb
.
- Exceptions
-