# Product¶

template<typename T>
struct Product<T, std::enable_if_t<IsMatrix<T>>>

Defined in matrix.hpp.

Specialization of the adapter Product for types T such that the value of IsMatrix<T> is true.

Tparam

T the type of matrices.

inline void operator()(T &xy, T const &x, T const &y, size_t = 0) const

Replaces the value of xy by the product of the matrices x and y.

Parameters
• xy – a reference to a matrix of type T.

• x – a const reference to a matrix of type T.

• y – a const reference to a matrix of type T.

Returns

(None)

Exceptions

This function guarantees not to throw a LibsemigroupsException.

Complexity

$$O(m ^ 2)$$ where $$m$$ is the number of rows of the matrix x.

Warning

This function only works for square matrices.

For further details see: void StaticMatrix::product_inplace(StaticMatrix const& A, StaticMatrix const& B), void DynamicMatrix::product_inplace(DynamicMatrix const& A, DynamicMatrix const& B).