linbox
PolySmithFormDomain< Ring > Class Template Reference

#include <poly-smith-form.h>

Public Types

typedef Ring::Element Polynomial
 
typedef Ring::Coeff Coeff
 
typedef Ring::RandIter RandIter
 
typedef MatrixDomain< RingMatrixDom
 
typedef MatrixDom::OwnMatrix Matrix
 
typedef MatrixDom::Matrix SubMatrix
 

Public Member Functions

 PolySmithFormDomain (const Ring &R)
 
 PolySmithFormDomain (const PolySmithFormDomain &D)
 
template<class Matrix1>
void local (std::vector< Polynomial > &result, const Matrix1 &M, const Polynomial &f, long multiplicity) const
 
template<class Matrix1>
void localRank (std::vector< Polynomial > &result, const Matrix1 &M, const Polynomial &f) const
 
template<class Matrix1>
void localFactored (std::vector< Polynomial > &result, const Matrix1 &M, const Polynomial &sf_factor, long multiplicity) const
 
template<class Matrix1>
void localFactoredRank (std::vector< Polynomial > &result, const Matrix1 &M, const Polynomial &sf_factor) const
 
template<class Matrix1>
void solve (std::vector< Polynomial > &result, const Matrix1 &M, const Polynomial &det, bool isDet=false) const
 
template<class Iterator>
size_t detLimit (const Iterator &begin, const Iterator &end) const
 
template<class Matrix1>
size_t detLimit (const Matrix1 &M) const
 
template<class Matrix1>
void detLocalX (Polynomial &det, const Matrix1 &M) const
 
template<class Matrix1>
void detPopov (Polynomial &det, const Matrix1 &M) const
 
template<class Matrix1>
bool dixon (Polynomial &minpoly, const Matrix1 &M, const Polynomial &f, size_t max_deg) const
 
template<class Matrix1>
bool dixon (Polynomial &mp, const Matrix1 &M) const
 

Member Typedef Documentation

◆ Polynomial

template<class Ring>
typedef Ring::Element Polynomial

◆ Coeff

template<class Ring>
typedef Ring::Coeff Coeff

◆ RandIter

template<class Ring>
typedef Ring::RandIter RandIter

◆ MatrixDom

template<class Ring>
typedef MatrixDomain<Ring> MatrixDom

◆ Matrix

template<class Ring>
typedef MatrixDom::OwnMatrix Matrix

◆ SubMatrix

template<class Ring>
typedef MatrixDom::Matrix SubMatrix

Constructor & Destructor Documentation

◆ PolySmithFormDomain() [1/2]

template<class Ring>
PolySmithFormDomain ( const Ring & R)
inline

◆ PolySmithFormDomain() [2/2]

template<class Ring>
PolySmithFormDomain ( const PolySmithFormDomain< Ring > & D)
inline

Member Function Documentation

◆ local()

template<class Ring>
template<class Matrix1>
void local ( std::vector< Polynomial > & result,
const Matrix1 & M,
const Polynomial & f,
long multiplicity ) const
inline

◆ localRank()

template<class Ring>
template<class Matrix1>
void localRank ( std::vector< Polynomial > & result,
const Matrix1 & M,
const Polynomial & f ) const
inline

◆ localFactored()

template<class Ring>
template<class Matrix1>
void localFactored ( std::vector< Polynomial > & result,
const Matrix1 & M,
const Polynomial & sf_factor,
long multiplicity ) const
inline

◆ localFactoredRank()

template<class Ring>
template<class Matrix1>
void localFactoredRank ( std::vector< Polynomial > & result,
const Matrix1 & M,
const Polynomial & sf_factor ) const
inline

◆ solve()

template<class Ring>
template<class Matrix1>
void solve ( std::vector< Polynomial > & result,
const Matrix1 & M,
const Polynomial & det,
bool isDet = false ) const
inline

◆ detLimit() [1/2]

template<class Ring>
template<class Iterator>
size_t detLimit ( const Iterator & begin,
const Iterator & end ) const
inline

◆ detLimit() [2/2]

template<class Ring>
template<class Matrix1>
size_t detLimit ( const Matrix1 & M) const
inline

◆ detLocalX()

template<class Ring>
template<class Matrix1>
void detLocalX ( Polynomial & det,
const Matrix1 & M ) const
inline

◆ detPopov()

template<class Ring>
template<class Matrix1>
void detPopov ( Polynomial & det,
const Matrix1 & M ) const
inline

◆ dixon() [1/2]

template<class Ring>
template<class Matrix1>
bool dixon ( Polynomial & minpoly,
const Matrix1 & M,
const Polynomial & f,
size_t max_deg ) const
inline

◆ dixon() [2/2]

template<class Ring>
template<class Matrix1>
bool dixon ( Polynomial & mp,
const Matrix1 & M ) const
inline

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