|
linbox
|
Namespaces | |
| namespace | mulMethod |
| BLAS3 Multiplication methods. | |
| namespace | Protected |
Functions | |
| template<class _anyMatrix> | |
| _anyMatrix & | mul (_anyMatrix &C, const _anyMatrix &A, const _anyMatrix &B, const mulMethod::CRA &) |
| template<class DenseIntMat> | |
| DenseIntMat & | mul (DenseIntMat &C, const DenseIntMat &A, const DenseIntMat &B, const mulMethod::FLINT &) |
| template<class _anyMatrix, class _otherMatrix1, class _otherMatrix2> | |
| _anyMatrix & | mul (_anyMatrix &C, const _otherMatrix1 &A, const _otherMatrix2 &B, const mulMethod::naive &) |
| Triple loop ! | |
| template<class Zpz> | |
| BlasMatrix< Zpz > & | ToomCook (BlasMatrix< Zpz > &TC, BlasMatrix< Zpz > &iTC) |
| Build the Toom-Cook matrix helper. | |
| template<class Zpz, class GF> | |
| std::vector< BlasMatrix< Zpz > > & | mul (std::vector< BlasMatrix< Zpz > > &C, const std::vector< BlasMatrix< Zpz > > &A, const std::vector< BlasMatrix< Zpz > > &B, const mulMethod::ToomCook< GF > &T) |
| template<class Zpz> | |
| BlasMatrix< Givaro::Extension< Zpz > > & | mul (BlasMatrix< Givaro::Extension< Zpz > > &C, const BlasMatrix< Givaro::Extension< Zpz > > &A, const BlasMatrix< Givaro::Extension< Zpz > > &B, const mulMethod::ToomCook< Givaro::Extension< Zpz > > &T) |
| Toom-Cook multiplication for GF(p^e) | |
| template<class Zpz, class GFq> | |
| std::vector< BlasMatrix< Zpz > > & | mul (std::vector< BlasMatrix< Zpz > > &C, const std::vector< BlasMatrix< Zpz > > &A, const std::vector< BlasMatrix< Zpz > > &B, const mulMethod::ToomCook< GFq > &T) |
| Toom-Cook multiplication for GF(p^e) A matrix over GF(p^e) is represented by a polynomial of Z/pZ matrices. | |
| template<class DenseIntMat> | |
| DenseIntMat & | mul (DenseIntMat &C, const DenseIntMat &A, const DenseIntMat &B, const mulMethod::CRA &) |
| _anyMatrix & mul | ( | _anyMatrix & | C, |
| const _anyMatrix & | A, | ||
| const _anyMatrix & | B, | ||
| const mulMethod::CRA & | ) |
| DenseIntMat & mul | ( | DenseIntMat & | C, |
| const DenseIntMat & | A, | ||
| const DenseIntMat & | B, | ||
| const mulMethod::FLINT & | ) |
| _anyMatrix & mul | ( | _anyMatrix & | C, |
| const _otherMatrix1 & | A, | ||
| const _otherMatrix2 & | B, | ||
| const mulMethod::naive & | ) |
Triple loop !
just a simple triple loop
| [out] | C | result |
| [in] | A | matrix |
| [in] | B | matrix |
| BlasMatrix< Zpz > & ToomCook | ( | BlasMatrix< Zpz > & | TC, |
| BlasMatrix< Zpz > & | iTC ) |
Build the Toom-Cook matrix helper.
We only provide this function for dense matrices (Blas for the moment) over Z/pZ.
| [out] | TC | matrix of Fp(i^j) |
| [out] | iTC | inverse of TC |
TC | std::vector< BlasMatrix< Zpz > > & mul | ( | std::vector< BlasMatrix< Zpz > > & | C, |
| const std::vector< BlasMatrix< Zpz > > & | A, | ||
| const std::vector< BlasMatrix< Zpz > > & | B, | ||
| const mulMethod::ToomCook< GF > & | T ) |
| BlasMatrix< Givaro::Extension< Zpz > > & mul | ( | BlasMatrix< Givaro::Extension< Zpz > > & | C, |
| const BlasMatrix< Givaro::Extension< Zpz > > & | A, | ||
| const BlasMatrix< Givaro::Extension< Zpz > > & | B, | ||
| const mulMethod::ToomCook< Givaro::Extension< Zpz > > & | T ) |
Toom-Cook multiplication for GF(p^e)
| Zpz | is some modular field, GFq is Givaro::Extension (or the like) |
| [out] | C | result |
| A | matrix | |
| B | matrix |
| std::vector< BlasMatrix< Zpz > > & mul | ( | std::vector< BlasMatrix< Zpz > > & | C, |
| const std::vector< BlasMatrix< Zpz > > & | A, | ||
| const std::vector< BlasMatrix< Zpz > > & | B, | ||
| const mulMethod::ToomCook< GFq > & | T ) |
Toom-Cook multiplication for GF(p^e) A matrix over GF(p^e) is represented by a polynomial of Z/pZ matrices.
| Zpz | is some modular field, GFq is Givaro::Extension (or the like) |
| [out] | C | result |
| A | matrix | |
| B | matrix |
| DenseIntMat & mul | ( | DenseIntMat & | C, |
| const DenseIntMat & | A, | ||
| const DenseIntMat & | B, | ||
| const mulMethod::CRA & | ) |