|
linbox
|
Domain for integer operations. More...
#include <PID-integer.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 | |
| Element & | axpyin (integer &r, const integer &a, const integer &x) const |
| axpyin | |
| Element & | axmyin (integer &r, const integer &a, const integer &x) const |
| axmyin | |
| Element & | maxpyin (integer &r, const integer &a, const integer &x) const |
| maxpyin | |
| Element & | axpy (integer &r, const integer &a, const integer &x, const integer &y) const |
| axpy | |
| bool | isUnit (const Element &x) const |
| isUnit | |
| Element & | abs (Element &x, const Element &a) const |
| abs | |
| Element | abs (const Element &a) const |
| abs | |
| long | compare (const Element &a, const Element &b) const |
| compare two elements, a and b. More... | |
| Element & | gcd (Element &g, const Element &a, const Element &b) const |
| gcd (g, a, b) return g = gcd (a, b) | |
| Element & | gcdin (Element &g, const Element &b) const |
| gcdin(g, b) return g = gcd (g, b) | |
| Element & | xgcd (Element &g, Element &s, Element &t, const Element &a, const Element &b) const |
| xgcd (g, s, t, a, b) g = gcd(a, b) = a*s + b*t. More... | |
| Element & | lcm (Element &c, const Element &a, const Element &b) const |
| lcm (c, a, b) c = lcm (a, b) | |
| Element & | lcmin (Element &l, const Element &b) const |
| lcmin (l, b) l = lcm (l, b) | |
| Element & | quo (Element &q, const Element &a, const Element &b) const |
| quo (q, x, y) q = floor (x/y); | |
| Element & | rem (Element &r, const Element &a, const Element &b) const |
| rem (r, a, b) r = remindar of a / b | |
| Element & | quoin (Element &a, const Element &b) const |
| quoin (a, b) a = quotient (a, b) | |
| Element & | remin (Element &a, const Element &b) const |
| quoin (a, b) a = quotient (a, b) | |
| void | quoRem (Element &q, Element &r, const Element &a, const Element &b) const |
| quoRem (q, r, a, b) q = [a/b], r = a - b*q |r| < |b|, and if r != 0, sign(r) = sign(b) | |
| bool | isDivisor (const Element &a, const Element &b) const |
| isDivisor (a, b) Test if b | a. | |
| Element & | sqrt (Element &x, const Element &y) const |
| sqrt(x,y) x=floor(sqrt(y)) | |
Field Object Basics. | |
| std::istream & | read (std::istream &is) |
| Builds this field to have characteristic q and cardinality qe. More... | |
| std::istream & | read (std::istream &s, Element &a) const |
| Builds this field to have characteristic q and cardinality qe. More... | |
| template<typename Src > | |
| Element & | init (Element &x, const Src &s) const |
| Builds this field to have characteristic q and cardinality qe. More... | |
| Element & | init (Element &x) const |
| Builds this field to have characteristic q and cardinality qe. More... | |
| template<typename T > | |
| T & | convert (T &x, const Element &y) const |
| Builds this field to have characteristic q and cardinality qe. More... | |
| integer & | cardinality (integer &c) const |
| Builds this field to have characteristic q and cardinality qe. More... | |
| integer & | characteristic (integer &c) const |
| Builds this field to have characteristic q and cardinality qe. More... | |
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. More... | |
| K & | operator() (void) |
| Access operator. More... | |
Protected Member Functions | |
| void | RationalReconstruction (Element &a, Element &b, const Element &f, const Element &m, const Element &k, bool reduce, bool recursive) const |
| Rational number reconstruction. More... | |
Domain for integer operations.
|
inline |
compare two elements, a and b.
return 1, if a > b return 0, if a = b; return -1. if a < b
|
inline |
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.
|
inlineprotected |
Rational number reconstruction.
, with
and
.
|
inlineinherited |
Builds this field to have characteristic q and cardinality qe.
This constructor must be defined in a specialization.
|
inlineinherited |
Builds this field to have characteristic q and cardinality qe.
This constructor must be defined in a specialization.
|
inlineinherited |
Builds this field to have characteristic q and cardinality qe.
This constructor must be defined in a specialization.
|
inlineinherited |
Builds this field to have characteristic q and cardinality qe.
This constructor must be defined in a specialization.
|
inlineinherited |
Builds this field to have characteristic q and cardinality qe.
This constructor must be defined in a specialization.
Builds this field to have characteristic q and cardinality qe.
This constructor must be defined in a specialization.
Builds this field to have characteristic q and cardinality qe.
This constructor must be defined in a specialization.
|
inlineinherited |
Constant access operator.
|
inlineinherited |
Access operator.
1.8.6