|  | Basic Polynomial Algebra Subprograms (BPAS)
    v. 1.791
    | 
An arbitrary-precision Integer. More...
#include <Integer.hpp>
 Full inheritance diagram for Integer:
 Full inheritance diagram for Integer:| Public Member Functions | |
| Integer () | |
| Get a zero integer. | |
| Integer (int a) | |
| Construct and Integer from an int. | |
| Integer (const mpz_t &a) | |
| Construct an integer form a GMP mpz_t. | |
| Integer (const mpz_class &a) | |
| Construct an integer from a GMP mpz_class. | |
| Integer (const Integer &a) | |
| Copy assignment from another Integer. | |
| Integer (const RationalNumber &a) | |
| Attempts to construct an Integer from a rational number.  More... | |
| Integer (const ComplexRationalNumber &a) | |
| Attempts to construct an Integer from a complex rational number.  More... | |
| Integer (const SmallPrimeField &a) | |
| Attempts to construct an Integer from a SmallPrimeField.  More... | |
| Integer (const BigPrimeField &a) | |
| Attempts to construct an Integer from a BigPrimeField.  More... | |
| Integer (const GeneralizedFermatPrimeField &a) | |
| Attempts to construct an Integer from a GeneralizedFermatPrimeField.  More... | |
| Integer (const DenseUnivariateIntegerPolynomial &a) | |
| Attempts to construct an Integer from a DenseUnivariateIntegerPolynomial.  More... | |
| Integer (const DenseUnivariateRationalPolynomial &a) | |
| Attempts to construct an Integer from a DenseUnivariateRationalPolynomial.  More... | |
| Integer (const SparseUnivariatePolynomial< Integer > &a) | |
| Attempts to construct an Integer from a SparseUnivariatePolynomial<Integer>.  More... | |
| Integer (const SparseUnivariatePolynomial< RationalNumber > &a) | |
| Attempts to construct an Integer from a SparseUnivariatePolynomial<RationalNumber>.  More... | |
| Integer (const SparseUnivariatePolynomial< ComplexRationalNumber > &a) | |
| Attempts to construct an Integer from a SparseUnivariatePolynomial<ComplexRationalNumber>.  More... | |
| template<class Ring > | |
| Integer (const SparseUnivariatePolynomial< Ring > &a) | |
| Attempts to construct an Integer from a SparseUniveraitePolynomial<Ring> for a generic ring.  More... | |
| mpz_class & | get_mpz_ref () | 
| const mpz_class & | get_mpz_ref () const | 
| mpz_class | get_mpz () const | 
| mpz_ptr | get_mpz_t () | 
| mpz_srcptr | get_mpz_t () const | 
| double | get_d () const | 
| long int | get_si () const | 
| unsigned long int | get_ui () const | 
| bool | isZero () const | 
| Is a zero.  More... | |
| void | zero () | 
| Assign to zero.  More... | |
| bool | isOne () const | 
| Is a 1.  More... | |
| void | one () | 
| Assign to one.  More... | |
| bool | isNegativeOne () const | 
| Is a -1.  More... | |
| void | negativeOne () | 
| Assign to negative one.  More... | |
| int | isConstant () const | 
| Is a constant.  More... | |
| Integer | unitCanonical (Integer *u=NULL, Integer *v=NULL) const | 
| Obtain the unit normal (a.k.a canonical associate) of an element.  More... | |
| Integer & | operator= (const Integer &a) | 
| Copy assignment. | |
| Integer | operator+ (const Integer &i) const | 
| Addition. | |
| Integer & | operator+= (const Integer &i) | 
| Addition assignment. | |
| Integer | operator- (const Integer &i) const | 
| Subtraction. | |
| Integer & | operator-= (const Integer &i) | 
| Subtraction assignment. | |
| Integer | operator- () const | 
| Negation. | |
| Integer | operator* (const Integer &i) const | 
| Multiplication. | |
| Integer & | operator*= (const Integer &i) | 
| Multiplication assignment. | |
| Integer | operator^ (long long int e) const | 
| Exponentiation. | |
| Integer & | operator^= (long long int e) | 
| Exponentiation assignment. | |
| bool | operator== (const Integer &i) const | 
| Equality test,.  More... | |
| bool | operator!= (const Integer &i) const | 
| Inequality test,.  More... | |
| bool | operator< (const Integer &r) const | 
| bool | operator<= (const Integer &r) const | 
| bool | operator> (const Integer &r) const | 
| bool | operator>= (const Integer &r) const | 
| ExpressionTree | convertToExpressionTree () const | 
| Convert this to an expression tree.  More... | |
| Integer | operator/ (const Integer &i) const | 
| Exact division. | |
| Integer & | operator/= (const Integer &i) | 
| Exact division assignment. | |
| bool | divisible (unsigned long int i) | 
| Integer | operator% (const Integer &r) const | 
| Get the remainder of *this and b;.  More... | |
| Integer & | operator%= (const Integer &r) | 
| Assign *this to be the remainder of *this and b.  More... | |
| Integer | gcd (const Integer &other) const | 
| Get GCD of *this and other. | |
| Factors< Integer > | squareFree () const | 
| Compute squarefree factorization of *this. | |
| Integer | euclideanSize () const | 
| Get the euclidean size of *this. | |
| Integer | euclideanDivision (const Integer &b, Integer *q=NULL) const | 
| Perform the eucldiean division of *this and b.  More... | |
| Integer | extendedEuclidean (const Integer &b, Integer *s=NULL, Integer *t=NULL) const | 
| Perform the extended euclidean division on *this and b.  More... | |
| Integer | quotient (const Integer &b) const | 
| Get the quotient of *this and b. | |
| Integer | remainder (const Integer &b) const | 
| Get the remainder of *this and b. | |
| Friends | |
| Integer | operator+ (int a, const Integer &r) | 
| Integer | operator- (int a, const Integer &r) | 
| Integer | operator* (int a, const Integer &r) | 
| Integer | operator/ (int a, const Integer &r) | 
| bool | operator< (int a, const Integer &r) | 
| bool | operator<= (int a, const Integer &r) | 
| bool | operator> (int a, const Integer &r) | 
| bool | operator>= (int a, const Integer &r) | 
| Integer | operator+ (long int a, const Integer &r) | 
| Integer | operator- (long int a, const Integer &r) | 
| Integer | operator* (long int a, const Integer &r) | 
| Integer | operator/ (long int a, const Integer &r) | 
| Integer | abs (const Integer &i) | 
| bool | operator< (long int a, const Integer &r) | 
| bool | operator<= (long int a, const Integer &r) | 
| bool | operator> (long int a, const Integer &r) | 
| bool | operator>= (long int a, const Integer &r) | 
An arbitrary-precision Integer.
| 
 | explicit | 
