42 #ifndef ALAP_PERMUTATION_H
43 #define ALAP_PERMUTATION_H
45 #include "AbstractLinAlgPack_Types.hpp"
47 namespace AbstractLinAlgPack {
75 virtual size_type
dim()
const = 0;
81 virtual std::ostream&
output(std::ostream& out)
const = 0;
132 #endif // ALAP_PERMUTATION_H
Abstract interface for immutable, finite dimensional, coordinate vectors {abstract}.
virtual const VectorSpace & space() const =0
Return a reference to a vector space object that this permutation is compatible with.
virtual size_type dim() const =0
Return the dimension of the permutation.
virtual void permute(BLAS_Cpp::Transp P_trans, const Vector &x, VectorMutable *y) const =0
Permute a vector op(P)*x -> y
Abstract interface for objects that represent a space for mutable coordinate vectors.
virtual std::ostream & output(std::ostream &out) const =0
Prints debug type of information.
virtual bool is_identity() const =0
Returns true if this is the identity permutation I.
Abstract interface to permutation matrices.
Abstract interface for mutable coordinate vectors {abstract}.