linbox
LiftingContainerBase< _Ring, _IMatrix > Class Template Referenceabstract

#include <lifting-container.h>

+ Inheritance diagram for LiftingContainerBase< _Ring, _IMatrix >:

Data Structures

class  const_iterator
 

Public Types

typedef _IMatrix IMatrix
 
typedef _Ring Ring
 
typedef _Ring::Element Integer_t
 
typedef BlasVector< _Ring > IVector
 

Public Member Functions

template<class Prime_Type, class Vector1>
 LiftingContainerBase (const Ring &R, const IMatrix &A, const Vector1 &b, const Prime_Type &p)
 
virtual IVectornextdigit (IVector &, const IVector &) const =0
 
const_iterator begin () const
 
const_iterator end () const
 
virtual size_t length () const
 
virtual size_t size () const
 
virtual const Ringring () const
 
virtual const Integer_tprime () const
 
const Integer_t numbound () const
 
const Integer_t denbound () const
 
const IMatrixgetMatrix () const
 
const IVectorgetVector () const
 

Protected Member Functions

void convertPrime (Integer_t &e, const integer &p)
 
void convertPrime (Integer_t &e, const std::vector< integer > &p)
 

Protected Attributes

const IMatrix_matA
 
Ring _intRing
 
Integer_t _p
 
IVector _b
 
VectorDomain< Ring_VDR
 
size_t _length
 
Integer_t _numbound
 
Integer_t _denbound
 
MatrixApplyDomain< Ring, IMatrix_MAD
 

Member Typedef Documentation

◆ IMatrix

template<class _Ring, class _IMatrix>
typedef _IMatrix IMatrix

◆ Ring

template<class _Ring, class _IMatrix>
typedef _Ring Ring

◆ Integer_t

template<class _Ring, class _IMatrix>
typedef _Ring::Element Integer_t

◆ IVector

template<class _Ring, class _IMatrix>
typedef BlasVector<_Ring> IVector

Constructor & Destructor Documentation

◆ LiftingContainerBase()

template<class _Ring, class _IMatrix>
template<class Prime_Type, class Vector1>
LiftingContainerBase ( const Ring & R,
const IMatrix & A,
const Vector1 & b,
const Prime_Type & p )
inline

Member Function Documentation

◆ convertPrime() [1/2]

template<class _Ring, class _IMatrix>
void convertPrime ( Integer_t & e,
const integer & p )
inlineprotected

◆ convertPrime() [2/2]

template<class _Ring, class _IMatrix>
void convertPrime ( Integer_t & e,
const std::vector< integer > & p )
inlineprotected

◆ nextdigit()

template<class _Ring, class _IMatrix>
virtual IVector & nextdigit ( IVector & ,
const IVector &  ) const
pure virtual

◆ begin()

template<class _Ring, class _IMatrix>
const_iterator begin ( ) const
inline

◆ end()

template<class _Ring, class _IMatrix>
const_iterator end ( ) const
inline

◆ length()

template<class _Ring, class _IMatrix>
virtual size_t length ( ) const
inlinevirtual

◆ size()

template<class _Ring, class _IMatrix>
virtual size_t size ( ) const
inlinevirtual

◆ ring()

template<class _Ring, class _IMatrix>
virtual const Ring & ring ( ) const
inlinevirtual

◆ prime()

template<class _Ring, class _IMatrix>
virtual const Integer_t & prime ( ) const
inlinevirtual

◆ numbound()

template<class _Ring, class _IMatrix>
const Integer_t numbound ( ) const
inline

◆ denbound()

template<class _Ring, class _IMatrix>
const Integer_t denbound ( ) const
inline

◆ getMatrix()

template<class _Ring, class _IMatrix>
const IMatrix & getMatrix ( ) const
inline

◆ getVector()

template<class _Ring, class _IMatrix>
const IVector & getVector ( ) const
inline

Field Documentation

◆ _matA

template<class _Ring, class _IMatrix>
const IMatrix& _matA
protected

◆ _intRing

template<class _Ring, class _IMatrix>
Ring _intRing
protected

◆ _p

template<class _Ring, class _IMatrix>
Integer_t _p
protected

◆ _b

template<class _Ring, class _IMatrix>
IVector _b
protected

◆ _VDR

template<class _Ring, class _IMatrix>
VectorDomain<Ring> _VDR
protected

◆ _length

template<class _Ring, class _IMatrix>
size_t _length
protected

◆ _numbound

template<class _Ring, class _IMatrix>
Integer_t _numbound
protected

◆ _denbound

template<class _Ring, class _IMatrix>
Integer_t _denbound
protected

◆ _MAD

template<class _Ring, class _IMatrix>
MatrixApplyDomain<Ring,IMatrix> _MAD
protected

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