Givaro
Public Types | Public Member Functions | Data Fields
FracDom< RingDom > Struct Template Reference

#include <givfractiondomain.h>

Inherits RingDom.

+ Collaboration diagram for FracDom< RingDom >:

Public Types

typedef FracDom< RingDom > Self_t
 
typedef RingDom Ring_t
 
typedef RingDom::Element Ring_E
 
typedef Frac< Ring_E, Ring_EElement
 
typedef Frac< Ring_E, Ring_ERep
 

Public Member Functions

void reduce (Ring_E &a, Ring_E &b) const
 
Repreduce (Rep &r) const
 
 FracDom (const RingDom &R)
 
 FracDom (const Self_t &F)
 
const Ring_tgetdomain () const
 
const Ring_tgetring () const
 
Repinit (Rep &a) const
 
template<class XXX >
Repinit (Rep &p, const XXX &cste) const
 
Repassign (Rep &p, const Rep &q) const
 
Repassign (Rep &p, const Ring_E &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
 
Repmulin (Rep &q, const Ring_E &a) const
 
Repmul (Rep &q, const Rep &a, const Ring_E &b) const
 
Repmul (Rep &q, const Ring_E &a, const Rep &b) const
 
Repmul (Rep &q, const Rep &a, const Rep &b) const
 
Repaddin (Rep &res, const Rep &u) const
 
Repaddin (Rep &res, const Ring_E &a) const
 
Repadd (Rep &res, const Rep &u, const Rep &v) const
 
Repadd (Rep &res, const Rep &u, const Ring_E &a) const
 
Repadd (Rep &res, const Ring_E &a, const Rep &u) const
 
Repsubin (Rep &res, const Rep &u) const
 
Repsubin (Rep &res, const Ring_E &a) const
 
Repsub (Rep &res, const Rep &u, const Rep &v) const
 
Repsub (Rep &res, const Rep &u, const Ring_E &a) const
 
Repsub (Rep &res, const Ring_E &a, const Rep &u) const
 
Repnegin (Rep &res) const
 
Repneg (Rep &res, const Rep &u) const
 
Repinvin (Rep &q) const
 
Repinv (Rep &r, const Rep &u) const
 
Repinv (Rep &r, const Ring_E &a)
 
Repdivin (Rep &q, const Rep &a) const
 
Repdivin (Rep &q, const Ring_E &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
 
Repaxpy (Rep &r, const Rep &a, const Ring_E &x, const Rep &y) const
 
Repaxpy (Rep &r, const Rep &a, const Rep &x, const Ring_E &y) const
 
Repaxpy (Rep &r, const Ring_E &a, const Rep &x, const Rep &y) const
 
Repaxpy (Rep &r, const Ring_E &a, const Ring_E &x, const Rep &y) const
 
Repaxpy (Rep &r, const Ring_E &a, const Rep &x, const Ring_E &y) const
 
Repaxpy (Rep &r, const Rep &a, const Ring_E &x, const Ring_E &y) const
 
Repaxpyin (Rep &r, const Rep &a, const Rep &x) const
 
Repaxpyin (Rep &r, const Ring_E &a, const Rep &x) const
 
Repaxpyin (Rep &r, const Rep &a, const Ring_E &x) const
 
Repaxpyin (Rep &r, const Ring_E &a, const Ring_E &x) const
 
Repmaxpy (Rep &r, const Rep &a, const Rep &x, const Rep &y) const
 
Repmaxpy (Rep &r, const Rep &a, const Ring_E &x, const Rep &y) const
 
Repmaxpy (Rep &r, const Rep &a, const Rep &x, const Ring_E &y) const
 
Repmaxpy (Rep &r, const Ring_E &a, const Rep &x, const Rep &y) const
 
Repmaxpy (Rep &r, const Ring_E &a, const Ring_E &x, const Rep &y) const
 
Repmaxpy (Rep &r, const Ring_E &a, const Rep &x, const Ring_E &y) const
 
Repmaxpy (Rep &r, const Rep &a, const Ring_E &x, const Ring_E &y) const
 
Repaxmyin (Rep &r, const Rep &a, const Rep &x) const
 
Repaxmyin (Rep &r, const Ring_E &a, const Rep &x) const
 
Repaxmyin (Rep &r, const Rep &a, const Ring_E &x) const
 
Repaxmyin (Rep &r, const Ring_E &a, const Ring_E &x) const
 
Repmaxpyin (Rep &r, const Rep &a, const Rep &x) const
 
Repmaxpyin (Rep &r, const Ring_E &a, const Rep &x) const
 
Repmaxpyin (Rep &r, const Rep &a, const Ring_E &x) const
 
Repmaxpyin (Rep &r, const Ring_E &a, const Ring_E &x) const
 
Repaxmy (Rep &r, const Rep &a, const Rep &x, const Rep &y) const
 
Repaxmy (Rep &r, const Ring_E &a, const Rep &x, const Rep &y) const
 
Repaxmy (Rep &r, const Rep &a, const Ring_E &x, const Rep &y) const
 
Repaxmy (Rep &r, const Rep &a, const Rep &x, const Ring_E &y) const
 
Repaxmy (Rep &r, const Ring_E &a, const Ring_E &x, const Rep &y) const
 
Repaxmy (Rep &r, const Ring_E &a, const Rep &x, const Ring_E &y) const
 
Repaxmy (Rep &r, const Rep &a, const Ring_E &x, const Ring_E &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
 

Data Fields

const Rep zero
 
const Rep one
 
const Rep mOne
 

Member Typedef Documentation

typedef FracDom<RingDom> Self_t
typedef RingDom Ring_t
typedef RingDom::Element Ring_E
typedef Frac<Ring_E, Ring_E> Rep

Constructor & Destructor Documentation

FracDom ( const RingDom &  R)
inline
FracDom ( const Self_t F)
inline

Member Function Documentation

void reduce ( Ring_E a,
Ring_E b 
) const
inline
Rep& reduce ( Rep r) const
inline
const Ring_t& getdomain ( ) const
inline
const Ring_t& getring ( ) const
inline
Rep& init ( Rep a) const
inline
Rep& init ( Rep p,
const XXX &  cste 
) const
inline
Rep& assign ( Rep p,
const Rep q 
) const
inline
Rep& assign ( Rep p,
const Ring_E q 
) const
inline
int isZero ( const Rep P) const
inline
int isOne ( const Rep P) const
inline
int isMOne ( const Rep P) const
inline
int areEqual ( const Rep P,
const Rep Q 
) const
inline
int areNEqual ( const Rep P,
const Rep Q 
) const
inline
std::istream& read ( std::istream &  i)
inline
std::ostream& write ( std::ostream &  o) const
inline
std::istream& read ( std::istream &  i,
Rep n 
) const
inline
std::ostream& write ( std::ostream &  o,
const Rep n 
) const
inline
Rep& mulin ( Rep q,
const Rep a 
) const
inline
Rep& mulin ( Rep q,
const Ring_E a 
) const
inline
Rep& mul ( Rep q,
const Rep a,
const Ring_E b 
) const
inline
Rep& mul ( Rep q,
const Ring_E a,
const Rep b 
) const
inline
Rep& mul ( Rep q,
const Rep a,
const Rep b 
) const
inline
Rep& addin ( Rep res,
const Rep u 
) const
inline
Rep& addin ( Rep res,
const Ring_E a 
) const
inline
Rep& add ( Rep res,
const Rep u,
const Rep v 
) const
inline
Rep& add ( Rep res,
const Rep u,
const Ring_E a 
) const
inline
Rep& add ( Rep res,
const Ring_E a,
const Rep u 
) const
inline
Rep& subin ( Rep res,
const Rep u 
) const
inline
Rep& subin ( Rep res,
const Ring_E a 
) const
inline
Rep& sub ( Rep res,
const Rep u,
const Rep v 
) const
inline
Rep& sub ( Rep res,
const Rep u,
const Ring_E a 
) const
inline
Rep& sub ( Rep res,
const Ring_E a,
const Rep u 
) const
inline
Rep& negin ( Rep res) const
inline
Rep& neg ( Rep res,
const Rep u 
) const
inline
Rep& invin ( Rep q) const
inline
Rep& inv ( Rep r,
const Rep u 
) const
inline
Rep& inv ( Rep r,
const Ring_E a 
)
inline
Rep& divin ( Rep q,
const Rep a 
) const
inline
Rep& divin ( Rep q,
const Ring_E a 
) const
inline
Rep& div ( Rep q,
const Rep a,
const Rep b 
) const
inline
Rep& axpy ( Rep r,
const Rep a,
const Rep x,
const Rep y 
) const
inline
Rep& axpy ( Rep r,
const Rep a,
const Ring_E x,
const Rep y 
) const
inline
Rep& axpy ( Rep r,
const Rep a,
const Rep x,
const Ring_E y 
) const
inline
Rep& axpy ( Rep r,
const Ring_E a,
const Rep x,
const Rep y 
) const
inline
Rep& axpy ( Rep r,
const Ring_E a,
const Ring_E x,
const Rep y 
) const
inline
Rep& axpy ( Rep r,
const Ring_E a,
const Rep x,
const Ring_E y 
) const
inline
Rep& axpy ( Rep r,
const Rep a,
const Ring_E x,
const Ring_E y 
) const
inline
Rep& axpyin ( Rep r,
const Rep a,
const Rep x 
) const
inline
Rep& axpyin ( Rep r,
const Ring_E a,
const Rep x 
) const
inline
Rep& axpyin ( Rep r,
const Rep a,
const Ring_E x 
) const
inline
Rep& axpyin ( Rep r,
const Ring_E a,
const Ring_E x 
) const
inline
Rep& maxpy ( Rep r,
const Rep a,
const Rep x,
const Rep y 
) const
inline
Rep& maxpy ( Rep r,
const Rep a,
const Ring_E x,
const Rep y 
) const
inline
Rep& maxpy ( Rep r,
const Rep a,
const Rep x,
const Ring_E y 
) const
inline
Rep& maxpy ( Rep r,
const Ring_E a,
const Rep x,
const Rep y 
) const
inline
Rep& maxpy ( Rep r,
const Ring_E a,
const Ring_E x,
const Rep y 
) const
inline
Rep& maxpy ( Rep r,
const Ring_E a,
const Rep x,
const Ring_E y 
) const
inline
Rep& maxpy ( Rep r,
const Rep a,
const Ring_E x,
const Ring_E y 
) const
inline
Rep& axmyin ( Rep r,
const Rep a,
const Rep x 
) const
inline
Rep& axmyin ( Rep r,
const Ring_E a,
const Rep x 
) const
inline
Rep& axmyin ( Rep r,
const Rep a,
const Ring_E x 
) const
inline
Rep& axmyin ( Rep r,
const Ring_E a,
const Ring_E x 
) const
inline
Rep& maxpyin ( Rep r,
const Rep a,
const Rep x 
) const
inline
Rep& maxpyin ( Rep r,
const Ring_E a,
const Rep x 
) const
inline
Rep& maxpyin ( Rep r,
const Rep a,
const Ring_E x 
) const
inline
Rep& maxpyin ( Rep r,
const Ring_E a,
const Ring_E x 
) const
inline
Rep& axmy ( Rep r,
const Rep a,
const Rep x,
const Rep y 
) const
inline
Rep& axmy ( Rep r,
const Ring_E a,
const Rep x,
const Rep y 
) const
inline
Rep& axmy ( Rep r,
const Rep a,
const Ring_E x,
const Rep y 
) const
inline
Rep& axmy ( Rep r,
const Rep a,
const Rep x,
const Ring_E y 
) const
inline
Rep& axmy ( Rep r,
const Ring_E a,
const Ring_E x,
const Rep y 
) const
inline
Rep& axmy ( Rep r,
const Ring_E a,
const Rep x,
const Ring_E y 
) const
inline
Rep& axmy ( Rep r,
const Rep a,
const Ring_E x,
const Ring_E y 
) const
inline
Rep& pow ( Rep W,
const Rep P,
long  n 
) const
inline
Rep& random ( RandIter &  g,
Rep r 
) const
inline
Rep& random ( RandIter &  g,
Rep r,
const XXX &  s 
) const
inline
Rep& nonzerorandom ( RandIter &  g,
Rep r 
) const
inline
Rep& nonzerorandom ( RandIter &  g,
Rep r,
const XXX &  s 
) const
inline

Field Documentation

const Rep zero
const Rep one
const Rep mOne

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