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.