![]() |
Basic Polynomial Algebra Subprograms (BPAS)
v. 1.791
|
An arbitrary-precision Integer. More...
#include <Integer.hpp>
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