Skip to content

Commit 4e04a5d

Browse files
james-d-mitchellJoseph-Edwards
authored andcommitted
Rename things from upstream
1 parent 319074a commit 4e04a5d

15 files changed

Lines changed: 324 additions & 316 deletions

build_tools/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,5 @@ def minimum_libsemigroups_version():
1111
"""Returns the minimum required version of libsemigroups required to build
1212
libsemigroups_pybind11.
1313
"""
14+
# TODO update to 3.7
1415
return "3.6.1"

src/cong-common.cpp

Lines changed: 127 additions & 137 deletions
Large diffs are not rendered by default.

src/froidure-pin.cpp

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1269,9 +1269,14 @@ This function returns the element of *fp* obtained by evaluating *w*.
12691269
});
12701270
}
12711271
} // bind_froidure_pin_stateful
1272-
} // namespace
1272+
} // namespace
12731273

12741274
void init_froidure_pin(py::module& m) {
1275+
using LenLexTrie = detail::RewritingSystemTrie<ShortLexCompare>;
1276+
using LenLexSet = detail::RewritingSystemSet<ShortLexCompare>;
1277+
using RPOTrie = detail::RewritingSystemTrie<RecursivePathCompare>;
1278+
using RPOSet = detail::RewritingSystemSet<RecursivePathCompare>;
1279+
12751280
bind_froidure_pin_stateless<Transf<0, uint8_t>>(m, "Transf1");
12761281
bind_froidure_pin_stateless<Transf<0, uint16_t>>(m, "Transf2");
12771282
bind_froidure_pin_stateless<Transf<0, uint32_t>>(m, "Transf4");
@@ -1301,17 +1306,15 @@ This function returns the element of *fp* obtained by evaluating *w*.
13011306
bind_froidure_pin_stateless<NTPMat<0, 0, 0, 0, int64_t>>(m, "NTPMat");
13021307

13031308
bind_froidure_pin_stateful<
1304-
detail::KBE<KnuthBendix<std::string, detail::RewriteFromLeft>>>(
1305-
m, "KBEStringRewriteFromLeft");
1306-
bind_froidure_pin_stateful<
1307-
detail::KBE<KnuthBendix<std::string, detail::RewriteTrie>>>(
1308-
m, "KBEStringRewriteTrie");
1309-
bind_froidure_pin_stateful<
1310-
detail::KBE<KnuthBendix<word_type, detail::RewriteFromLeft>>>(
1311-
m, "KBEWordRewriteFromLeft");
1309+
detail::KBE<KnuthBendix<std::string, LenLexSet>>>(m,
1310+
"KBEStringLenLexSet");
13121311
bind_froidure_pin_stateful<
1313-
detail::KBE<KnuthBendix<word_type, detail::RewriteTrie>>>(
1314-
m, "KBEWordRewriteTrie");
1312+
detail::KBE<KnuthBendix<std::string, LenLexTrie>>>(
1313+
m, "KBEStringLenLexTrie");
1314+
bind_froidure_pin_stateful<detail::KBE<KnuthBendix<word_type, LenLexSet>>>(
1315+
m, "KBEWordLenLexSet");
1316+
bind_froidure_pin_stateful<detail::KBE<KnuthBendix<word_type, LenLexTrie>>>(
1317+
m, "KBEWordLenLexTrie");
13151318

13161319
bind_froidure_pin_stateful<detail::KE<std::string>>(m, "KEString");
13171320
bind_froidure_pin_stateful<detail::KE<detail::MultiView<std::string>>>(

src/kbe.cpp

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -73,18 +73,20 @@ namespace libsemigroups {
7373
}
7474

7575
void init_kbe(py::module& m) {
76-
using KBEStringTrie
77-
= detail::KBE<KnuthBendix<std::string, detail::RewriteTrie>>;
78-
using KBEWordTrie
79-
= detail::KBE<KnuthBendix<word_type, detail::RewriteTrie>>;
80-
using KBEStringFromLeft
81-
= detail::KBE<KnuthBendix<std::string, detail::RewriteFromLeft>>;
82-
using KBEWordFromLeft
83-
= detail::KBE<KnuthBendix<word_type, detail::RewriteFromLeft>>;
84-
85-
bind_kbe<KBEStringTrie>(m, "KBEStringTrie");
86-
bind_kbe<KBEWordTrie>(m, "KBEWordTrie");
87-
bind_kbe<KBEStringFromLeft>(m, "KBEStringFromLeft");
88-
bind_kbe<KBEWordFromLeft>(m, "KBEWordFromLeft");
76+
using LenLexTrie = detail::RewritingSystemTrie<ShortLexCompare>;
77+
using LenLexSet = detail::RewritingSystemSet<ShortLexCompare>;
78+
using RPOTrie = detail::RewritingSystemTrie<RecursivePathCompare>;
79+
using RPOSet = detail::RewritingSystemSet<RecursivePathCompare>;
80+
81+
using KBEStringLenLexTrie
82+
= detail::KBE<KnuthBendix<std::string, LenLexTrie>>;
83+
using KBEWordLenLexTrie = detail::KBE<KnuthBendix<word_type, LenLexTrie>>;
84+
using KBEStringLenLexSet = detail::KBE<KnuthBendix<std::string, LenLexSet>>;
85+
using KBEWordLenLexSet = detail::KBE<KnuthBendix<word_type, LenLexSet>>;
86+
87+
bind_kbe<KBEStringLenLexTrie>(m, "KBEStringLenLexTrie");
88+
bind_kbe<KBEWordLenLexTrie>(m, "KBEWordLenLexTrie");
89+
bind_kbe<KBEStringLenLexSet>(m, "KBEStringLenLexSet");
90+
bind_kbe<KBEWordLenLexSet>(m, "KBEWordLenLexSet");
8991
}
9092
} // namespace libsemigroups

src/knuth-bendix-impl.cpp

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -507,9 +507,14 @@ infinite; ``False`` is returned if it is not.
507507
} // namespace detail
508508

