Givaro
|
This is the Integer class. More...
#include <gmp++_int.h>
Inherited by SpyInteger::InHeritsInteger.
Public Types | |
typedef std::vector< mp_limb_t > | vect_t |
vector of limbs (ie a gmp number). | |
Public Member Functions | |
Constructor/Destructors. | |
Constructors and destructor for an Integer. | |
giv_all_inlined | Integer (int32_t n=0) |
Constructor form a known type. More... | |
giv_all_inlined | Integer (int64_t n) |
giv_all_inlined | Integer (unsigned char n) |
giv_all_inlined | Integer (uint32_t n) |
giv_all_inlined | Integer (uint64_t n) |
giv_all_inlined | Integer (double n) |
giv_all_inlined | Integer (const char *n) |
giv_all_inlined | Integer (const mpz_class &a) |
template<size_t K> | |
Integer (const RecInt::ruint< K > &n) | |
template<size_t K> | |
Integer (const RecInt::rint< K > &n) | |
giv_all_inlined | Integer (const Integer &n) |
Copy constructor. More... | |
giv_all_inlined | Integer (uint64_t *d, int64_t sz) |
Creates a new Integer from pointers. More... | |
giv_all_inlined | Integer (const vect_t &v) |
Creates a new Integers for a vector of limbs. More... | |
giv_all_inlined | ~Integer () |
destructor | |
Assignment and copy operators | |
giv_all_inlined Integer & | operator= (const Integer &n) |
copy from an integer. More... | |
giv_all_inlined Integer & | logcpy (const Integer &n) |
copy from an integer. More... | |
giv_all_inlined Integer & | copy (const Integer &n) |
copy from an integer. More... | |
Bit logic operators. | |
giv_all_inlined Integer | operator^ (const Integer &a) const |
XOR (^) More... | |
giv_all_inlined Integer | operator^ (const uint64_t &a) const |
giv_all_inlined Integer | operator^ (const uint32_t &a) const |
giv_all_inlined Integer & | operator^= (const Integer &a) |
XOR inplace (^=) More... | |
giv_all_inlined Integer & | operator^= (const uint64_t &a) |
giv_all_inlined Integer & | operator^= (const uint32_t &a) |
giv_all_inlined Integer | operator| (const Integer &a) const |
OR (|) More... | |
giv_all_inlined Integer | operator| (const uint64_t &a) const |
giv_all_inlined Integer | operator| (const uint32_t &a) const |
giv_all_inlined Integer & | operator|= (const Integer &a) |
OR inplace (|=) More... | |
giv_all_inlined Integer & | operator|= (const uint64_t &a) |
giv_all_inlined Integer & | operator|= (const uint32_t &a) |
giv_all_inlined Integer | operator & (const Integer &a) const |
AND (&) More... | |
giv_all_inlined uint32_t | operator & (const uint32_t &a) const |
giv_all_inlined uint64_t | operator & (const uint64_t &a) const |
giv_all_inlined Integer & | operator &= (const Integer &a) |
AND inplace (&=) More... | |
giv_all_inlined Integer & | operator &= (const uint64_t &a) |
giv_all_inlined Integer & | operator &= (const uint32_t &a) |
giv_all_inlined Integer | operator~ () const |
complement to 1 (~) | |
giv_all_inlined Integer | operator<< (int32_t l) const |
left shift (<<) More... | |
giv_all_inlined Integer | operator<< (int64_t l) const |
giv_all_inlined Integer | operator<< (uint32_t l) const |
giv_all_inlined Integer | operator<< (uint64_t l) const |
giv_all_inlined Integer & | operator<<= (int32_t l) |
left shift inplace (<<=) More... | |
giv_all_inlined Integer & | operator<<= (int64_t l) |
giv_all_inlined Integer & | operator<<= (uint32_t l) |
giv_all_inlined Integer & | operator<<= (uint64_t l) |
giv_all_inlined Integer | operator>> (int32_t l) const |
right shift (>>) More... | |
giv_all_inlined Integer | operator>> (int64_t l) const |
giv_all_inlined Integer | operator>> (uint32_t l) const |
giv_all_inlined Integer | operator>> (uint64_t l) const |
giv_all_inlined Integer & | operator>>= (int32_t l) |
right shift inplace (>>=) More... | |
giv_all_inlined Integer & | operator>>= (int64_t l) |
giv_all_inlined Integer & | operator>>= (uint32_t l) |
giv_all_inlined Integer & | operator>>= (uint64_t l) |
Increment/Decrement operators | |
Integer & | operator++ () |
Integer | operator++ (int) |
Integer & | operator-- () |
Integer | operator-- (int) |
Cast operators. | |
Convert an Integer to a basic C++ type.
| |
operator bool () const | |
operator int16_t () const | |
operator uint16_t () const | |
operator unsigned char () const | |
giv_all_inlined | operator uint32_t () const |
giv_all_inlined | operator int32_t () const |
operator signed char () const | |
giv_all_inlined | operator uint64_t () const |
giv_all_inlined | operator int64_t () const |
giv_all_inlined | operator std::string () const |
giv_all_inlined | operator float () const |
giv_all_inlined | operator double () const |
giv_all_inlined | operator vect_t () const |
template<size_t K> | |
operator RecInt::ruint< K > () const | |
template<size_t K> | |
operator RecInt::rint< K > () const | |
Static Public Member Functions | |
Addition, substraction, multiplication | |
static giv_all_inlined Integer & | addin (Integer &res, const Integer &n) |
Addition (inplace) res+=n . More... | |
static giv_all_inlined Integer & | addin (Integer &res, const int64_t n) |
static giv_all_inlined Integer & | addin (Integer &res, const uint64_t n) |
static giv_all_inlined Integer & | addin (Integer &res, const int32_t n) |
static giv_all_inlined Integer & | addin (Integer &res, const uint32_t n) |
static giv_all_inlined Integer & | add (Integer &res, const Integer &n1, const Integer &n2) |
Addition res=n1+n2 . More... | |
static giv_all_inlined Integer & | add (Integer &res, const Integer &n1, const int64_t n2) |
static giv_all_inlined Integer & | add (Integer &res, const Integer &n1, const uint64_t n2) |
static giv_all_inlined Integer & | add (Integer &res, const Integer &n1, const int32_t n2) |
Addition (inplace) res+=n . More... | |
static giv_all_inlined Integer & | add (Integer &res, const Integer &n1, const uint32_t n2) |
static giv_all_inlined Integer & | subin (Integer &res, const Integer &n) |
Substraction (inplace) res-=n . More... | |
static giv_all_inlined Integer & | subin (Integer &res, const int64_t n) |
static giv_all_inlined Integer & | subin (Integer &res, const uint64_t n) |
static giv_all_inlined Integer & | subin (Integer &res, const int32_t n) |
static giv_all_inlined Integer & | subin (Integer &res, const uint32_t n) |
static giv_all_inlined Integer & | sub (Integer &res, const Integer &n1, const Integer &n2) |
Substraction res=n1-n2 . More... | |
static giv_all_inlined Integer & | sub (Integer &res, const Integer &n1, const int64_t n2) |
static giv_all_inlined Integer & | sub (Integer &res, const Integer &n1, const uint64_t n2) |
static giv_all_inlined Integer & | sub (Integer &res, const Integer &n1, const int32_t n2) |
Addition (inplace) res+=n . More... | |
static giv_all_inlined Integer & | sub (Integer &res, const Integer &n1, const uint32_t n2) |
static giv_all_inlined Integer & | negin (Integer &res) |
Negation (inplace) res=-res . More... | |
static giv_all_inlined Integer & | neg (Integer &res, const Integer &n) |
Negation res=-n . More... | |
static giv_all_inlined Integer & | mulin (Integer &res, const Integer &n) |
Multiplication (inplace) res*=n . More... | |
static giv_all_inlined Integer & | mulin (Integer &res, const int64_t n) |
static giv_all_inlined Integer & | mulin (Integer &res, const uint64_t n) |
static giv_all_inlined Integer & | mulin (Integer &res, const int32_t n) |
static giv_all_inlined Integer & | mulin (Integer &res, const uint32_t n) |
static giv_all_inlined Integer & | mul (Integer &res, const Integer &n1, const Integer &n2) |
Multiplication res=n1*n2 . More... | |
static giv_all_inlined Integer & | mul (Integer &res, const Integer &n1, const int64_t n2) |
static giv_all_inlined Integer & | mul (Integer &res, const Integer &n1, const uint64_t n2) |
static giv_all_inlined Integer & | mul (Integer &res, const Integer &n1, const int32_t n2) |
static giv_all_inlined Integer & | mul (Integer &res, const Integer &n1, const uint32_t n2) |
fused add-multiply | |
Groups a multiplication and an addition/division in a single function. This is usually faster than doing the two operations separately (and preferable to using operators). | |
static giv_all_inlined Integer & | axpy (Integer &res, const Integer &a, const Integer &x, const Integer &y) |
axpy res = ax+y . More... | |
static giv_all_inlined Integer & | axpy (Integer &res, const Integer &a, const uint64_t x, const Integer &y) |
static giv_all_inlined Integer & | axpyin (Integer &res, const Integer &a, const Integer &x) |
axpyin (inplace) res += ax . More... | |
static giv_all_inlined Integer & | axpyin (Integer &res, const Integer &a, const uint64_t x) |
static giv_all_inlined Integer & | maxpy (Integer &res, const Integer &a, const Integer &x, const Integer &y) |
maxpy res = y - ax . More... | |
static giv_all_inlined Integer & | maxpy (Integer &res, const Integer &a, const uint64_t x, const Integer &y) |
static giv_all_inlined Integer & | maxpyin (Integer &res, const Integer &a, const Integer &x) |
maxpyin res -= ax . More... | |
static giv_all_inlined Integer & | maxpyin (Integer &res, const Integer &a, const uint64_t x) |
static giv_all_inlined Integer & | axmy (Integer &res, const Integer &a, const Integer &x, const Integer &y) |
axmy res = ax - y . More... | |
static giv_all_inlined Integer & | axmy (Integer &res, const Integer &a, const uint64_t x, const Integer &y) |
static giv_all_inlined Integer & | axmyin (Integer &res, const Integer &a, const Integer &x) |
axmyin (in place) res = ax - res . More... | |
static giv_all_inlined Integer & | axmyin (Integer &res, const Integer &a, const uint64_t x) |
Random numbers functions | |
Other stuff gmp has (temporary) | |
static void | seeding (uint64_t s) |
Random numbers (no doc) | |
static void | seeding (Integer s) |
Random numbers (no doc) | |
static void | seeding () |
Random numbers (no doc) | |
static bool | RandBool () |
Random numbers (no doc) | |
template<bool ALWAYSPOSITIVE> | |
static Integer & | random_lessthan (Integer &r, const Integer &m) |
returns a random integer r in the intervall [[x, m-1]] where x = 0 or -(m-1) according to ALWAYSPOSITIVE More... | |
static Integer & | random_lessthan (Integer &r, const Integer &m) |
Random numbers (no doc) | |
template<bool ALWAYSPOSITIVE> | |
static Integer & | random_lessthan_2exp (Integer &r, const uint64_t &m) |
returns a random integer r in the intervall [[x, 2^m-1]] where x = 0 or -(2^m-1) according to ALWAYSPOSITIVE returns a random integer r of at most m bits | |
static Integer & | random_lessthan_2exp (Integer &r, const uint64_t &m) |
Random numbers (no doc) | |
template<bool ALWAYSPOSITIVE> | |
static Integer | random_lessthan_2exp (const uint64_t &m) |
Random numbers (no doc) | |
static Integer | random_lessthan_2exp (const uint64_t &m) |
Random numbers (no doc) | |
template<bool ALWAYSPOSITIVE> | |
static Integer & | random_lessthan (Integer &r, const uint64_t &m) |
Random numbers (no doc) | |
static Integer & | random_lessthan (Integer &r, const uint64_t &m) |
Random numbers (no doc) | |
template<bool ALWAYSPOSITIVE, class T > | |
static Integer | random_lessthan (const T &m) |
Random numbers (no doc) | |
template<class T > | |
static Integer | random_lessthan (const T &m) |
Random numbers (no doc) | |
template<bool ALWAYSPOSITIVE> | |
static Integer & | random_exact_2exp (Integer &r, const uint64_t &m) |
returns a reference to a random number r of the size m bits, exactly. | |
static Integer & | random_exact_2exp (Integer &r, const uint64_t &m) |
Random numbers (no doc) | |
template<bool ALWAYSPOSITIVE> | |
static Integer & | random_exact (Integer &r, const Integer &s) |
returns a reference to a random number r of the size of s , exactly. | |
static Integer & | random_exact (Integer &r, const Integer &s) |
Random numbers (no doc) | |
template<bool ALWAYSPOSITIVE> | |
static Integer & | random_exact (Integer &r, const uint64_t &m) |
Random numbers (no doc) | |
static Integer & | random_exact (Integer &r, const uint64_t &m) |
Random numbers (no doc) | |
template<bool ALWAYSPOSITIVE, class T > | |
static Integer & | random_exact (Integer &r, const T &m) |
Random numbers (no doc) | |
template<class T > | |
static Integer & | random_exact (Integer &r, const T &m) |
Random numbers (no doc) | |
template<bool ALWAYSPOSITIVE, class T > | |
static Integer | random_exact (const T &s) |
Random numbers (no doc) | |
template<class T > | |
static Integer | random_exact (const T &s) |
Random numbers (no doc) | |
static Integer & | random_between (Integer &r, const Integer &m, const Integer &M) |
Random numbers (no doc) | |
static Integer | random_between (const Integer &m, const Integer &M) |
Random numbers (no doc) | |
static Integer & | random_between_2exp (Integer &r, const uint64_t &m, const uint64_t &M) |
Random numbers (no doc) | |
static Integer & | random_between (Integer &r, const uint64_t &m, const uint64_t &M) |
Random numbers (no doc) | |
static Integer | random_between_2exp (const uint64_t &m, const uint64_t &M) |
Random numbers (no doc) | |
static Integer | random_between (const uint64_t &m, const uint64_t &M) |
Random numbers (no doc) | |
template<class R > | |
static Integer | random_between (const R &m, const R &M) |
Random numbers (no doc) | |
template<class R > | |
static Integer & | random_between (Integer &r, const R &m, const R &M) |
Random numbers (no doc) | |
template<bool ALWAYSPOSITIVE, class T > | |
static Integer & | random (Integer &r, const T &m) |
returns a random integer less than... | |
template<class T > | |
static Integer & | random (Integer &r, const T &m) |
Random numbers (no doc) | |
template<bool ALWAYSPOSITIVE, class T > | |
static Integer | random (const T &sz) |
returns a random integer less than... | |
template<class T > | |
static Integer | random (const T &sz) |
Random numbers (no doc) | |
template<bool ALWAYSPOSITIVE> | |
static Integer | random () |
Random numbers (no doc) | |
static Integer | random () |
Random numbers (no doc) | |
template<bool ALWAYSPOSITIVE, class T > | |
static Integer | nonzerorandom (const T &sz) |
Random numbers (no doc) | |
template<bool ALWAYSPOSITIVE, class T > | |
static Integer & | nonzerorandom (Integer &r, const T &size) |
Random numbers (no doc) | |
template<class T > | |
static Integer | nonzerorandom (const T &sz) |
Random numbers (no doc) | |
template<class T > | |
static Integer & | nonzerorandom (Integer &r, const T &size) |
Random numbers (no doc) | |
static Integer | nonzerorandom () |
Random numbers (no doc) | |
Static Public Attributes | |
static const Integer | zero |
zero (0) | |
static const Integer | one |
one (1) | |
static const Integer | mOne |
minus one (-1) | |
Friends | |
giv_all_inlined Integer & | powmod (Integer &Res, const Integer &n, const uint64_t e, const Integer &m) |
modular pow. return ![]() | |
giv_all_inlined Integer & | powmod (Integer &Res, const Integer &n, const int64_t e, const Integer &m) |
giv_all_inlined Integer & | powmod (Integer &Res, const Integer &n, const uint32_t e, const Integer &m) |
giv_all_inlined Integer & | powmod (Integer &Res, const Integer &n, const int32_t e, const Integer &m) |
giv_all_inlined Integer & | powmod (Integer &Res, const Integer &n, const Integer &e, const Integer &m) |
giv_all_inlined Integer | powmod (const Integer &n, const uint64_t e, const Integer &m) |
modular pow. More... | |
giv_all_inlined Integer | powmod (const Integer &n, const int64_t e, const Integer &m) |
giv_all_inlined Integer | powmod (const Integer &n, const uint32_t e, const Integer &m) |
giv_all_inlined Integer | powmod (const Integer &n, const int32_t e, const Integer &m) |
giv_all_inlined Integer | powmod (const Integer &n, const Integer &e, const Integer &m) |
giv_all_inlined Integer | fact (uint64_t l) |
fact More... | |
giv_all_inlined Integer | sqrt (const Integer &p) |
(square) roots More... | |
giv_all_inlined Integer & | sqrt (Integer &r, const Integer &p) |
(square) roots More... | |
giv_all_inlined Integer | sqrtrem (const Integer &p, Integer &rem) |
(square) roots More... | |
giv_all_inlined Integer & | sqrtrem (Integer &r, const Integer &p, Integer &rem) |
(square) roots More... | |
giv_all_inlined bool | root (Integer &q, const Integer &a, uint32_t n) |
(square) roots More... | |
giv_all_inlined int64_t | logp (const Integer &a, const Integer &p) |
logs More... | |
giv_all_inlined double | logtwo (const Integer &a) |
logs More... | |
giv_all_inlined double | naturallog (const Integer &a) |
logs More... | |
Arithmetic functions | |
giv_all_inlined Integer | gcd (const Integer &a, const Integer &b) |
gcd. More... | |
giv_all_inlined Integer | gcd (Integer &u, Integer &v, const Integer &a, const Integer &b) |
giv_all_inlined Integer & | gcd (Integer &g, const Integer &a, const Integer &b) |
giv_all_inlined Integer & | gcd (Integer &g, Integer &u, Integer &v, const Integer &a, const Integer &b) |
giv_all_inlined Integer & | inv (Integer &u, const Integer &a, const Integer &b) |
Inverse. More... | |
giv_all_inlined Integer & | invin (Integer &u, const Integer &b) |
Compute the inverse inplace u = u/b. More... | |
giv_all_inlined Integer | pp (const Integer &P, const Integer &Q) |
pp More... | |
giv_all_inlined Integer & | lcm (Integer &g, const Integer &a, const Integer &b) |
lcm More... | |
giv_all_inlined Integer | lcm (const Integer &a, const Integer &b) |
lcm More... | |
giv_all_inlined Integer & | pow (Integer &Res, const Integer &n, const int64_t l) |
pow. More... | |
giv_all_inlined Integer & | pow (Integer &Res, const uint64_t n, const uint64_t l) |
giv_all_inlined Integer & | pow (Integer &Res, const Integer &n, const uint64_t l) |
giv_all_inlined Integer & | pow (Integer &Res, const Integer &n, const int32_t l) |
giv_all_inlined Integer & | pow (Integer &Res, const Integer &n, const uint32_t l) |
giv_all_inlined Integer | pow (const Integer &n, const int64_t l) |
pow. More... | |
giv_all_inlined Integer | pow (const Integer &n, const uint64_t l) |
giv_all_inlined Integer | pow (const Integer &n, const int32_t l) |
giv_all_inlined Integer | pow (const Integer &n, const uint32_t l) |
primes | |
giv_all_inlined Integer & | Protected::prevprime (Integer &, const Integer &p) |
giv_all_inlined Integer & | Protected::nextprime (Integer &, const Integer &p) |
giv_all_inlined int32_t | Protected::probab_prime (const Integer &p, int32_t r) |
giv_all_inlined int32_t | jacobi (const Integer &u, const Integer &v) |
giv_all_inlined int32_t | legendre (const Integer &u, const Integer &v) |
Comparisons functions. | |
giv_all_inlined friend int32_t | compare (const Integer &a, const Integer &b) |
Compares two integers. More... | |
giv_all_inlined friend int32_t | absCompare (const Integer &a, const Integer &b) |
Compare the norm of two integers. More... | |
giv_all_inlined friend int32_t | absCompare (const Integer &a, const double b) |
giv_all_inlined friend int32_t | absCompare (const Integer &a, const float b) |
giv_all_inlined friend int32_t | absCompare (const Integer &a, const uint64_t b) |
giv_all_inlined friend int32_t | absCompare (const Integer &a, const unsigned b) |
giv_all_inlined friend int32_t | absCompare (const Integer &a, const int64_t b) |
giv_all_inlined friend int32_t | absCompare (const Integer &a, const int32_t b) |
template<class T > | |
giv_all_inlined friend int32_t | absCompare (const T a, const Integer &b) |
giv_all_inlined int32_t | isOne (const Integer &a) |
name compare to 1 and 0 More... | |
giv_all_inlined int32_t | isMOne (const Integer &a) |
Compares two integers. More... | |
giv_all_inlined int32_t | nonZero (const Integer &a) |
name compare to 1 and 0 More... | |
giv_all_inlined int32_t | isZero (const Integer &a) |
name compare to 1 and 0 More... | |
giv_all_inlined int32_t | isZero (const int16_t a) |
giv_all_inlined int32_t | isZero (const int32_t a) |
giv_all_inlined int32_t | isZero (const int64_t a) |
giv_all_inlined int32_t | isZero (const uint16_t a) |
giv_all_inlined int32_t | isZero (const uint32_t a) |
giv_all_inlined int32_t | isZero (const uint64_t a) |
template<class A , class B > | |
static giv_all_inlined bool | isleq (const A &a, const B &b) |
isleq More... | |
Comparison operators. | |
giv_all_inlined int32_t | operator>= (const Integer &l) const |
greater or equal. More... | |
giv_all_inlined int32_t | operator>= (const int32_t l) const |
giv_all_inlined int32_t | operator>= (const int64_t l) const |
giv_all_inlined int32_t | operator>= (const uint64_t l) const |
giv_all_inlined int32_t | operator>= (const uint32_t l) const |
giv_all_inlined int32_t | operator>= (const double l) const |
giv_all_inlined int32_t | operator>= (const float l) const |
giv_all_inlined int32_t | operator<= (const Integer &l) const |
less or equal More... | |
giv_all_inlined int32_t | operator<= (const int32_t l) const |
giv_all_inlined int32_t | operator<= (const int64_t l) const |
giv_all_inlined int32_t | operator<= (const uint64_t l) const |
giv_all_inlined int32_t | operator<= (const uint32_t l) const |
giv_all_inlined int32_t | operator<= (const double l) const |
giv_all_inlined int32_t | operator<= (const float l) const |
giv_all_inlined int32_t | operator!= (const Integer &l) const |
operator != (not equal) More... | |
giv_all_inlined int32_t | operator!= (const int32_t l) const |
giv_all_inlined int32_t | operator!= (const int64_t l) const |
giv_all_inlined int32_t | operator!= (const uint64_t l) const |
giv_all_inlined int32_t | operator!= (const uint32_t l) const |
giv_all_inlined int32_t | operator!= (const double l) const |
giv_all_inlined int32_t | operator!= (const float l) const |
giv_all_inlined int32_t | operator== (const Integer &l) const |
Equality. More... | |
giv_all_inlined int32_t | operator== (const int32_t l) const |
giv_all_inlined int32_t | operator== (const int64_t l) const |
giv_all_inlined int32_t | operator== (const uint64_t l) const |
giv_all_inlined int32_t | operator== (const uint32_t l) const |
giv_all_inlined int32_t | operator== (const double l) const |
giv_all_inlined int32_t | operator== (const float l) const |
giv_all_inlined int32_t | operator> (const Integer &l) const |
greater (strict) More... | |
giv_all_inlined int32_t | operator> (const int32_t l) const |
giv_all_inlined int32_t | operator> (const int64_t l) const |
giv_all_inlined int32_t | operator> (const uint64_t l) const |
giv_all_inlined int32_t | operator> (const uint32_t l) const |
giv_all_inlined int32_t | operator> (const double l) const |
giv_all_inlined int32_t | operator> (const float l) const |
giv_all_inlined int32_t | operator< (const Integer &l) const |
less (strict) More... | |
giv_all_inlined int32_t | operator< (const int32_t l) const |
giv_all_inlined int32_t | operator< (const int64_t l) const |
giv_all_inlined int32_t | operator< (const uint64_t l) const |
giv_all_inlined int32_t | operator< (const uint32_t l) const |
giv_all_inlined int32_t | operator< (const double l) const |
giv_all_inlined int32_t | operator< (const float l) const |
giv_all_inlined friend int32_t | operator>= (uint32_t l, const Integer &n) |
greater or equal. More... | |
giv_all_inlined friend int32_t | operator>= (float l, const Integer &n) |
giv_all_inlined friend int32_t | operator>= (double l, const Integer &n) |
giv_all_inlined friend int32_t | operator>= (int32_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator>= (int64_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator>= (uint64_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator<= (uint32_t l, const Integer &n) |
less or equal More... | |
giv_all_inlined friend int32_t | operator<= (float l, const Integer &n) |
giv_all_inlined friend int32_t | operator<= (double l, const Integer &n) |
giv_all_inlined friend int32_t | operator<= (int32_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator<= (int64_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator<= (uint64_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator!= (uint32_t l, const Integer &n) |
operator != (not equal) More... | |
giv_all_inlined friend int32_t | operator!= (float l, const Integer &n) |
giv_all_inlined friend int32_t | operator!= (double l, const Integer &n) |
giv_all_inlined friend int32_t | operator!= (int32_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator!= (int64_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator!= (uint64_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator== (uint32_t l, const Integer &n) |
Equality. More... | |
giv_all_inlined friend int32_t | operator== (float l, const Integer &n) |
giv_all_inlined friend int32_t | operator== (double l, const Integer &n) |
giv_all_inlined friend int32_t | operator== (int32_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator== (int64_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator== (uint64_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator> (uint32_t l, const Integer &n) |
greater (strict) More... | |
giv_all_inlined friend int32_t | operator> (float l, const Integer &n) |
giv_all_inlined friend int32_t | operator> (double l, const Integer &n) |
giv_all_inlined friend int32_t | operator> (int32_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator> (int64_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator> (uint64_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator< (uint32_t l, const Integer &n) |
less (strict) More... | |
giv_all_inlined friend int32_t | operator< (float l, const Integer &n) |
giv_all_inlined friend int32_t | operator< (double l, const Integer &n) |
giv_all_inlined friend int32_t | operator< (int32_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator< (int64_t l, const Integer &n) |
giv_all_inlined friend int32_t | operator< (uint64_t l, const Integer &n) |
Addition, substraction, multiplication operators | |
giv_all_inlined Integer | operator+ (const Integer &n) const |
operator + . More... | |
giv_all_inlined Integer | operator+ (const uint64_t n) const |
giv_all_inlined Integer | operator+ (const int64_t n) const |
giv_all_inlined Integer | operator+ (const uint32_t n) const |
giv_all_inlined Integer | operator+ (const int32_t n) const |
giv_all_inlined Integer & | operator+= (const Integer &n) |
operator += . More... | |
giv_all_inlined Integer & | operator+= (const uint64_t n) |
giv_all_inlined Integer & | operator+= (const int64_t n) |
giv_all_inlined Integer & | operator+= (const uint32_t n) |
giv_all_inlined Integer & | operator+= (const int32_t n) |
template<class XXX > | |
Integer & | operator+= (const XXX &n) |
giv_all_inlined Integer | operator- (const Integer &n) const |
operator - . More... | |
giv_all_inlined Integer | operator- (const uint64_t n) const |
giv_all_inlined Integer | operator- (const int64_t n) const |
giv_all_inlined Integer | operator- (const uint32_t n) const |
giv_all_inlined Integer | operator- (const int32_t n) const |
giv_all_inlined Integer & | operator-= (const Integer &n) |
operator -= . More... | |
giv_all_inlined Integer & | operator-= (const uint64_t n) |
giv_all_inlined Integer & | operator-= (const int64_t n) |
giv_all_inlined Integer & | operator-= (const uint32_t n) |
giv_all_inlined Integer & | operator-= (const int32_t n) |
template<class XXX > | |
Integer & | operator-= (const XXX &n) |
giv_all_inlined Integer | operator- () const |
Opposite. More... | |
giv_all_inlined Integer | operator* (const Integer &n) const |
operator * . More... | |
giv_all_inlined Integer | operator* (const uint64_t n) const |
giv_all_inlined Integer | operator* (const int64_t n) const |
giv_all_inlined Integer | operator* (const uint32_t n) const |
giv_all_inlined Integer | operator* (const int32_t n) const |
giv_all_inlined Integer & | operator*= (const Integer &n) |
operator *= . More... | |
giv_all_inlined Integer & | operator*= (const uint64_t n) |
giv_all_inlined Integer & | operator*= (const int64_t n) |
giv_all_inlined Integer & | operator*= (const uint32_t n) |
giv_all_inlined Integer & | operator*= (const int32_t n) |
template<class XXX > | |
Integer & | operator*= (const XXX &n) |
giv_all_inlined Integer | operator+ (const int32_t l, const Integer &n) |
operator +. More... | |
giv_all_inlined Integer | operator+ (const uint32_t l, const Integer &n) |
giv_all_inlined Integer | operator+ (const int64_t l, const Integer &n) |
giv_all_inlined Integer | operator+ (const uint64_t l, const Integer &n) |
giv_all_inlined Integer | operator- (const int32_t l, const Integer &n) |
operator - More... | |
giv_all_inlined Integer | operator- (const uint32_t l, const Integer &n) |
giv_all_inlined Integer | operator- (const int64_t l, const Integer &n) |
giv_all_inlined Integer | operator- (const uint64_t l, const Integer &n) |
giv_all_inlined Integer | operator* (const int32_t l, const Integer &n) |
operator * More... | |
giv_all_inlined Integer | operator* (const uint32_t l, const Integer &n) |
giv_all_inlined Integer | operator* (const int64_t l, const Integer &n) |
giv_all_inlined Integer | operator* (const uint64_t l, const Integer &n) |
Division/euclidean division/modulo | |
The convention for rounding are the following :
| |
giv_all_inlined Integer | operator/ (const Integer &d) const |
Division operator. More... | |
giv_all_inlined Integer | operator/ (const uint64_t d) const |
giv_all_inlined Integer | operator/ (const int64_t d) const |
giv_all_inlined Integer | operator/ (const uint32_t d) const |
giv_all_inlined Integer | operator/ (const int32_t d) const |
giv_all_inlined Integer & | operator/= (const Integer &d) |
Division operator (inplace). More... | |
giv_all_inlined Integer & | operator/= (const uint64_t d) |
giv_all_inlined Integer & | operator/= (const int64_t d) |
giv_all_inlined Integer & | operator/= (const uint32_t d) |
giv_all_inlined Integer & | operator/= (const int32_t d) |
template<class XXX > | |
Integer & | operator/= (const XXX &d) |
giv_all_inlined Integer | operator% (const Integer &n) const |
Modulo operator. More... | |
giv_all_inlined int64_t | operator% (const uint64_t n) const |
giv_all_inlined int64_t | operator% (const int64_t n) const |
giv_all_inlined int32_t | operator% (const uint32_t n) const |
giv_all_inlined int32_t | operator% (const int32_t n) const |
giv_all_inlined double | operator% (const double n) const |
int16_t | operator% (const uint16_t n) const |
template<class XXX > | |
XXX | operator% (const XXX &n) const |
giv_all_inlined Integer & | operator%= (const Integer &n) |
Modulo operator (inplace). More... | |
giv_all_inlined Integer & | operator%= (const uint64_t n) |
giv_all_inlined Integer & | operator%= (const int64_t n) |
giv_all_inlined Integer & | operator%= (const uint32_t n) |
giv_all_inlined Integer & | operator%= (const int32_t n) |
template<class XXX > | |
Integer & | operator%= (const XXX &n) |
giv_all_inlined Integer | operator/ (const int32_t l, const Integer &n) |
operator / | |
giv_all_inlined Integer | operator/ (const int64_t l, const Integer &n) |
giv_all_inlined Integer | operator/ (const uint32_t l, const Integer &n) |
operator / | |
giv_all_inlined Integer | operator/ (const uint64_t l, const Integer &n) |
giv_all_inlined Integer | operator% (const int64_t l, const Integer &n) |
operator % More... | |
giv_all_inlined Integer | operator% (const uint64_t l, const Integer &n) |
giv_all_inlined Integer | operator% (const int32_t l, const Integer &n) |
giv_all_inlined Integer | operator% (const uint32_t l, const Integer &n) |
static giv_all_inlined Integer & | divin (Integer &q, const Integer &d) |
Division q/=d . More... | |
static giv_all_inlined Integer & | divin (Integer &q, const int64_t d) |
static giv_all_inlined Integer & | divin (Integer &q, const uint64_t d) |
static giv_all_inlined Integer & | div (Integer &q, const Integer &n, const Integer &d) |
Division q=n/d . More... | |
static giv_all_inlined Integer & | div (Integer &q, const Integer &n, const int64_t d) |
static giv_all_inlined Integer & | div (Integer &q, const Integer &n, const int32_t d) |
static giv_all_inlined Integer & | div (Integer &q, const Integer &n, const uint64_t d) |
static giv_all_inlined Integer & | divexact (Integer &q, const Integer &n, const Integer &d) |
Division when d divides n . More... | |
static giv_all_inlined Integer & | divexact (Integer &q, const Integer &n, const uint64_t &d) |
Division operator. More... | |
static giv_all_inlined Integer & | divexact (Integer &q, const Integer &n, const int64_t &d) |
Division operator. More... | |
static giv_all_inlined Integer | divexact (const Integer &n, const Integer &d) |
Division when d divides n . More... | |
static giv_all_inlined Integer | divexact (const Integer &n, const uint64_t &d) |
Division operator. More... | |
static giv_all_inlined Integer | divexact (const Integer &n, const int64_t &d) |
Division operator. More... | |
static giv_all_inlined Integer & | trem (Integer &r, const Integer &n, const Integer &d) |
Stuff. | |
static giv_all_inlined Integer & | crem (Integer &r, const Integer &n, const Integer &d) |
Division operator. More... | |
static giv_all_inlined Integer & | frem (Integer &r, const Integer &n, const Integer &d) |
Division operator. More... | |
static giv_all_inlined Integer & | trem (Integer &r, const Integer &n, const uint64_t &d) |
Stuff. | |
static giv_all_inlined Integer & | crem (Integer &r, const Integer &n, const uint64_t &d) |
Division operator. More... | |
static giv_all_inlined Integer & | frem (Integer &r, const Integer &n, const uint64_t &d) |
Division operator. More... | |
static giv_all_inlined uint64_t | trem (const Integer &n, const uint64_t &d) |
Stuff. | |
static giv_all_inlined uint64_t | crem (const Integer &n, const uint64_t &d) |
Division operator. More... | |
static giv_all_inlined uint64_t | frem (const Integer &n, const uint64_t &d) |
Division operator. More... | |
static giv_all_inlined Integer & | modin (Integer &r, const Integer &n) |
Function mod (inplace). More... | |
static giv_all_inlined Integer & | modin (Integer &r, const int64_t n) |
static giv_all_inlined Integer & | modin (Integer &r, const uint64_t n) |
static giv_all_inlined Integer & | mod (Integer &r, const Integer &n, const Integer &d) |
Function mod . More... | |
static giv_all_inlined Integer & | mod (Integer &r, const Integer &n, const int64_t d) |
static giv_all_inlined Integer & | mod (Integer &r, const Integer &n, const uint64_t d) |
static giv_all_inlined Integer & | mod (Integer &r, const Integer &n, const int32_t d) |
static giv_all_inlined Integer & | mod (Integer &r, const Integer &n, const uint32_t d) |
static giv_all_inlined Integer & | divmod (Integer &q, Integer &r, const Integer &n, const Integer &d) |
Euclidean division. More... | |
static giv_all_inlined Integer & | divmod (Integer &q, int64_t &r, const Integer &n, const int64_t d) |
static giv_all_inlined Integer & | divmod (Integer &q, uint64_t &r, const Integer &n, const uint64_t d) |
static giv_all_inlined Integer & | ceil (Integer &res, const Integer &n, const Integer &d) |
rounding functions. More... | |
static giv_all_inlined Integer & | floor (Integer &res, const Integer &n, const Integer &d) |
static giv_all_inlined Integer & | trunc (Integer &res, const Integer &n, const Integer &d) |
static giv_all_inlined Integer | ceil (const Integer &n, const Integer &d) |
rounding functions. More... | |
static giv_all_inlined Integer | floor (const Integer &n, const Integer &d) |
static giv_all_inlined Integer | trunc (const Integer &n, const Integer &d) |
Miscellaneous. | |
int32_t | sign () const |
sign | |
int32_t | priv_sign () const |
private sign | |
giv_all_inlined void | swap (Integer &a, Integer &b) |
int32_t | sign (const Integer &a) |
sign More... | |
representation | |
mpz_ptr | get_mpz () |
get representation (constant) | |
mpz_srcptr | get_mpz () const |
get representation (constant) | |
mpz_srcptr | get_mpz_const () const |
get representation (constant) | |
giv_all_inlined size_t | size () const |
returns the number of machine words used to store *this | |
giv_all_inlined size_t | size_in_base (int32_t B) const |
returns ceil(log_BASE(*this)) . More... | |
giv_all_inlined size_t | bitsize () const |
returns ceil(log_2(*this)) . More... | |
giv_all_inlined uint64_t | operator[] (size_t i) const |
return the i-th word of the integer. More... | |
giv_all_inlined uint64_t | length (const Integer &a) |
returns the number of bytes used to store *this More... | |
giv_all_inlined int32_t | isperfectpower (const Integer &n) |
perfect power | |
giv_all_inlined Integer | abs (const Integer &n) |
absolute value | |
giv_all_inlined bool | isOdd (const Integer &) |
parity of an integer More... | |
I/O | |
giv_all_inlined std::ostream & | print (std::ostream &o) const |
print32_t integer. More... | |
giv_all_inlined std::istream & | operator>> (std::istream &i, Integer &n) |
Input/Output of Integers. More... | |
giv_all_inlined std::ostream & | operator<< (std::ostream &o, const Integer &n) |
out operator. More... | |
giv_all_inlined std::ostream & | absOutput (std::ostream &o, const Integer &n) |
nodoc More... | |
giv_all_inlined void | Protected::importWords (Integer &x, size_t count, int32_t order, int32_t size, int32_t endian, size_t nails, const void *op) |
nodoc More... | |
This is the Integer class.
An Integer is represented as a GMP integer. This class provides arithmetic on Integers.
Integer | ( | int32_t | n = 0 | ) |
Constructor form a known type.
n | input to be constructed from |
Integer | ( | int64_t | n | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer | ( | unsigned char | n | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer | ( | uint32_t | n | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer | ( | uint64_t | n | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer | ( | double | n | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer | ( | const char * | n | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
giv_all_inlined Integer | ( | uint64_t * | d, |
int64_t | sz | ||
) |
Creates a new Integer from pointers.
d | array |
sz | size |
Creates a new Integers for a vector of limbs.
v | vector of limbs |
|
inlinestatic |
isleq
a,b |
int32_t operator>= | ( | const Integer & | l | ) | const |
greater or equal.
l | integer to be compared to |
int32_t operator>= | ( | const int32_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator>= | ( | const int64_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator>= | ( | const uint64_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator>= | ( | const uint32_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator>= | ( | const double | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator>= | ( | const float | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator<= | ( | const Integer & | l | ) | const |
less or equal
l | integer to be compared to |
int32_t operator<= | ( | const int32_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator<= | ( | const int64_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator<= | ( | const uint64_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator<= | ( | const uint32_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator<= | ( | const double | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator<= | ( | const float | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator!= | ( | const Integer & | l | ) | const |
operator != (not equal)
l | integer |
1
iff l == this int32_t operator!= | ( | const int32_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator!= | ( | const int64_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator!= | ( | const uint64_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator!= | ( | const uint32_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator!= | ( | const double | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator!= | ( | const float | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator== | ( | const Integer & | l | ) | const |
Equality.
l | integer to be compared to |
int32_t operator== | ( | const int32_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator== | ( | const int64_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator== | ( | const uint64_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator== | ( | const uint32_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator== | ( | const double | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator== | ( | const float | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator> | ( | const Integer & | l | ) | const |
greater (strict)
l | integer to be compared to |
int32_t operator> | ( | const int32_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator> | ( | const int64_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator> | ( | const uint64_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator> | ( | const uint32_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator> | ( | const double | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator> | ( | const float | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator< | ( | const Integer & | l | ) | const |
less (strict)
l | integer to be compared to |
int32_t operator< | ( | const int32_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator< | ( | const int64_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator< | ( | const uint64_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator< | ( | const uint32_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator< | ( | const double | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int32_t operator< | ( | const float | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer operator^ | ( | const uint64_t & | a | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer operator^ | ( | const uint32_t & | a | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer & operator^= | ( | const uint64_t & | a | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer & operator^= | ( | const uint32_t & | a | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer operator| | ( | const uint64_t & | a | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer operator| | ( | const uint32_t & | a | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer & operator|= | ( | const uint64_t & | a | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer & operator|= | ( | const uint32_t & | a | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
giv_all_inlined uint32_t operator& | ( | const uint32_t & | a | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
giv_all_inlined uint64_t operator& | ( | const uint64_t & | a | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
giv_all_inlined Integer& operator&= | ( | const uint64_t & | a | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
giv_all_inlined Integer& operator&= | ( | const uint32_t & | a | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer operator<< | ( | int32_t | l | ) | const |
left shift (<<)
l | shift |
Integer operator<< | ( | int64_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer operator<< | ( | uint32_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer operator<< | ( | uint64_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer & operator<<= | ( | int32_t | l | ) |
left shift inplace (<<=)
l | shift |
Integer & operator<<= | ( | int64_t | l | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer & operator<<= | ( | uint32_t | l | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer & operator<<= | ( | uint64_t | l | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer operator>> | ( | int32_t | l | ) | const |
right shift (>>)
l | shift |
Integer operator>> | ( | int64_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer operator>> | ( | uint32_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer operator>> | ( | uint64_t | l | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer & operator>>= | ( | int32_t | l | ) |
right shift inplace (>>=)
l | shift |
Integer & operator>>= | ( | int64_t | l | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer & operator>>= | ( | uint32_t | l | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer & operator>>= | ( | uint64_t | l | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Addition (inplace) res+=n
.
res | as in the formula |
n | as in the formula |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Addition res=n1+n2
.
res | as in the formula |
n1 | as in the formula |
n2 | as in the formula |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inlinestatic |
Addition (inplace) res+=n
.
res | as in the formula |
n | as in the formula |
|
inlinestatic |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Substraction (inplace) res-=n
.
res | as in the formula |
n | as in the formula |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Substraction res=n1-n2
.
res | as in the formula |
n1 | as in the formula |
n2 | as in the formula |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inlinestatic |
Addition (inplace) res+=n
.
res | as in the formula |
n | as in the formula |
|
inlinestatic |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Negation (inplace) res=-res
.
res | as in the formula |
Negation res=-n
.
n | as in the formula |
res | as in the formula |
Multiplication (inplace) res*=n
.
res | as in the formula |
n | as in the formula |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Multiplication res=n1*n2
.
res | as in the formula |
n1 | as in the formula |
n2 | as in the formula |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inlinestatic |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inlinestatic |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
operator +
.
(*this)+n
n | as in the formula. |
Integer operator+ | ( | const uint64_t | n | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer operator+ | ( | const int64_t | n | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
operator +=
.
n | asfriend In the formula. |
(*this) += n
. Integer & operator+= | ( | const uint64_t | n | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer & operator+= | ( | const int64_t | n | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
operator -
.
(*this)-n
n | as in the formula. |
Integer operator- | ( | const uint64_t | n | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer operator- | ( | const int64_t | n | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
operator -=
.
n | as in the formula. |
(*this) -= n
. Integer & operator-= | ( | const uint64_t | n | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer & operator-= | ( | const int64_t | n | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer operator- | ( | ) | const |
Opposite.
-(*this)
. operator *
.
(*this)*n
n | as in the formula. |
Integer operator* | ( | const uint64_t | n | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer operator* | ( | const int64_t | n | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
operator *=
.
n | as in the formula. |
(*this) *= n
. Integer & operator*= | ( | const uint64_t | n | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer & operator*= | ( | const int64_t | n | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
axpy res = ax+y
.
res | Integers as in the forumla |
a | Integers as in the forumla |
x | Integers as in the forumla |
y | Integers as in the forumla |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
axpyin (inplace) res += ax
.
res | Integers as in the formula. |
a | Integers as in the formula. |
x | Integers as in the formula. |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
maxpy res = y - ax
.
res | Integers as in the formula. |
a | Integers as in the formula. |
x | Integers as in the formula. |
y | Integers as in the formula. |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
maxpyin res -= ax
.
res | Integers as in the formula. |
a | Integers as in the formula. |
x | Integers as in the formula. |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
axmy res = ax - y
.
res | Integers as in the formula. |
a | Integers as in the formula. |
x | Integers as in the formula. |
y | Integers as in the formula. |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
axmyin (in place) res = ax - res
.
res | Integers as in the formula. |
a | Integers as in the formula. |
x | Integers as in the formula. |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Division q/=d
.
q | quotient |
d | divisor. |
q
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Division q=n/d
.
q | quotient |
n | dividand. |
d | divisor |
q
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Division when d
divides n
.
q | exact quotient |
n | dividend |
d | divisor |
Division operator.
d | divisor |
Division operator.
d | divisor |
Division when d
divides n
.
n | dividend |
d | divisor |
n/d
Division operator.
d | divisor |
Division operator.
d | divisor |
Division operator.
d | divisor |
Division operator.
d | divisor |
Division operator.
d | divisor |
Division operator.
d | divisor |
|
static |
Division operator.
d | divisor |
|
static |
Division operator.
d | divisor |
Integer operator/ | ( | const uint64_t | d | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer operator/ | ( | const int64_t | d | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer & operator/= | ( | const uint64_t | d | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer & operator/= | ( | const int64_t | d | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Function mod
(inplace).
r | remainder |
n | modulus |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Function mod
.
r | remainder |
n | integer |
d | modulus |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inlinestatic |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inlinestatic |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Euclidean division.
n = d q + r
. Computes both the quotient and the residue (as in quorem).
q | as in the formula |
r | as in the formula |
n | as in the formula |
d | as in the formula |
q
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
rounding functions.
these are the same as the STL ones, except for the signature.
res | the result |
n | the numerator |
d | the demominator |
same as std::ceil (n/d)
same as std::floor(n/d)
same as std::trunc(n/d)
rounding functions.
these are the same as the STL ones, except for the signature.
n | the numerator |
d | the demominator |
same as std::ceil (n/d)
Modulo operator.
n | modulus |
(*this) mod n
int64_t operator% | ( | const uint64_t | n | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int64_t operator% | ( | const int64_t | n | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
double operator% | ( | const double | n | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Modulo operator (inplace).
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
n | modulus |
(*this) <- (*this) mod n
Integer & operator%= | ( | const uint64_t | n | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Integer & operator%= | ( | const int64_t | n | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
size_t size_in_base | ( | int32_t | B | ) | const |
returns ceil(log_BASE(*this))
.
size_t bitsize | ( | ) | const |
returns ceil(log_2(*this))
.
uint64_t operator[] | ( | size_t | i | ) | const |
return the i-th word of the integer.
Word 0 is lowest word.
returns a random integer r
in the intervall [[x, m-1]]
where x = 0 or -(m-1) according to ALWAYSPOSITIVE
std::ostream & print | ( | std::ostream & | o | ) | const |
print32_t integer.
o | output stream. |
Compares two integers.
a | integer |
b | integer |
1
if 0
if -1
otherwise. Compare the norm of two integers.
a | integer |
b | integer |
1
if 0
if -1
otherwise.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
name compare to 1 and 0
a |
|
friend |
Compares two integers.
a | integer |
b | integer |
1
if 0
if -1
otherwise.
|
friend |
name compare to 1 and 0
a |
|
friend |
name compare to 1 and 0
a |
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
greater or equal.
l,n | integers to compare |
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
less or equal
l,n | integers to compare |
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
operator != (not equal)
l,n | integer |
1
iff l == n
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
Equality.
l,n | integers to compare |
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
greater (strict)
l,n | integers to compare |
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
less (strict)
l,n | integers to compare |
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
operator +.
l,n | to be added |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
operator -
l,n | to be substracted |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
operator *
l,n | to be multpct |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
operator %
l | |
n |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Inverse.
Compute the inverse u = a/b.
u | ||
a | ||
b | ||
a | ||
b | ||
[out] | u | is set to ![]() |
Compute the inverse inplace u = u/b.
u | |
b |
lcm
g,a,b |
pow.
return
Res,n,l |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
pow.
return
n,l |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
modular pow.
return .
n,e,m |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
friend |
fact
l |
(square) roots
r,p |
(square) roots
p,rem |
(square) roots
r,p,rem |
(square) roots
q,a,n |
|
friend |
logs
a |
|
friend |
logs
a |
|
friend |
sign
a |
|
friend |
returns the number of bytes used to store *this
a |
|
friend |
parity of an integer
a | integer |
|
friend |
Input/Output of Integers.
in operator.
i | input stream |
n | integer to be built |
|
friend |
out operator.
o | output stream |
n | integer to be printed |
|
friend |
nodoc
o | output |
n | integer |
|
friend |
nodoc
x | x |
count | x |
order | x |
size | x |
endian | x |
nails | x |
op | x |