FroidurePin(std::vector<element_type> const *)¶
-
libsemigroups::FroidurePin
::
FroidurePin
(std::vector<element_type> const *gens)¶ Construct from generators.
This is the default constructor for a semigroup generated by a vector of generators. There can be duplicate generators and although they do not count as distinct elements, they do count as distinct generators. In other words, the generators of the semigroup are precisely (a copy of)
gens
in the same order they occur ingens
.The generators
gens
are copied by the constructor, and so it is the responsibility of the caller to deletegens
.- Complexity
Constant.
- Parameters
gens
: the generators of the semigroup represented bythis
.
- Exceptions
LibsemigroupsException
: ifgens
is empty, or FroidurePin::Degree()(x) != FroidurePin::Degree()(y) forx
,y
ingens
.