|
Classes |
| union | ieee_double_extract |
| | Structure to extract bits from the IEEE double type. More...
|
| class | mpf_ |
| | Third level core class that provides floating point numbers to the MP++ library. More...
|
| class | mpf |
| | User class that provides an interface to use floating point numbers with the MP++ library. More...
|
| class | mpi_ |
| | Second level core class that provides signed integers to the MP++ library. More...
|
| class | mpi |
| | User class that provides an interface to use signed integers with the MP++ library. More...
|
| class | mpn_ |
| | First level core class that provides natural numbers to the MP++ library. More...
|
Namespaces |
| namespace | pi_gen |
| namespace | prime |
| | Container for primality testing stuff.
|
| namespace | prng |
| | Container for PRNG tools.
|
Unary positive & negative |
| mpf | operator+ (const mpf &x) |
| mpf | operator- (const mpf &x) |
Comparison overloads |
| bool | operator== (const mpi &x, int_type y) |
| bool | operator!= (const mpi &x, int_type y) |
| bool | operator< (const mpi &x, int_type y) |
| bool | operator<= (const mpi &x, int_type y) |
| bool | operator> (const mpi &x, int_type y) |
| bool | operator>= (const mpi &x, int_type y) |
| bool | operator== (int_type x, const mpi &y) |
| bool | operator!= (int_type x, const mpi &y) |
| bool | operator< (int_type x, const mpi &y) |
| bool | operator<= (int_type x, const mpi &y) |
| bool | operator> (int_type x, const mpi &y) |
| bool | operator>= (int_type x, const mpi &y) |
| bool | operator== (const mpi &x, const mpi &y) |
| bool | operator!= (const mpi &x, const mpi &y) |
| bool | operator< (const mpi &x, const mpi &y) |
| bool | operator<= (const mpi &x, const mpi &y) |
| bool | operator> (const mpi &x, const mpi &y) |
| bool | operator>= (const mpi &x, const mpi &y) |
Unary positive & negative |
| mpi | operator+ (const mpi &x) |
| mpi | operator- (const mpi &x) |
Bit shifting |
| mpi | operator>> (const mpi &x, mpi::size_type y) |
| mpi | operator<< (const mpi &x, mpi::size_type y) |
Bitwise overloads |
| mpi | operator & (const mpi &x, const mpi &y) |
| mpi | operator| (const mpi &x, const mpi &y) |
| mpi | operator^ (const mpi &x, const mpi &y) |
Typedefs |
| typedef unsigned char | byte |
| | Convenience renaming.
|
| typedef unsigned char | radix_type |
| | String conversion radix number type.
|
| typedef intptr_t | size_type |
| | This is preferred to be signed for comparison reasons.
|
| typedef uint16_t | limb_type |
| | Type of normal limbs.
|
| typedef uint32_t | limb_long_type |
| | Type of double-long limbs.
|
| typedef double | float_type |
| | Basic non-mpf float type.
|
Enumerations |
| enum | capability { IS_SIGNED = 0x01,
IS_RATIONAL = 0x02,
IS_FLOAT = 0x04,
CAN_INTERRUPT = 0x10
} |
Functions |
| mpf_ | log2 (size_type p) |
| bool | operator== (const mpf &x, const mpf &y) |
| bool | operator!= (const mpf &x, const mpf &y) |
| bool | operator< (const mpf &x, const mpf &y) |
| bool | operator<= (const mpf &x, const mpf &y) |
| bool | operator> (const mpf &x, const mpf &y) |
| bool | operator>= (const mpf &x, const mpf &y) |
| bool | operator== (const mpf &x, const mpi &y) |
| bool | operator!= (const mpf &x, const mpi &y) |
| bool | operator< (const mpf &x, const mpi &y) |
| bool | operator<= (const mpf &x, const mpi &y) |
| bool | operator> (const mpf &x, const mpi &y) |
| bool | operator>= (const mpf &x, const mpi &y) |
| bool | operator== (const mpf &x, int_type y) |
| bool | operator!= (const mpf &x, int_type y) |
| bool | operator< (const mpf &x, int_type y) |
| bool | operator<= (const mpf &x, int_type y) |
| bool | operator> (const mpf &x, int_type y) |
| bool | operator>= (const mpf &x, int_type y) |
| bool | operator== (const mpf &x, float_type y) |
| bool | operator!= (const mpf &x, float_type y) |
| bool | operator< (const mpf &x, float_type y) |
| bool | operator<= (const mpf &x, float_type y) |
| bool | operator> (const mpf &x, float_type y) |
| bool | operator>= (const mpf &x, float_type y) |
| mpf | operator+ (const mpf &x, int_type y) |
| mpf | operator+ (int_type x, const mpf &y) |
| mpf | operator+ (const mpf &x, float_type y) |
| mpf | operator+ (float_type y, const mpf &x) |
| mpf | operator+ (const mpf &x, const mpi &y) |
| mpf | operator+ (const mpi &x, const mpf &y) |
| mpf | operator+ (const mpf &x, const mpf &y) |
| mpf | operator- (const mpf &x, int_type y) |
| mpf | operator- (int_type x, const mpf &y) |
| mpf | operator- (const mpf &x, float_type y) |
| mpf | operator- (float_type x, const mpf &y) |
| mpf | operator- (const mpf &x, const mpi &y) |
| mpf | operator- (const mpi &x, const mpf &y) |
| mpf | operator- (const mpf &x, const mpf &y) |
| mpf | operator * (const mpf &x, int_type y) |
| mpf | operator * (int_type x, const mpf &y) |
| mpf | operator * (const mpf &x, float_type y) |
| mpf | operator * (float_type x, const mpf &y) |
| mpf | operator * (const mpf &x, const mpi &y) |
| mpf | operator * (const mpi &x, const mpf &y) |
| mpf | operator * (const mpf &x, const mpf &y) |
| mpf | operator/ (const mpf &x, int_type y) |
| mpf | operator/ (int_type x, const mpf &y) |
| mpf | operator/ (const mpf &x, float_type y) |
| mpf | operator/ (float_type x, const mpf &y) |
| mpf | operator/ (const mpf &x, const mpi &y) |
| mpf | operator/ (const mpi &x, const mpf &y) |
| mpf | operator/ (const mpf &x, const mpf &y) |
| mpf | operator% (const mpf &x, int_type y) |
| mpf | operator% (int_type x, const mpf &y) |
| mpf | operator% (const mpf &x, float_type y) |
| mpf | operator% (float_type x, const mpf &y) |
| mpf | operator% (const mpf &x, const mpi &y) |
| mpf | operator% (const mpi &x, const mpf &y) |
| mpf | operator% (const mpf &x, const mpf &y) |
| mpf | pi (size_type p) |
| mpf | abs (const mpf &n) |
| mpf | sqr (const mpf &n) |
| mpf | log (const mpf &n, size_type p) |
| mpf | exp (const mpf &n, size_type p) |
| mpf | pow (const mpf &b, const mpf &e, size_type p) |
| mpf | root (const mpf &x, limb_type n, size_type p) |
| mpf | sqrt (const mpf &n, size_type p) |
| istream & | operator>> (istream &is, mpf &n) |
| ostream & | operator<< (ostream &os, const mpf &n) |
| mpf | sin (const mpf &theta, size_type p) |
| mpf | cos (const mpf &theta, size_type p) |
| void | sin_cos (mpf &sin, mpf &cos, const mpf &theta, size_type p) |
| mpf | tan (const mpf &theta, size_type p) |
| mpf | operator+ (float_type x, const mpi &y) |
| mpf | operator- (float_type x, const mpi &y) |
| mpf | operator * (float_type x, const mpi &y) |
| mpf | round (const mpf &x, size_type a) |
| mpf | agm (const mpf &x, const mpf &y, size_type p) |
| mpf | asin (const mpf &x, size_type p=0) |
| mpf | acos (const mpf &x, size_type p=0) |
| mpf | atan (const mpf &x, size_type p=0) |
| mpi | operator+ (const mpi &x, mpi::int_type y) |
| mpi | operator+ (mpi::int_type x, const mpi &y) |
| mpi | operator+ (const mpi &x, const mpi &y) |
| mpi | operator- (const mpi &x, mpi::int_type y) |
| mpi | operator- (mpi::int_type x, const mpi &y) |
| mpi | operator- (const mpi &x, const mpi &y) |
| mpi | operator * (const mpi &x, mpi::int_type y) |
| mpi | operator * (mpi::int_type x, const mpi &y) |
| mpi | operator * (const mpi &x, const mpi &y) |
| mpi | operator/ (const mpi &x, mpi::int_type y) |
| mpi | operator/ (mpi::int_type x, const mpi &y) |
| mpi | operator/ (const mpi &x, const mpi &y) |
| mpi | operator% (const mpi &x, mpi::int_type y) |
| mpi | operator% (mpi::int_type x, const mpi &y) |
| mpi | operator% (const mpi &x, const mpi &y) |
| mpi | abs (const mpi &n) |
| | Absolute value.
|
| mpi | sqr (const mpi &n) |
| | Squaring.
|
| mpi | pow (const mpi &base, int_type p) |
| mpi | pow_mod (const mpi &base, const mpi &p, const mpi &m) |
| | Modular exponentiation.
|
| mpi | euclid (const mpi &x, const mpi &y) |
| | Euclid's method for.
|
| mpi | factorial (const mpi &n) |
| mpi | gcd (const mpi &x, const mpi &y) |
| | Greatest common divisor.
|
| istream & | operator>> (istream &is, mpi &n) |
| | Stream input.
|
| ostream & | operator<< (ostream &os, const mpi &n) |
| | Stream output.
|
| mpi | operator+ (const mpi &x, int_type y) |
| mpi | operator+ (int_type x, const mpi &y) |
| mpi | operator- (const mpi &x, int_type y) |
| mpi | operator- (int_type x, const mpi &y) |
| mpi | operator * (const mpi &x, int_type y) |
| mpi | operator * (int_type x, const mpi &y) |
| mpi | operator/ (const mpi &x, int_type y) |
| mpi | operator/ (int_type x, const mpi &y) |
| mpi | operator% (const mpi &x, int_type y) |
| mpi | operator% (int_type x, const mpi &y) |
| mpi | pow (const mpi &base, const mpi &p) |
| | Exponentiation.
|
| string::size_type | isNum (const string &s, radix_type b) |
| | Count the number of digits in a valid number.
|
| radix_type | guessbase (const string &s, radix_type b) |
| | Guess the base of a number in a string.
|
| char | isPow2 (char b) |
| void | setchunk (mpn_::radix_type b, string::size_type &chunksize, mpn_::limb_type &chunk) |
| void | stringclean (string &s, mpn_::radix_type b, int clear_zero) |
| | Clean out the strings that will be converted with mpn_::setString().
|
| void | setchunk (mpn_::radix_type b, std::string::size_type &chunksize, mpn_::limb_type &chunk) |
| | Sets the chunk size for a particular base.
|
Variables |
| typedef std::vector< byte > | raw_type |
| | Raw number I/O type.
|
| class typedef signed int | int_type |
| | Basic non-mpi signed integer type.
|
Keeps everything in the MP++ library seperated from the other namespaces.