linbox
PolynomialMatrixKaraDomain< _Field > Class Template Reference

#include <matpoly-mult-kara.h>

Public Types

typedef _Field Field
 
typedef PolynomialMatrix< Field, PMType::polfirstMatrixP
 
typedef PolynomialMatrix< Field, PMType::matfirstPMatrix
 

Public Member Functions

const Fieldfield () const
 
 PolynomialMatrixKaraDomain (const Field &F)
 
template<typename Matrix1, typename Matrix2, typename Matrix3>
void mul (Matrix1 &c, const Matrix2 &a, const Matrix3 &b) const
 
template<typename Matrix1, typename Matrix2, typename Matrix3>
void midproduct (Matrix1 &c, const Matrix2 &a, const Matrix3 &b) const
 

Protected Member Functions

template<typename PMatrix1, typename PMatrix2, typename PMatrix3, typename PMatrix4>
void Karatsuba_mul (PMatrix1 &C, const PMatrix2 &A, const PMatrix3 &B, PMatrix4 &TMP) const
 
template<typename PMatrix1, typename PMatrix2, typename PMatrix3, typename PMatrix4>
void Karatsuba_midproduct (PMatrix1 &C, const PMatrix2 &A, const PMatrix3 &B, PMatrix4 &TMP) const
 

Member Typedef Documentation

◆ Field

template<class _Field>
typedef _Field Field

◆ MatrixP

template<class _Field>
typedef PolynomialMatrix<Field, PMType::polfirst> MatrixP

◆ PMatrix

template<class _Field>
typedef PolynomialMatrix<Field, PMType::matfirst> PMatrix

Constructor & Destructor Documentation

◆ PolynomialMatrixKaraDomain()

template<class _Field>
PolynomialMatrixKaraDomain ( const Field & F)
inline

Member Function Documentation

◆ field()

template<class _Field>
const Field & field ( ) const
inline

◆ mul()

template<class _Field>
template<typename Matrix1, typename Matrix2, typename Matrix3>
void mul ( Matrix1 & c,
const Matrix2 & a,
const Matrix3 & b ) const
inline

◆ midproduct()

template<class _Field>
template<typename Matrix1, typename Matrix2, typename Matrix3>
void midproduct ( Matrix1 & c,
const Matrix2 & a,
const Matrix3 & b ) const
inline

◆ Karatsuba_mul()

template<class _Field>
template<typename PMatrix1, typename PMatrix2, typename PMatrix3, typename PMatrix4>
void Karatsuba_mul ( PMatrix1 & C,
const PMatrix2 & A,
const PMatrix3 & B,
PMatrix4 & TMP ) const
inlineprotected

◆ Karatsuba_midproduct()

template<class _Field>
template<typename PMatrix1, typename PMatrix2, typename PMatrix3, typename PMatrix4>
void Karatsuba_midproduct ( PMatrix1 & C,
const PMatrix2 & A,
const PMatrix3 & B,
PMatrix4 & TMP ) const
inlineprotected

The documentation for this class was generated from the following file: