Konieczny(std::vector<element_type> const&)¶
-
inline explicit libsemigroups::Konieczny::Konieczny(std::vector<element_type> const &gens)¶
Construct from generators.
This is the standard constructor for a Konieczny instance 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
.- Parameters
gens – the generators of the semigroup represented by
this
.- Throws
LibsemigroupsException – if
gens
is empty, or Konieczny::Degree()(x) != Konieczny::Degree()(y) forx
,y
ingens
.