linbox
|
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). | |
integer & | characteristic (integer &c) const |
c := characteristic of this field (zero or prime). | |
long unsigned int | cardinality () const |
c := characteristic of this field (zero or prime). | |
integer & | cardinality (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. |
NO DOC.
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.
K& operator() | ( | void | ) | [inline, inherited] |
Access operator.