Attempts to construct an Integer from a rational number.
If the conversion is not exact, causes an error.
| 
 | explicit | 
Attempts to construct an Integer from a complex rational number.
If the conversion is not exact, causes an error.
| 
 | explicit | 
Attempts to construct an Integer from a SmallPrimeField.
If the conversion is not exact, causes an error.
| 
 | explicit | 
Attempts to construct an Integer from a BigPrimeField.
If the conversion is not exact, causes an error.
| 
 | explicit | 
Attempts to construct an Integer from a GeneralizedFermatPrimeField.
If the conversion is not exact, causes an error.
| 
 | explicit | 
Attempts to construct an Integer from a DenseUnivariateIntegerPolynomial.
If the conversion is not exact, causes an error.
| 
 | explicit | 
Attempts to construct an Integer from a DenseUnivariateRationalPolynomial.
If the conversion is not exact, causes an error.
| 
 | explicit | 
Attempts to construct an Integer from a SparseUnivariatePolynomial<Integer>.
If the conversion is not exact, causes an error.
| 
 | explicit | 
Attempts to construct an Integer from a SparseUnivariatePolynomial<RationalNumber>.
If the conversion is not exact, causes an error.
| 
 | explicit | 
Attempts to construct an Integer from a SparseUnivariatePolynomial<ComplexRationalNumber>.
If the conversion is not exact, causes an error.
| 
 | explicit | 
Attempts to construct an Integer from a SparseUniveraitePolynomial<Ring> for a generic ring.
If the conversion is not exact, causes an error.
| 
 | inlinevirtual | 
Convert this to an expression tree.
returns an expression tree describing *this.
Implements ExpressionTreeConvert.
Perform the eucldiean division of *this and b.
Returns the remainder. If q is not NULL, then returns the quotient in q.
Implements BPASEuclideanDomain< Integer >.
| 
 | virtual | 
Perform the extended euclidean division on *this and b.
Returns the GCD. If s and t are not NULL, returns the bezout coefficients in them.
Implements BPASEuclideanDomain< Integer >.
| 
 | inline | 
Is a constant.
| 
 | inline | 
Is a -1.
| 
 | inlinevirtual | 
| 
 | inlinevirtual | 
| 
 | inline | 
Assign to negative one.
| 
 | inlinevirtual | 
| 
 | inlinevirtual | 
Get the remainder of *this and b;.
| b | the divisor | 
Implements BPASEuclideanDomain< Integer >.
Assign *this to be the remainder of *this and b.
| b | the divisor | 
Implements BPASEuclideanDomain< Integer >.
| 
 | inlinevirtual | 
Obtain the unit normal (a.k.a canonical associate) of an element.
If either parameters u, v, are non-NULL then the units are returned such that b = ua, v = u^-1. Where b is the unit normal of a, and is the returned value.
Implements BPASRing< Integer >.
| 
 | inlinevirtual | 
 1.8.13
 1.8.13