Givaro 4.2.1
QuotientDom< RingDom > Struct Template Reference

#include <givquotientdomain.h>

+ Inheritance diagram for QuotientDom< RingDom >:

Public Types

typedef QuotientDom< RingDom > Self_t
 
typedef RingDom Ring_t
 
typedef RingDom::Element Ring_E
 
typedef Ring_E Element
 
typedef Ring_E Rep
 

Public Member Functions

 QuotientDom (const RingDom &R, const Element &Mod)
 
 QuotientDom (const Self_t &F)
 
Repinit (Rep &a) const
 
template<class XXX>
Repinit (Rep &p, const XXX &cste) const
 
Repassign (Rep &p) const
 
Repassign (Rep &p, const Rep &Q) const
 
int isZero (const Rep &P) const
 
int isOne (const Rep &P) const
 
int isMOne (const Rep &P) const
 
int areEqual (const Rep &P, const Rep &Q) const
 
int areNEqual (const Rep &P, const Rep &Q) const
 
std::istream & read (std::istream &i)
 
std::ostream & write (std::ostream &o) const
 
std::istream & read (std::istream &i, Rep &n) const
 
std::ostream & write (std::ostream &o, const Rep &n) const
 
Repmulin (Rep &q, const Rep &a) const
 
Repmul (Rep &q, const Rep &a, const Rep &b) const
 
Repaddin (Rep &r, const Rep &u) const
 
Repadd (Rep &r, const Rep &u, const Rep &v) const
 
Repsubin (Rep &r, const Rep &u) const
 
Repsub (Rep &r, const Rep &u, const Rep &v) const
 
Repnegin (Rep &r) const
 
Repneg (Rep &r, const Rep &u) const
 
Repinvin (Rep &q) const
 
Repinv (Rep &r, const Rep &u) const
 
Repdivin (Rep &q, const Rep &a) const
 
Repdiv (Rep &q, const Rep &a, const Rep &b) const
 
Repaxpy (Rep &r, const Rep &a, const Rep &x, const Rep &y) const
 
Repaxpyin (Rep &r, const Rep &a, const Rep &x) const
 
Repmaxpy (Rep &r, const Rep &a, const Rep &x, const Rep &y) const
 
Repaxmyin (Rep &r, const Rep &a, const Rep &x) const
 
Repmaxpyin (Rep &r, const Rep &a, const Rep &x) const
 
Repaxmy (Rep &r, const Rep &a, const Rep &x, const Rep &y) const
 
Reppow (Rep &W, const Rep &P, long n) const
 
template<class RandIter>
Reprandom (RandIter &g, Rep &r) const
 
template<class RandIter, class XXX>
Reprandom (RandIter &g, Rep &r, const XXX &s) const
 
template<class RandIter>
Repnonzerorandom (RandIter &g, Rep &r) const
 
template<class RandIter, class XXX>
Repnonzerorandom (RandIter &g, Rep &r, const XXX &s) const
 

Protected Attributes

Rep _modulo
 

Member Typedef Documentation

◆ Self_t

template<class RingDom>
typedef QuotientDom<RingDom> Self_t

◆ Ring_t

template<class RingDom>
typedef RingDom Ring_t

◆ Ring_E

template<class RingDom>
typedef RingDom::Element Ring_E

◆ Element

template<class RingDom>
typedef Ring_E Element

◆ Rep

template<class RingDom>
typedef Ring_E Rep

Constructor & Destructor Documentation

◆ QuotientDom() [1/2]

template<class RingDom>
QuotientDom ( const RingDom & R,
const Element & Mod )
inline

◆ QuotientDom() [2/2]

template<class RingDom>
QuotientDom ( const Self_t & F)
inline

Member Function Documentation

◆ init() [1/2]

template<class RingDom>
Rep & init ( Rep & a) const
inline

◆ init() [2/2]

template<class RingDom>
template<class XXX>
Rep & init ( Rep & p,
const XXX & cste ) const
inline

◆ assign() [1/2]

template<class RingDom>
Rep & assign ( Rep & p) const
inline

◆ assign() [2/2]

template<class RingDom>
Rep & assign ( Rep & p,
const Rep & Q ) const
inline