509509
void init_detail_knuth_bendix_impl(py::module& m) {
510-
detail::bind_detail_knuth_bendix_impl<detail::RewriteFromLeft>(
511-
m, "KnuthBendixImplRewriteFromLeft");
512-
detail::bind_detail_knuth_bendix_impl<detail::RewriteTrie>(
513-
m, "KnuthBendixImplRewriteTrie");
510+
using LenLexTrie = detail::RewritingSystemTrie<ShortLexCompare>;
511+
using LenLexSet = detail::RewritingSystemSet<ShortLexCompare>;
512+
using RPOTrie = detail::RewritingSystemTrie<RecursivePathCompare>;
513+
using RPOSet = detail::RewritingSystemSet<RecursivePathCompare>;
514+
515+
detail::bind_detail_knuth_bendix_impl<LenLexSet>(
516+
m, "KnuthBendixImplLenLexSet");
517+
detail::bind_detail_knuth_bendix_impl<LenLexTrie>(
518+
m, "KnuthBendixImplLenLexTrie");
514519
}
515520
} // namespace libsemigroups

src/knuth-bendix.cpp

Lines changed: 21 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ nested class :any:`KnuthBendix.options`.
8787
def_construct_default(
8888
thing,
8989
"KnuthBendix",
90+
// TODO update
9091
doc{.extra_kwargs = ", rewriter: str", .extra_kwargs_doc = R"pbdoc(
9192
* **rewriter** (*str*) -- the type of rewriter to use, must be either ``"RewriteTrie"`` or ``"RewriteFromLeft"``.)pbdoc"sv});
9293

@@ -386,7 +387,7 @@ Copy a :any:`NormalFormRange` object.
386387
});
387388
thing.def("next", [](NormalFormRange& nfr) { nfr.next(); });
388389
} // bind_normal_form_range
389-
} // namespace
390+
} // namespace
390391

391392
template <typename Word>
392393
void bind_redundant_rule(py::module& m) {
@@ -447,25 +448,25 @@ redundant in this way, then ``None`` is returned.
447448
}
448449

