CongruenceByPairs(congruence_type, T const&)ΒΆ
-
template<typename
T
>libsemigroups::CongruenceByPairs
::
CongruenceByPairs
(congruence_type type, T const &fp) Construct a CongruenceByPairs over the FroidurePin instance
fp
representing a left/right/2-sided congruence according totype
.- Complexity
Constant.
- Warning
the parameter
T& S
is copied, this might be expensive, use a std::shared_ptr to avoid the copy!- Template Parameters
T
: a class derived from FroidurePinBase. It is required thatT::element_type
be the same as CongruenceByPairs::element_type (which is the same as the template parameterTElementType
).
- Parameters
type
: whether the congruence is left, right, or 2-sidedfp
: a reference to the semigroup over which the congruence is defined.
- Exceptions
LibsemigroupsException
: iftype
and the template parameterT
are incompatible. Currently, this is whentype
is notcongruence_type::right
andT::element_type
is TCE.