◆ isZero()

template<class RingDom>
int isZero ( const Rep & P) const
inline

◆ isOne()

template<class RingDom>
int isOne ( const Rep & P) const
inline

◆ isMOne()

template<class RingDom>
int isMOne ( const Rep & P) const
inline

◆ areEqual()

template<class RingDom>
int areEqual ( const Rep & P,
const Rep & Q ) const
inline

◆ areNEqual()

template<class RingDom>
int areNEqual ( const Rep & P,
const Rep & Q ) const
inline

◆ read() [1/2]

template<class RingDom>
std::istream & read ( std::istream & i)
inline

◆ write() [1/2]

template<class RingDom>
std::ostream & write ( std::ostream & o) const
inline

◆ read() [2/2]

template<class RingDom>
std::istream & read ( std::istream & i,
Rep & n ) const
inline

◆ write() [2/2]

template<class RingDom>
std::ostream & write ( std::ostream & o,
const Rep & n ) const
inline

◆ mulin()

template<class RingDom>
Rep & mulin ( Rep & q,
const Rep & a ) const
inline

◆ mul()

template<class RingDom>
Rep & mul ( Rep & q,
const Rep & a,
const Rep & b ) const
inline

◆ addin()

template<class RingDom>
Rep & addin ( Rep & r,
const Rep & u ) const
inline

◆ add()

template<class RingDom>
Rep & add ( Rep & r,
const Rep & u,
const Rep & v ) const
inline

◆ subin()

template<class RingDom>
Rep & subin ( Rep & r,
const Rep & u ) const
inline

◆ sub()

template<class RingDom>
Rep & sub ( Rep & r,
const Rep & u,
const Rep & v ) const
inline

◆ negin()

template<class RingDom>
Rep & negin ( Rep & r) const
inline

◆ neg()

template<class RingDom>
Rep & neg ( Rep & r,
const Rep & u ) const
inline

◆ invin()

template<class RingDom>
Rep & invin ( Rep & q) const
inline

◆ inv()

template<class RingDom>
Rep & inv ( Rep & r,
const Rep & u ) const
inline

◆ divin()

template<class RingDom>
Rep & divin ( Rep & q,
const Rep & a ) const
inline

◆ div()

template<class RingDom>
Rep & div ( Rep & q,
const Rep & a,
const Rep & b ) const
inline

◆ axpy()

template<class RingDom>
Rep & axpy ( Rep & r,
const Rep & a,
const Rep & x,
const Rep & y ) const
inline

◆ axpyin()

template<class RingDom>
Rep & axpyin ( Rep & r,
const Rep & a,
const Rep & x ) const
inline

◆ maxpy()

template<class RingDom>
Rep & maxpy ( Rep & r,
const Rep & a,
const Rep & x,
const Rep & y ) const
inline

◆ axmyin()

template<class RingDom>
Rep & axmyin ( Rep & r,
const Rep & a,
const Rep & x ) const
inline

◆ maxpyin()

template<class RingDom>
Rep & maxpyin ( Rep & r,
const Rep & a,
const Rep & x ) const
inline

◆ axmy()

template<class RingDom>
Rep & axmy ( Rep & r,
const Rep & a,
const Rep & x,
const Rep & y ) const
inline

◆ pow()

template<class RingDom>
Rep & pow ( Rep & W,
const Rep & P,
long n ) const
inline

◆ random() [1/2]

template<class RingDom>
template<class RandIter>
Rep & random ( RandIter & g,
Rep & r ) const
inline

◆ random() [2/2]

template<class RingDom>
template<class RandIter, class XXX>
Rep & random ( RandIter & g,
Rep & r,
const XXX & s ) const
inline

◆ nonzerorandom() [1/2]

template<class RingDom>
template<class RandIter>
Rep & nonzerorandom ( RandIter & g,
Rep & r ) const
inline

◆ nonzerorandom() [2/2]

template<class RingDom>
template<class RandIter, class XXX>
Rep & nonzerorandom ( RandIter & g,
Rep & r,
const XXX & s ) const
inline

Field Documentation

◆ _modulo

template<class RingDom>
Rep _modulo
protected

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