449450
void init_knuth_bendix(py::module& m) {
450-
using RewriteTrie = detail::RewriteTrie;
451-
using RewriteFromLeft = detail::RewriteFromLeft;
452-
453-
bind_knuth_bendix<word_type, RewriteTrie>(m, "KnuthBendixWordRewriteTrie");
454-
bind_knuth_bendix<word_type, RewriteFromLeft>(
455-
m, "KnuthBendixWordRewriteFromLeft");
456-
bind_knuth_bendix<std::string, RewriteTrie>(m,
457-
"KnuthBendixStringRewriteTrie");
458-
bind_knuth_bendix<std::string, RewriteFromLeft>(
459-
m, "KnuthBendixStringRewriteFromLeft");
460-
461-
bind_normal_form_range<word_type, RewriteTrie>(
462-
m, "KnuthBendixNormalFormRangeWordRewriteTrie");
463-
bind_normal_form_range<word_type, RewriteFromLeft>(
464-
m, "KnuthBendixNormalFormRangeWordRewriteFromLeft");
465-
bind_normal_form_range<std::string, RewriteTrie>(
466-
m, "KnuthBendixNormalFormRangeStringRewriteTrie");
467-
bind_normal_form_range<std::string, RewriteFromLeft>(
468-
m, "KnuthBendixNormalFormRangeStringRewriteFromLeft");
451+
using LenLexTrie = detail::RewritingSystemTrie<ShortLexCompare>;
452+
using LenLexSet = detail::RewritingSystemSet<ShortLexCompare>;
453+
using RPOTrie = detail::RewritingSystemTrie<RecursivePathCompare>;
454+
using RPOSet = detail::RewritingSystemSet<RecursivePathCompare>;
455+
456+
bind_knuth_bendix<word_type, LenLexTrie>(m, "KnuthBendixWordLenLexTrie");
457+
bind_knuth_bendix<word_type, LenLexSet>(m, "KnuthBendixWordLenLexSet");
458+
bind_knuth_bendix<std::string, LenLexTrie>(m,
459+
"KnuthBendixStringLenLexTrie");
460+
bind_knuth_bendix<std::string, LenLexSet>(m, "KnuthBendixStringLenLexSet");
461+
462+
bind_normal_form_range<word_type, LenLexTrie>(
463+
m, "KnuthBendixNormalFormRangeWordLenLexTrie");
464+
bind_normal_form_range<word_type, LenLexSet>(
465+
m, "KnuthBendixNormalFormRangeWordLenLexSet");
466+
bind_normal_form_range<std::string, LenLexTrie>(
467+
m, "KnuthBendixNormalFormRangeStringLenLexTrie");
468+
bind_normal_form_range<std::string, LenLexSet>(
469+
m, "KnuthBendixNormalFormRangeStringLenLexSet");
469470

470471
bind_redundant_rule<std::string>(m);
471472
bind_redundant_rule<word_type>(m);

src/libsemigroups_pybind11/froidure_pin.py

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,10 @@
2626
FroidurePinBMat as _FroidurePinBMat,
2727
FroidurePinBMat8 as _FroidurePinBMat8,
2828
FroidurePinIntMat as _FroidurePinIntMat,
29-
FroidurePinKBEStringRewriteFromLeft as _FroidurePinKBEStringRewriteFromLeft,
30-
FroidurePinKBEStringRewriteTrie as _FroidurePinKBEStringRewriteTrie,
31-
FroidurePinKBEWordRewriteFromLeft as _FroidurePinKBEWordRewriteFromLeft,
32-
FroidurePinKBEWordRewriteTrie as _FroidurePinKBEWordRewriteTrie,
29+
FroidurePinKBEStringLenLexSet as _FroidurePinKBEStringLenLexSet,
30+
FroidurePinKBEStringLenLexTrie as _FroidurePinKBEStringLenLexTrie,
31+
FroidurePinKBEWordLenLexSet as _FroidurePinKBEWordLenLexSet,
32+
FroidurePinKBEWordLenLexTrie as _FroidurePinKBEWordLenLexTrie,
3333
FroidurePinKEMultiViewString as _FroidurePinKEMultiViewString,
3434
FroidurePinKEString as _FroidurePinKEString,
3535
FroidurePinKEWord as _FroidurePinKEWord,
@@ -51,10 +51,10 @@
5151
FroidurePinTransf2 as _FroidurePinTransf2,
5252
FroidurePinTransf4 as _FroidurePinTransf4,
5353
IntMat as _IntMat,
54-
KBEStringFromLeft as _KBEStringFromLeft,
55-
KBEStringTrie as _KBEStringTrie,
56-
KBEWordFromLeft as _KBEWordFromLeft,
57-
KBEWordTrie as _KBEWordTrie,
54+
KBEStringLenLexSet as _KBEStringLenLexSet,
55+
KBEStringLenLexTrie as _KBEStringLenLexTrie,
56+
KBEWordLenLexSet as _KBEWordLenLexSet,
57+
KBEWordLenLexTrie as _KBEWordLenLexTrie,
5858
MaxPlusMat as _MaxPlusMat,
5959
MaxPlusTruncMat as _MaxPlusTruncMat,
6060
MinPlusMat as _MinPlusMat,
@@ -145,10 +145,10 @@ class FroidurePin(_CxxWrapper):
145145
(_Transf1,): _FroidurePinTransf1,
146146
(_Transf2,): _FroidurePinTransf2,
147147
(_Transf4,): _FroidurePinTransf4,
148-
(_KBEStringTrie,): _FroidurePinKBEStringRewriteTrie,
149-
(_KBEStringFromLeft,): _FroidurePinKBEStringRewriteFromLeft,
150-
(_KBEWordTrie,): _FroidurePinKBEWordRewriteTrie,
151-
(_KBEWordFromLeft,): _FroidurePinKBEWordRewriteFromLeft,
148+
(_KBEStringLenLexTrie,): _FroidurePinKBEStringLenLexTrie,
149+
(_KBEStringLenLexSet,): _FroidurePinKBEStringLenLexSet,
150+
(_KBEWordLenLexTrie,): _FroidurePinKBEWordLenLexTrie,
151+
(_KBEWordLenLexSet,): _FroidurePinKBEWordLenLexSet,
152152
} | (
153153
{
154154
(_HPCombiPTransf16,): _FroidurePinHPCombiPTransf16,

src/libsemigroups_pybind11/knuth_bendix.py

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@
1010
"""
1111

1212
from _libsemigroups_pybind11 import (
13-
KnuthBendixStringRewriteFromLeft as _KnuthBendixStringRewriteFromLeft,
14-
KnuthBendixStringRewriteTrie as _KnuthBendixStringRewriteTrie,
15-
KnuthBendixWordRewriteFromLeft as _KnuthBendixWordRewriteFromLeft,
16-
KnuthBendixWordRewriteTrie as _KnuthBendixWordRewriteTrie,
13+
KnuthBendixStringLenLexSet as _KnuthBendixStringLenLexSet,
14+
KnuthBendixStringLenLexTrie as _KnuthBendixStringLenLexTrie,
15+
KnuthBendixWordLenLexSet as _KnuthBendixWordLenLexSet,
16+
KnuthBendixWordLenLexTrie as _KnuthBendixWordLenLexTrie,
1717
knuth_bendix_by_overlap_length as _knuth_bendix_by_overlap_length,
1818
knuth_bendix_is_reduced as _knuth_bendix_is_reduced,
1919
knuth_bendix_non_trivial_classes as _knuth_bendix_non_trivial_classes,
@@ -38,15 +38,15 @@
3838

3939

4040
class KnuthBendix(_CongruenceCommon):
41-
__doc__ = _KnuthBendixStringRewriteTrie.__doc__
41+
__doc__ = _KnuthBendixStringLenLexTrie.__doc__
4242

4343
_py_template_params_to_cxx_type = {
44-
(list[int],): _KnuthBendixWordRewriteTrie,
45-
(str,): _KnuthBendixStringRewriteTrie,
46-
(list[int], "RewriteTrie"): _KnuthBendixWordRewriteTrie,
47-
(str, "RewriteTrie"): _KnuthBendixStringRewriteTrie,
48-
(list[int], "RewriteFromLeft"): _KnuthBendixWordRewriteFromLeft,
49-
(str, "RewriteFromLeft"): _KnuthBendixStringRewriteFromLeft,
44+
(list[int],): _KnuthBendixWordLenLexTrie,
45+
(str,): _KnuthBendixStringLenLexTrie,
46+
(list[int], "LenLexTrie"): _KnuthBendixWordLenLexTrie,
47+
(str, "LenLexTrie"): _KnuthBendixStringLenLexTrie,
48+
(list[int], "LenLexSet"): _KnuthBendixWordLenLexSet,
49+
(str, "LenLexSet"): _KnuthBendixStringLenLexSet,
5050
}
5151

5252
_cxx_type_to_py_template_params = dict(
@@ -59,14 +59,14 @@ class KnuthBendix(_CongruenceCommon):
5959

6060
_all_wrapped_cxx_types = {*_py_template_params_to_cxx_type.values()}
6161

62-
options = _KnuthBendixStringRewriteTrie.options
62+
options = _KnuthBendixStringLenLexTrie.options
6363

64-
@_copydoc(_KnuthBendixStringRewriteTrie.__init__)
65-
def __init__(self, *args, rewriter="RewriteTrie", **kwargs) -> None:
66-
if rewriter not in ("RewriteFromLeft", "RewriteTrie"):
64+
@_copydoc(_KnuthBendixStringLenLexTrie.__init__)
65+
def __init__(self, *args, rewriter="LenLexTrie", **kwargs) -> None:
66+
if rewriter not in ("LenLexSet", "LenLexTrie"):
6767
raise TypeError(
6868
f'expected the keyword argument "rewriter" to be '
69-
f'"RewriteFromLeft" or "RewriteTrie", but found "{rewriter}"'
69+
f'"LenLexSet" or "LenLexTrie", but found "{rewriter}"'
7070
)
7171

7272
msg = f"""expected either:
@@ -93,11 +93,11 @@ def __init__(self, *args, rewriter="RewriteTrie", **kwargs) -> None:
9393
# Copy mem fns from sample C++ type and register types
9494
########################################################################
9595

96-
_copy_cxx_mem_fns(_KnuthBendixStringRewriteTrie, KnuthBendix)
97-
_register_cxx_wrapped_type(_KnuthBendixStringRewriteTrie, KnuthBendix)
98-
_register_cxx_wrapped_type(_KnuthBendixWordRewriteTrie, KnuthBendix)
99-
_register_cxx_wrapped_type(_KnuthBendixStringRewriteFromLeft, KnuthBendix)
100-
_register_cxx_wrapped_type(_KnuthBendixWordRewriteFromLeft, KnuthBendix)
96+
_copy_cxx_mem_fns(_KnuthBendixStringLenLexTrie, KnuthBendix)
97+
_register_cxx_wrapped_type(_KnuthBendixStringLenLexTrie, KnuthBendix)
98+
_register_cxx_wrapped_type(_KnuthBendixWordLenLexTrie, KnuthBendix)
99+
_register_cxx_wrapped_type(_KnuthBendixStringLenLexSet, KnuthBendix)
100+
_register_cxx_wrapped_type(_KnuthBendixWordLenLexSet, KnuthBendix)
101101

102102
########################################################################
103103
# Helpers

src/libsemigroups_pybind11/to.py

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@
1818
to_inverse_presentation_string as _to_inverse_presentation_string,
1919
to_inverse_presentation_word as _to_inverse_presentation_word,
2020
to_knuth_bendix as _to_knuth_bendix,
21-
to_knuth_bendix_RewriteFromLeft as _to_knuth_bendix_RewriteFromLeft,
22-
to_knuth_bendix_RewriteTrie as _to_knuth_bendix_RewriteTrie,
23-
to_knuth_bendix_string_RewriteFromLeft as _to_knuth_bendix_string_RewriteFromLeft,
24-
to_knuth_bendix_string_RewriteTrie as _to_knuth_bendix_string_RewriteTrie,
25-
to_knuth_bendix_word_RewriteFromLeft as _to_knuth_bendix_word_RewriteFromLeft,
26-
to_knuth_bendix_word_RewriteTrie as _to_knuth_bendix_word_RewriteTrie,
21+
to_knuth_bendix_LenLexSet as _to_knuth_bendix_LenLexSet,
22+
to_knuth_bendix_LenLexTrie as _to_knuth_bendix_LenLexTrie,
23+
to_knuth_bendix_string_LenLexSet as _to_knuth_bendix_string_LenLexSet,
24+
to_knuth_bendix_string_LenLexTrie as _to_knuth_bendix_string_LenLexTrie,
25+
to_knuth_bendix_word_LenLexSet as _to_knuth_bendix_word_LenLexSet,
26+
to_knuth_bendix_word_LenLexTrie as _to_knuth_bendix_word_LenLexTrie,
2727
to_presentation as _to_presentation,
2828
to_presentation_string as _to_presentation_string,
2929
to_presentation_word as _to_presentation_word,
@@ -69,12 +69,12 @@ def _nice_name(type_list):
6969
(_InversePresentation, list[int]): _to_inverse_presentation_word,
7070
(_InversePresentation, str): _to_inverse_presentation_string,
7171
(_KnuthBendix,): _to_knuth_bendix,
72-
(_KnuthBendix, "RewriteTrie"): _to_knuth_bendix_RewriteTrie,
73-
(_KnuthBendix, "RewriteFromLeft"): _to_knuth_bendix_RewriteFromLeft,
74-
(_KnuthBendix, list[int], "RewriteFromLeft"): _to_knuth_bendix_word_RewriteFromLeft,
75-
(_KnuthBendix, list[int], "RewriteTrie"): _to_knuth_bendix_word_RewriteTrie,
76-
(_KnuthBendix, str, "RewriteFromLeft"): _to_knuth_bendix_string_RewriteFromLeft,
77-
(_KnuthBendix, str, "RewriteTrie"): _to_knuth_bendix_string_RewriteTrie,
72+
(_KnuthBendix, "LenLexTrie"): _to_knuth_bendix_LenLexTrie,
73+
(_KnuthBendix, "LenLexSet"): _to_knuth_bendix_LenLexSet,
74+
(_KnuthBendix, list[int], "LenLexSet"): _to_knuth_bendix_word_LenLexSet,
75+
(_KnuthBendix, list[int], "LenLexTrie"): _to_knuth_bendix_word_LenLexTrie,
76+
(_KnuthBendix, str, "LenLexSet"): _to_knuth_bendix_string_LenLexSet,
77+
(_KnuthBendix, str, "LenLexTrie"): _to_knuth_bendix_string_LenLexTrie,
7878
(_Presentation,): _to_presentation,
7979
(_Presentation, str): _to_presentation_string,
8080
(_Presentation, list[int]): _to_presentation_word,

src/to-froidure-pin.cpp

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,11 @@ namespace libsemigroups {
5252
} // namespace
5353

5454
void init_to_froidure_pin(py::module& m) {
55+
using LenLexTrie = detail::RewritingSystemTrie<ShortLexCompare>;
56+
using LenLexSet = detail::RewritingSystemSet<ShortLexCompare>;
57+
using RPOTrie = detail::RewritingSystemTrie<RecursivePathCompare>;
58+
using RPOSet = detail::RewritingSystemSet<RecursivePathCompare>;
59+
5560
// Congruence
5661
bind_to_froidure_pin<Congruence<std::string>>(m);
5762
bind_to_froidure_pin<Congruence<word_type>>(m);
@@ -62,10 +67,10 @@ namespace libsemigroups {
6267
bind_to_froidure_pin<Kambites<word_type>>(m);
6368

6469
// KnuthBendix
65-
bind_to_froidure_pin<KnuthBendix<std::string, detail::RewriteFromLeft>>(m);
66-
bind_to_froidure_pin<KnuthBendix<std::string, detail::RewriteTrie>>(m);
67-
bind_to_froidure_pin<KnuthBendix<word_type, detail::RewriteFromLeft>>(m);
68-
bind_to_froidure_pin<KnuthBendix<word_type, detail::RewriteTrie>>(m);
70+
bind_to_froidure_pin<KnuthBendix<std::string, LenLexSet>>(m);
71+
bind_to_froidure_pin<KnuthBendix<std::string, LenLexTrie>>(m);
72+
bind_to_froidure_pin<KnuthBendix<word_type, LenLexSet>>(m);
73+
bind_to_froidure_pin<KnuthBendix<word_type, LenLexTrie>>(m);
6974

7075
// ToddCoxeter
7176
bind_to_froidure_pin<ToddCoxeter<std::string>>(m);

0 commit comments

Comments
 (0)