Defined in cong-common-helpers.hpp
.
This page contains the documentation of the functions partition(Thing&, Range) and non_trivial_classes for partitioning a range of words by a congruence.
|
template<typename Thing, typename Iterator1, typename Iterator2> |
std::vector< std::vector< typename Thing::native_word_type > > | non_trivial_classes (Thing &thing, Iterator1 first, Iterator2 last) |
| Partition a range of words into non-trivial classes (via iterators).
|
|
template<typename Thing, typename Range, typename = std::enable_if_t<rx::is_input_or_sink_v<Range>>> |
std::vector< std::vector< typename Thing::native_word_type > > | non_trivial_classes (Thing &thing, Range r) |
| Find the non-trivial classes in the partition of a range of words.
|
|
template<typename Thing, typename Iterator1, typename Iterator2> |
std::vector< std::vector< typename Thing::native_word_type > > | partition (Thing &thing, Iterator1 first, Iterator2 last) |
| Partition a range of words (via iterators).
|
|
template<typename Thing, typename Range, typename = std::enable_if_t<rx::is_input_or_sink_v<Range>>> |
std::vector< std::vector< typename Thing::native_word_type > > | partition (Thing &thing, Range r) |
| Partition a range of words.
|
|
◆ non_trivial_classes() [1/2]
template<typename Thing, typename Iterator1, typename Iterator2>
std::vector< std::vector< typename Thing::native_word_type > > non_trivial_classes |
( |
Thing & | thing, |
|
|
Iterator1 | first, |
|
|
Iterator2 | last ) |
◆ non_trivial_classes() [2/2]
template<typename Thing, typename Range, typename = std::enable_if_t<rx::is_input_or_sink_v<Range>>>
Defined in cong-common-helpers.hpp
.
This function returns the classes with size at least \(2\) in the partition of the words in the range r
according to thing
. This function triggers a full enumeration of thing
.
- Template Parameters
-
Thing | the type of the first parameter must be one of Kambites, KnuthBendix, ToddCoxeter, or Congruence. |
Range | the type of the input range of words, must satisfy std::enable_if_t<rx::is_input_or_sink_v<Range>> and Range::output_type must decay to Thing::native_word_type . |
- Parameters
-
thing | the object used to partition r . |
r | the input range of words. |
- Returns
- The partition of the input range.
- Exceptions
-
◆ partition() [1/2]
template<typename Thing, typename Iterator1, typename Iterator2>
std::vector< std::vector< typename Thing::native_word_type > > partition |
( |
Thing & | thing, |
|
|
Iterator1 | first, |
|
|
Iterator2 | last ) |
◆ partition() [2/2]
template<typename Thing, typename Range, typename = std::enable_if_t<rx::is_input_or_sink_v<Range>>>
Defined in cong-common-helpers.hpp
.
This function returns the partition of the words in the range r
induced by the object thing
. This function triggers a full enumeration of thing
.
- Template Parameters
-
Thing | the type of the first parameter must be one of Kambites, KnuthBendix, ToddCoxeter, or Congruence. |
Range | the type of the input range of words, must satisfy std::enable_if_t<rx::is_input_or_sink_v<Range>> and Range::output_type must decay to Thing::native_word_type . |
- Parameters
-
thing | the object used to partition r . |
r | the input range of words. |
- Returns
- The partition of the input range.
- Exceptions
-