StaticPTransf

template<size_t N, typename Scalar>
class StaticPTransf : public libsemigroups::detail::PTransfBase<Scalar, std::array<Scalar, N>>

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.

Template Parameters:

Scalar – an unsigned integer type.

Member types

const_iterator

Type of const iterators point to image values.

container_type

Type of the underlying container.

iterator

Type of iterators point to image values.

value_type

Type of the image values.

Constructors

StaticPTransf(size_t)

Default constructor.

Static member functions

identity() const

Returns the identity transformation on degree() points.

identity(size_t)

Returns the identity transformation on the given number of points.

make(TContainerAgain &&)

Construct from a container and validates.

make(std::initializer_list< value_type > const &)

Construct from an initializer list.

Modifiers

increase_degree_by(size_t)

Increase the degree in-place.

swap(PTransfBase &) noexcept

Swap with another partial transformation.

Iterators

begin() const noexcept

begin() noexcept

Returns an iterator (random access iterator) pointing at the first image value.

cbegin() const noexcept

Returns a const_iterator (random access iterator) pointing at the first image value.

cend() const noexcept

Returns a const_iterator (random access iterator) pointing one past the last image value.

end() const noexcept

end() noexcept

Returns an iterator (random access iterator) pointing one past the last image value.

Operators

at(size_t)

Get a reference to the image of a point.

at(size_t) const

Get a const reference to the image of a point.

operator!=(PTransfBase const &) const

Compare for inequality.

operator*(TSubclass const &) const

Multiply by another partial transformation.

operator<(PTransfBase const &) const

Compare for less.

operator<=(PTransfBase const &) const

Compare for less than or equal.

operator==(PTransfBase const &) const

Compare for equality.

operator>(PTransfBase const &) const

Compare for greater.

operator>=(PTransfBase const &) const

Compare for greater than or equal.

operator[](size_t)

Get a reference to the image of a point.

operator[](size_t) const

Get a const reference to the image of a point.

Other member functions

degree() const noexcept

Returns the degree of a partial transformation.

hash_value() const

Returns a hash value.

rank() const

Returns the number of distinct image values.

undef() noexcept

Returns the value used to represent “undefined”.