linbox
Public Member Functions | Static Public Member Functions
PID_double Class Reference

NO DOC. More...

#include <PID-double.h>

Inherits UnparametricField< K >.

Public Types

Common Object Interface for a LinBox Field.

These methods and member types are required of all LinBox fields.

See FieldArchetype for detailed specifications.

typedef UnparametricRandIter< K > RandIter
 Type of random field element generators.

Public Member Functions

long compare (const Element &a, const Element &b) const
 compare two elements, a and b.
Field Object Basics.
     
Element & inv (Element &x, const Element &y) const
 c := characteristic of this field (zero or prime).
Element & invin (Element &x) const
 c := characteristic of this field (zero or prime).
std::ostream & write (std::ostream &os) const
 c := characteristic of this field (zero or prime).
std::ostream & write (std::ostream &os, const Element &p) const
 c := characteristic of this field (zero or prime).
bool isZero (const Element &x) const
 c := characteristic of this field (zero or prime).
bool isOne (const Element &x) const
 c := characteristic of this field (zero or prime).
long unsigned int characteristic (long unsigned int &p) const
 c := characteristic of this field (zero or prime).
long unsigned int characteristic () const
 c := characteristic of this field (zero or prime).
integercharacteristic (integer &c) const
 c := characteristic of this field (zero or prime).
long unsigned int cardinality () const
 c := characteristic of this field (zero or prime).
integercardinality (integer &c) const
 c := cardinality of this field (-1 if infinite).
template<typename Src >
Element & init (Element &x, const Src &s) const
 c := characteristic of this field (zero or prime).
Element & init (Element &x) const
 c := characteristic of this field (zero or prime).
std::istream & read (std::istream &is, Element &x) const
 c := characteristic of this field (zero or prime).
std::istream & read (std::istream &is) const
 c := characteristic of this field (zero or prime).
template<typename T >
T & convert (T &x, const Element &y) const
 c := characteristic of this field (zero or prime).
Implementation-Specific Methods.

These methods are not required of all LinBox fields and are included only for the implementation of this field template.

const K & operator() (void) const
 Constant access operator.
K & operator() (void)
 Access operator.

Static Public Member Functions

static bool isUnit (const Element &x)
 test if unit (1 or -1)
static Element & abs (Element &x, const Element &a)
 return absolute value
static Element abs (const Element &a)
 return absolute value
static Element & gcd (Element &g, const Element &a, const Element &b)
 gcd (g, a, b).
static Element & gcdin (Element &g, const Element &b)
 gcding (g, b).
static Element & xgcd (Element &g, Element &s, Element &t, const Element &a, const Element &b)
 xgcd (g, s, t, a, b) g = gcd(a, b) = a*s + b*t.
static Element & lcm (Element &c, const Element &a, const Element &b)
 lcm (c, a, b) c = lcm (a, b)
static Element & lcmin (Element &l, const Element &b)
 lcmin (l, b) l = lcm (l, b)
static Element & quo (Element &q, const Element &a, const Element &b)
 quo (q, x, y) q = floor (x/y);
static Element & rem (Element &r, const Element &a, const Element &b)
 rem (r, a, b) r = remindar of a / b
static Element & quoin (Element &a, const Element &b)
 quoin (a, b) a = quotient (a, b)
static Element & remin (Element &a, const Element &b)
 quoin (a, b) a = quotient (a, b)
static void quoRem (Element &q, Element &r, const Element &a, const Element &b)
 quoRem (q, r, a, b) q = [a/b], r = a - b*q |r| < |b|, and if r != 0, sign(r) = sign(b)
static bool isDivisor (const Element &a, const Element &b)
 isDivisor (a, b) Test if a | b.

Detailed Description

NO DOC.


Member Function Documentation

long compare ( const Element &  a,
const Element &  b 
) const [inline]

compare two elements, a and b.

return 1, if a > b return 0, if a = b; return -1. if a < b

static Element& gcd ( Element &  g,
const Element &  a,
const Element &  b 
) [inline, static]

gcd (g, a, b).

return g = gcd (a, b)

static Element& gcdin ( Element &  g,
const Element &  b 
) [inline, static]

gcding (g, b).

return g = gcd (g, b)

static Element& xgcd ( Element &  g,
Element &  s,
Element &  t,
const Element &  a,
const Element &  b 
) [inline, static]

xgcd (g, s, t, a, b) g = gcd(a, b) = a*s + b*t.

The coefficients s and t are defined according to the standard Euclidean algorithm applied to |a| and |b|, with the signs then adjusted according to the signs of a and b.

const K& operator() ( void  ) const [inline, inherited]

Constant access operator.

Returns:
constant reference to field object
K& operator() ( void  ) [inline, inherited]

Access operator.

Returns:
reference to field object

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