- Global bench_rank (int carac)
- no gz reader ?
- Global BlackboxContainerBase< Field, Blackbox >::BlackboxContainerBase (const Blackbox *BB, const Field &F, size_t Size)
- no need for F
- Global BlackboxContainerBase< Field, Blackbox >::BlackboxContainerBase (const Blackbox *BB, const Field &F)
- no need for F
- Class BlasMatrix< _Field, _Storage >
why not BlasMatrixDomain ?
necessitates the inclusion of those things after of before. We should not include directly this but just the matrices and they automatically need their domain (for now)
- Global BlasMatrix< _Field, _Storage >::_MD
- why public ?
- Global BlasMatrix< _Field, _Storage >::_ptr
- why public ?
- Global BlasMatrix< _Field, _Storage >::_VD
- why public ?
- Global BlasMatrix< _Field, _Storage >::operator[] (size_t i)
- Rows and Cols should be BlasVectors
- Global BlasMatrix< _Field, _Storage >::random (const size_t &b)
- does not work for submatrices.
- Class BlasMatrix< _Field, _Storage >::rebind< _Tp1 >
- other rep
- Global BlasMatrixDomain< Field_ >::areEqual (const Matrix1 &A, const Matrix2 &B) const
- use refs
- Global BlasMatrixDomain< Field_ >::isIdentity (const Matrix1 &A) const
use refs
use refs
- Global BlasMatrixDomain< Field_ >::isIdentityGeneralized (const Matrix1 &A) const
use refs
use refs
- Global BlasMatrixDomain< Field_ >::isZero (const Matrix1 &A) const
- use refs
- Global BlasMatrixDomain< Field_ >::setZero (Matrix &I) const
- use fflas-ffpack
- Global BlasSubmatrix< _Matrix >::apply (Vector1 &y, const Vector2 &x) const
- every vector we use here should have a stride/be blas vectors so it's not really templated by Vector1 Vector2 in general
- Global BlasSubmatrix< _Matrix >::applyTranspose (Vector1 &y, const Vector2 &x) const
- use Matrix domain
- Global BlasSubmatrix< _Matrix >::BlasSubmatrix (constMatrixType &M, size_t rowbeg, size_t colbeg, size_t Rowdim, size_t Coldim)
- NOT HERE
- Global BlasSubmatrix< _Matrix >::read (std::istream &file)
- reading a submatrix should not be allowed !!
- Global CRABuilderEarlyMultip< Domain_Type >::dot (Integer &z, const Integer &D, const Vect1 &v1, const Vect2 &v2)
- why a dot product here ?
- Global CRABuilderEarlyMultip< Domain_Type >::dot (DomainElement &z, const Domain &D, const Vect1 &v1, const Vect2 &v2)
- why a dot product here ?
- Global distinct (I1 a, I1 b, Lp &c)
this already exists elsewhere
this already exists elsewhere
- Global field_subtests::testRingTrivia (const Field &F, const char *name)
- BlockRing does not know about 0 and 1 !
- Global FieldArchetype::constructor (FieldAbstract *trait, Field_qcq *field_ptr)
- leaks here (new not deleted)
- Global generate_precRatMat (string &filename, RMatrix &M, DVector &den, Integer &denPrec)
- non reentrant strtok
- Class indexDomain
- does not belong here
- Class IndexedCategory< BlasMatrix< Field, _Rep > >
- this is trait, not a Category
- Namespace LinBox
it is dangerous to include matrices defs that include hom for their rebind...
those are not just traits:
this does not belong here.
- Global LinBox::checkBlasPrime (const Prime p)
- why is this hard coded ?
- Global LinBox::CheckRank (const Field &F, const typename Field ::Element *A, const size_t &m, const size_t &n, const size_t &lda, const size_t &alledged_rank)
- not used
- Global LinBox::isPositiveDefinite (const Blackbox &A, const RingCategories::IntegerTag &tag, const Method::Auto &M)
should try a modular minpoly and decide on the degree of that...
this crude size check can be refined
this crude size check can be refined
- Global LinBox::isPositiveDefinite (const Blackbox &A, const RingCategories::IntegerTag &tag, const Method::DenseElimination &M)
- why map (same field)? This is a copy.
- Global LinBox::Protected::checkBlasApply (const Field &F, size_t n)
this does not seem right for float or any non M/modular field: doing blas wherever we have a fflas-ffpack field (?)
should return true for some Givaro::ZRing
- Global LinBox::Protected::Identity (const Field &F, typename Field::Element *Id, const size_t ldI, const size_t lig1, const size_t col1, const size_t lig2, const size_t col2)
- long et size_t ne cohabitent pas bien.
- Global LinBox::Protected::random_rankupdate (Field &F, const Randiter &R, BlasMatrix< Field > &A, int &rank, const RingCategories::IntegerTag &tag)
const !
do perms ?
do perms ?
- Global LinBox::randomAns (const Ring &R, Matrix &Mat, size_t n, size_t epr)
- use BlasVector.
- Global LinBox::RandomMatrixWithDet (const Field &F, typename Field ::Element *A, const size_t &m, const size_t &lda, const typename Field ::Element &det)
- not used
- Global LinBox::rank (size_t &r, const Blackbox &A, const RingCategories::ModularTag &tag, const Method::Auto &m)
- choose (benchmark) better cuttoff (size, nbnz, sparse rep)
- Global LinBox::rank (size_t &res, const Blackbox &A, const RingCategories::ModularTag &tag, const Method::Wiedemann &M)
- This is too much for solutions. It belongs in algorithms
- Global LinBox::rankInPlace (size_t &r, Blackbox &A)
- there is no Elimination() method there.
- Namespace LinBox::SparseFileFormat
- use the enum!!!!
- Global LinBox::VectorWrapper::constRefSpecialized (Vector &v, size_t i, VectorCategories::SparseSequenceVectorTag)
- who is zero ?
- Global LinBox::VectorWrapper::constRefSpecialized (Vector &v, size_t i, VectorCategories::SparseParallelVectorTag)
- who is zero ?
- Global LinBox::VectorWrapper::refSpecialized (Vector &v, size_t i, VectorCategories::SparseSequenceVectorTag)
- who is zero ?
- Global LinBox::VectorWrapper::refSpecialized (Vector &v, size_t i, VectorCategories::SparseParallelVectorTag)
- who is zero ?
- Global main (int argc, char *argv[])
- q or not q ?
- Global main (int ac, char **av)
- : this one completely fails :
- Global main (int argc, char **argv)
testRandomIterator fails
testRandomIterator fails
should be tried on NTZ_LL too
should be tried on NTZ_LL too
- File matrix/random-matrix.h
- this belongs to algorithms...
- Global MatrixDomain< Field_ >::Rep_
- should be BlasVector
- Class MatrixDomain< GF2 >
- this is half done and makes MatrixDomain on GF2 hardly usable.
- Global MatrixDomain< GF2 >::mulColSpecialized (Vector1 &w, const Matrix &A, const Vector2 &v, VectorCategories::DenseZeroOneVectorTag, VectorCategories::DenseZeroOneVectorTag) const
- what's happening here ?
- Class MatrixRank< _Ring, _Field, _RandomPrime >
- there is no generic
rankIn
method.
- Global MatrixRank< _Ring, _Field, _RandomPrime >::rank (const SparseMatrix< Ring, Row > &A) const
- we suppose we can map IRing to Field...
- Global MatrixRank< _Ring, _Field, _RandomPrime >::rank (const BlasMatrix< IRing > &A) const
- we suppose we can map IRing to Field...
- File modular.h
- move Element& init(const Element&) to FFPACK. use using more..
- Global MoorePenrose< Blackbox >::MoorePenrose (const MoorePenrose &A)
- Value of pointer '_matB1', which points to allocated memory, is copied in copy constructor instead of allocating new memory.
- Global OpenCLMatrixDomain< Field_ >::areEqual (const Matrix1 &A, const Matrix2 &B)
- use refs
- Global OpenCLMatrixDomain< Field_ >::isIdentity (const Matrix1 &A)
use refs
use refs
- Global OpenCLMatrixDomain< Field_ >::isIdentityGeneralized (const Matrix1 &A)
use refs
use refs
- Global OpenCLMatrixDomain< Field_ >::isZero (const Matrix1 &A)
- use refs
- Class PLUQMatrix< Field >
- Should really be tempalted by Matrix and be a (sub)domain
- Global PLUQMatrix< Field >::PLUQMatrix (BlasMatrix< Field, _Rep > &A, BlasPermutation< size_t > &P, BlasPermutation< size_t > &Q)
- in place ?
- Global printPolynomial (const Field &F, const Polynomial &v)
- this should be elsewhere
- File rational-reconstruction.h
- there seems to be a confusion between Ring _r, [iI]nteger... Besides we have to check that Ring/Integer/NTL_ZZ are the 'same'.
- Global ScalarMatrix< Field_ >::ScalarMatrix ()
- this should not be allowed (unknown field)
- Global SparseMatrix< _Field, SparseMatrixFormat::COO >::SparseMatrix (const _Field &F, VectStream &stream)
- may be 0...
- Global SparseMatrix< _Field, SparseMatrixFormat::COO::implicit >::apply (Vector &y, const Vector &x, const Element &a) const
- may be 0...
- Global SparseMatrix< _Field, SparseMatrixFormat::CSR >::SparseMatrix (const _Field &F, VectStream &stream)
- may be 0...
- Global SparseMatrix< _Field, SparseMatrixFormat::HYB >::applyTranspose (Vector &y, const Vector &x, const Element &a) const
- if too big, create transpose.
- Global SparseMatrix< Field_, SparseMatrixFormat::TPL >::write (std::ostream &out) const
- we should not support too many formats
- Global SparseMatrixGeneric< _Field, _Row, Trait >::size () const
- should it be elements or non zero elements ?
- Global SparseMatrixWriteHelper< Matrix >::write (const Matrix &A, std::ostream &os, Tag::FileFormat format)
- this is reall the "generic" one
- File test-charpoly.C
occasionnnaly there is a "SIGFPE, Arithmetic exception." in CRA
testRandomCharpoly is not always tested !!
- File test-commentator.C
- this test does not even test if anything is outputted (and it passes even though)
- File test-ffpack.C
- this file does not compile or the test fails for some fields.
- File test-ftrmm.C
ftrmm fails on non-double transposed versions.
is fgemm correct on null A and B ?
- File test-matrix-stream.C
- this tests reveals memory leaks
- File test-matrix-utils.h
- put in
matrix/random-matrix.h
- File test-smith-form.C
- should work for NTL Integers too
- Global test_fgemm (std::ostream &report, const Field &F)
if beta != 0 but A and B are 0 (or don't exist) then C != beta C
needs p prime.
- Global test_ftrmm (std::ostream &report, const Field &F)
same code as above ?
same code as above ?
same code as above ?
same code as above ?
same code as above ?
same code as above ?
- Global test_full_multip_matrix (std::ostream &report, size_t PrimeSize, size_t Size, std::pair< size_t, size_t > dims)
- it is not possible to allocate some memory and use submatrices ?
- Global Toeplitz< typename _PRing::CoeffField, _PRing >::write (std::ostream &os=std::cout) const
- this is not MM format at all
- Class Transpose< Blackbox >
- no write here. test-blackbox.h requires it
- Class ZOQuad< _Field >
- needs read for test-blackbox.h