Set of elimination based routines for dense linear algebra with matrices over finite prime field of characteristic less than 2^26.
More...
Namespaces |
| namespace | Protected |
Data Structures |
| class | CharpolyFailed |
| class | callLUdivine_small |
| class | callLUdivine_small< double > |
| class | callLUdivine_small< float > |
| class | ModularBalanced< double > |
| class | ModularBalanced< float > |
| class | ModularBalanced< int32_t > |
| class | ModularBalanced< int64_t > |
| class | Modular< double > |
| class | Modular< float > |
| class | Modular< int32_t > |
| | Specialization of Modular to int32_t element type with efficient dot product. More...
|
| class | Modular< int64_t > |
| | Specialization of Modular to int64_t element type with efficient dot product. More...
|
| class | ModularRandIter |
| class | ModularBalancedRandIter |
| class | NonzeroRandIter |
| | Random iterator for nonzero random numbers. More...
|
| class | UnparametricField |
| class | Failure |
| | A precondtion failed. More...
|
Enumerations |
| enum | FFPACK_LUDIVINE_TAG { FfpackLQUP = 1,
FfpackSingular = 2
} |
| enum | FFPACK_CHARPOLY_TAG {
FfpackLUK = 1,
FfpackKG = 2,
FfpackHybrid = 3,
FfpackKGFast = 4,
FfpackDanilevski = 5,
FfpackArithProg = 6,
FfpackKGFastG = 7
} |
| enum | FFPACK_MINPOLY_TAG { FfpackDense = 1,
FfpackKGF = 2
} |
Functions |
| template<class Field > |
| size_t | LUpdate (const Field &F, const FFLAS::FFLAS_DIAG Diag, const FFLAS::FFLAS_TRANSPOSE trans, const size_t M, const size_t N, typename Field::Element *A, const size_t lda, const size_t R, const size_t K, typename Field::Element *B, const size_t ldb, size_t *P, size_t *Q, const FFPACK::FFPACK_LUDIVINE_TAG LuTag, const size_t cutoff) |
| | Updates an existing LU factorisation with more rows.
|
| template<class Polynomial , class Field > |
| Polynomial & | mulpoly (const Field &F, Polynomial &res, const Polynomial &P1, const Polynomial &P2) |
| template<class Field , class Polynomial > |
| std::list< Polynomial > & | Danilevski (const Field &F, std::list< Polynomial > &charp, const size_t N, typename Field::Element *A, const size_t lda) |
| template<class Field , class Polynomial > |
| Polynomial & | MinPoly (const Field &F, Polynomial &minP, const size_t N, const typename Field::Element *A, const size_t lda, typename Field::Element *U, size_t ldu, typename Field::Element *X, size_t ldx, size_t *P) |
| template<class T > |
| std::ostream & | operator<< (std::ostream &o, const Modular< T > &F) |
| template<class T > |
| std::ostream & | operator<< (std::ostream &o, const ModularBalanced< T > &F) |
| template<class T > |
| std::ostream & | operator<< (std::ostream &o, const UnparametricField< T > &F) |
| template<typename Target , typename Source > |
| Target & | Caster (Target &t, const Source &s) |
Set of elimination based routines for dense linear algebra with matrices over finite prime field of characteristic less than 2^26.
This class only provides a set of static member functions. No instantiation is allowed.
It enlarges the set of BLAS routines of the class FFLAS, with higher level routines based on elimination.