![]() |
libsemigroups
v3.0.0
C++ library for semigroups and monoids
|
Defined in transf.hpp
.
Static partial transformations.
This is a class for partial transformations where the number of points acted on (the degree) is set at compile time.
Scalar | an unsigned integer type. |
Public Types | |
using | container_type = std::array<Scalar, N> |
Type of the underlying container. | |
using | point_type = Scalar |
Type of the image values. | |
![]() | |
using | const_iterator |
Type of const iterators point to image values. | |
using | container_type |
Type of the underlying container. | |
using | iterator |
Type of iterators point to image values. | |
using | point_type |
Type of the image values. | |
Public Member Functions | |
StaticPTransf () | |
Default constructor. | |
StaticPTransf (size_t n) | |
Construct with given degree. | |
const_iterator | begin () const noexcept |
Returns a const_iterator (random access iterator) pointing at the first image value. | |
iterator | begin () noexcept |
Returns an iterator (random access iterator) pointing at the first image value. | |
const_iterator | end () const noexcept |
Returns a const_iterator (random access iterator) pointing one past the last image value. | |
iterator | end () noexcept |
Returns an iterator (random access iterator) pointing one past the last image value. | |
StaticPTransf & | increase_degree_by (size_t) |
Increase the degree in-place. | |
![]() | |
PTransfBase ()=default | |
Default constructor. | |
PTransfBase ()=default | |
Default constructor. | |
PTransfBase (Iterator first, Iterator last) | |
Construct from a range of images. | |
PTransfBase (Iterator first, Iterator last) | |
Construct from a range of images. | |
PTransfBase (PTransfBase &&)=default | |
Default move constructor. | |
PTransfBase (PTransfBase &&)=default | |
Default move constructor. | |
PTransfBase (PTransfBase const &)=default | |
Default copy constructor. | |
PTransfBase (PTransfBase const &)=default | |
Default copy constructor. | |
PTransfBase (std::array< Scalar, N > &&cont) | |
Construct from a container of images. | |
PTransfBase (std::array< Scalar, N > &&cont) | |
Construct from a container of images. | |
PTransfBase (std::array< Scalar, N > const &cont) | |
Construct from a container of images. | |
PTransfBase (std::array< Scalar, N > const &cont) | |
Construct from a container of images. | |
PTransfBase (std::initializer_list< Scalar > cont) | |
Construct from a container of images. | |
PTransfBase (std::initializer_list< Scalar > cont) | |
Construct from a container of images. | |
point_type & | at (size_t i) |
Get a reference to the image of a point. | |
point_type & | at (size_t i) |
Get a reference to the image of a point. | |
point_type const & | at (size_t i) const |
Get a const reference to the image of a point. | |
point_type const & | at (size_t i) const |
Get a const reference to the image of a point. | |
const_iterator | begin () const noexcept |
Returns a const_iterator (random access iterator) pointing at the first image value. | |
const_iterator | begin () const noexcept |
Returns a const_iterator (random access iterator) pointing at the first image value. | |
iterator | begin () noexcept |
Returns an iterator (random access iterator) pointing at the first image value. | |
iterator | begin () noexcept |
Returns an iterator (random access iterator) pointing at the first image value. | |
const_iterator | cbegin () const noexcept |
Returns a const_iterator (random access iterator) pointing at the first image value. | |
const_iterator | cbegin () const noexcept |
Returns a const_iterator (random access iterator) pointing at the first image value. | |
const_iterator | cend () const noexcept |
Returns a const_iterator (random access iterator) pointing one past the last image value. | |
const_iterator | cend () const noexcept |
Returns a const_iterator (random access iterator) pointing one past the last image value. | |
size_t | degree () const noexcept |
Returns the degree of a partial transformation. | |
size_t | degree () const noexcept |
Returns the degree of a partial transformation. | |
const_iterator | end () const noexcept |
Returns a const_iterator (random access iterator) pointing one past the last image value. | |
const_iterator | end () const noexcept |
Returns a const_iterator (random access iterator) pointing one past the last image value. | |
iterator | end () noexcept |
Returns an iterator (random access iterator) pointing one past the last image value. | |
iterator | end () noexcept |
Returns an iterator (random access iterator) pointing one past the last image value. | |
size_t | hash_value () const |
Returns a hash value. | |
size_t | hash_value () const |
Returns a hash value. | |
bool | operator!= (PTransfBase const &that) const |
Compare for inequality. | |
bool | operator!= (PTransfBase const &that) const |
Compare for inequality. | |
Subclass | operator* (Subclass const &that) const |
Multiply by another partial transformation. | |
Subclass | operator* (Subclass const &that) const |
Multiply by another partial transformation. | |
bool | operator< (PTransfBase const &that) const |
Compare for less. | |
bool | operator< (PTransfBase const &that) const |
Compare for less. | |
bool | operator<= (PTransfBase const &that) const |
Compare for less than or equal. | |
bool | operator<= (PTransfBase const &that) const |
Compare for less than or equal. | |
PTransfBase & | operator= (PTransfBase &&)=default |
Default move assignment operator. | |
PTransfBase & | operator= (PTransfBase &&)=default |
Default move assignment operator. | |
PTransfBase & | operator= (PTransfBase const &)=default |
Default copy assignment operator. | |
PTransfBase & | operator= (PTransfBase const &)=default |
Default copy assignment operator. | |
bool | operator== (PTransfBase const &that) const |
Compare for equality. | |
bool | operator== (PTransfBase const &that) const |
Compare for equality. | |
bool | operator> (PTransfBase const &that) const |
Compare for greater. | |
bool | operator> (PTransfBase const &that) const |
Compare for greater. | |
bool | operator>= (PTransfBase const &that) const |
Compare for greater than or equal. | |
bool | operator>= (PTransfBase const &that) const |
Compare for greater than or equal. | |
point_type & | operator[] (size_t i) |
Get a reference to the image of a point. | |
point_type & | operator[] (size_t i) |
Get a reference to the image of a point. | |
point_type const & | operator[] (size_t i) const |
Get a const reference to the image of a point. | |
point_type const & | operator[] (size_t i) const |
Get a const reference to the image of a point. | |
size_t | rank () const |
Returns the number of distinct image values. | |
size_t | rank () const |
Returns the number of distinct image values. | |
void | swap (PTransfBase &that) noexcept |
Swap with another partial transformation. | |
void | swap (PTransfBase &that) noexcept |
Swap with another partial transformation. | |
Additional Inherited Members | |
![]() | |
static Subclass | make (OtherContainer &&cont) |
Construct from universal reference container and check. | |
static Subclass | make (OtherContainer &&cont) |
Construct from universal reference container and check. | |
static Subclass | make (std::initializer_list< OtherScalar > cont) |
Construct from std::initializer_list and check. | |
static Subclass | make (std::initializer_list< OtherScalar > cont) |
Construct from std::initializer_list and check. | |
static Subclass | one (size_t N) |
Returns the identity transformation on the given number of points. | |
static Subclass | one (size_t N) |
Returns the identity transformation on the given number of points. | |
static point_type | undef () noexcept |
Returns the value used to represent "undefined". | |
static point_type | undef () noexcept |
Returns the value used to represent "undefined". | |
using container_type = std::array<Scalar, N> |
In this case, this is std::array<point_type, N>
.
using point_type = Scalar |
Also the template parameter Scalar
.
|
inline |
Constructs a partial transformation of degree equal to the template parameter N
with the image of every point set to UNDEFINED.
N
.
|
explicit |
This function constructs the same partial transformation as the default constructor, and exists only for consistency of interface with DynamicPTransf.
n | the degree of the partial transformation being constructed. |
LibsemigroupsException | if n is not equal to the class template parameter N . |
|
inlinenodiscardnoexcept |
noexcept
and is guaranteed never to throw.
|
inlinenodiscardnoexcept |
noexcept
and is guaranteed never to throw.
|
inlinenodiscardnoexcept |
noexcept
and is guaranteed never to throw.
|
inlinenodiscardnoexcept |
noexcept
and is guaranteed never to throw.
|
inline |
This doesn't make sense for this type, and it throws every time.
LibsemigroupsException | every time. |