![]() |
libsemigroups
v3.0.0
C++ library for semigroups and monoids
|
This page contains documentation related to safely constructing a PPerm instance.
make
function. Functions | |
template<typename Return, typename Container> | |
enable_if_is_same< Return, HPCombi::PPerm16 > | make (Container &&cont) |
Construct a HPCombi::PPerm16 from container and check. | |
template<typename Return, typename OtherContainer> | |
std::enable_if_t< IsPPerm< Return >, Return > | make (OtherContainer &&cont) |
Construct a PPerm from universal reference container and check. | |
template<typename Return, typename Int> | |
enable_if_is_same< Return, HPCombi::PPerm16 > | make (std::initializer_list< Int > dom, std::initializer_list< Int > ran, size_t M) |
Construct a HPCombi::PPerm16 from domain, range, and degree, and check. | |
template<typename Return> | |
std::enable_if_t< IsPPerm< Return >, Return > | make (std::initializer_list< typename Return::point_type > cont) |
Construct a PPerm from initializer list and check. | |
template<typename Return> | |
std::enable_if_t< IsPPerm< Return >, Return > | make (std::initializer_list< typename Return::point_type > dom, std::initializer_list< typename Return::point_type > ran, size_t M) |
Construct a PPerm from domain, range, and degree, and check. | |
template<typename Return> | |
std::enable_if_t< IsPPerm< Return >, Return > | make (std::vector< typename Return::point_type > const &dom, std::vector< typename Return::point_type > const &ran, size_t M) |
Construct a PPerm from domain, range, and degree, and check. | |
template<typename Return> | |
enable_if_is_same< Return, HPCombi::PPerm16 > | make (std::vector< uint8_t > const &dom, std::vector< uint8_t > const &ran, size_t deg=16) |
Construct a HPCombi::PPerm16 from domain, range, and degree, and check. | |
|
nodiscard |
Constructs a HPCombi::PPerm16 initialized using the container cont
as follows: the image of the point i
under the partial perm is the value in position i
of the container cont
.
Return | the return type. Must by HPCombi::PPerm16. |
Container | type of the container. |
cont | the container. |
HPCombi::PPerm16
instance.LibsemigroupsException | if any of the following hold:
|
cont
.
|
nodiscard |
Constructs a PPerm initialized using the container cont
as follows: the image of the point i
under the partial permutation is the value in position i
of the container cont
.
Return | the return type. Must satisfy IsPPerm<Return>. |
OtherContainer | universal reference for the type of the container. |
cont | the container. |
N
.LibsemigroupsException | if any of the following hold:
|
cont
.
|
nodiscard |
Constructs a partial perm of degree M
such that f[dom[i]] = ran[i]
for all i
and which is 0xFF
on every other value in the range \([0, M)\).
Return | the return type, must be HPCombi::PPerm16. |
dom | the domain. |
ran | the range. |
M | the degree. |
LibsemigroupsException | if any of the following fail to hold:
|
dom
.
|
nodiscard |
Constructs a PPerm initialized using the container cont
as follows: the image of the point i
under the partial permutation is the value in position i
of the container cont
.
Return | the return type. Must satisfy IsPPerm<Return>. |
cont | the container. |
N
.LibsemigroupsException | if any of the following hold:
|
cont
.
|
nodiscard |
Constructs a partial perm of degree M
such that f[dom[i]] = ran[i]
for all i
and which is UNDEFINED on every other value in the range \([0, M)\).
Return | the return type. Must satisfy IsPPerm<Return>. |
dom | the domain. |
ran | the range. |
M | the degree. |
LibsemigroupsException | if any of the following fail to hold:
|
dom
.
|
nodiscard |
Constructs a partial perm of degree M
such that f[dom[i]] = ran[i]
for all i
and which is UNDEFINED on every other value in the range \([0, M)\).
Return | the return type. Must satisfy IsPPerm<Return>. |
dom | the domain. |
ran | the range. |
M | the degree. |
LibsemigroupsException | if any of the following fail to hold:
|
dom
.
|
nodiscard |
Constructs a partial perm of degree deg
such that f[dom[i]] = ran[i]
for all i
and which is 0xFF
on every other value in the range \([0, M)\).
Return | the return type, must be HPCombi::PPerm16. |
dom | the domain. |
ran | the range. |
deg | the degree. |
LibsemigroupsException | if any of the following fail to hold:
|
dom
.