libsemigroups  v3.6.0
C++ library for semigroups and monoids
Loading...
Searching...
No Matches
ImageLeftAction< BMat8, BMat8 >

Adapter for the value of a left action.

Defined in adapters.hpp.

Specialisations of this struct should be stateless trivially default constructible with a call operator of signature void operator()(Point& res, Point const& pt, Element const& x) const (possibly noexcept, inline and/or constexpr also).

The call operator should change res in-place to contain the image of the point pt under the left action of the element x. The purpose of the 1st parameter is to avoid repeated allocations of memory to hold temporary points that are discarded soon after they are created.

Template Parameters
Elementthe type of the elements of a semigroup.
Pointthe type of the points acted on.

The third template parameter exists for SFINAE.

Example
template <>
void operator()(BMat8& res, BMat8 pt, BMat8 x) const noexcept {
res = (x * pt).col_space_basis();
}
};
Fast boolean matrices of dimension up to 8 x 8.
Definition bmat8.hpp:81
void operator()(BMat8 &res, BMat8 const &pt, BMat8 const &x) const noexcept
Definition bmat8.hpp:1111
Adapter for the value of a left action.
Definition adapters.hpp:355

Public Member Functions

void operator() (BMat8 &res, BMat8 const &pt, BMat8 const &x) const noexcept

Member Function Documentation

◆ operator()()

void operator() ( BMat8 & res,
BMat8 const & pt,
BMat8 const & x ) const
inlinenoexcept

Changes res in place to hold the image of pt under the left action of x.


The documentation for this struct was generated from the following file:
  • /home/joseph/Dev/Comp_Maths/sandbox/libsemigroups/include/libsemigroups/bmat8.hpp