PPL  1.0
Parma_Polyhedra_Library::GMP_Integer Class Reference

Unbounded integers as provided by the GMP library. More...

#include <ppl.hh>

List of all members.

Related Functions

(Note that these are not member functions.)

Accessor Functions
const mpz_class & raw_value (const GMP_Integer &x)
 Returns a const reference to the underlying integer value.
mpz_class & raw_value (GMP_Integer &x)
 Returns a reference to the underlying integer value.
Arithmetic Operators
void neg_assign (GMP_Integer &x)
 Assigns to x its negation.
void neg_assign (GMP_Integer &x, const GMP_Integer &y)
 Assigns to x the negation of y.
void abs_assign (GMP_Integer &x)
 Assigns to x its absolute value.
void abs_assign (GMP_Integer &x, const GMP_Integer &y)
 Assigns to x the absolute value of y.
void rem_assign (GMP_Integer &x, const GMP_Integer &y, const GMP_Integer &z)
 Assigns to x the remainder of the division of y by z.
void gcd_assign (GMP_Integer &x, const GMP_Integer &y, const GMP_Integer &z)
 Assigns to x the greatest common divisor of y and z.
void gcdext_assign (GMP_Integer &x, GMP_Integer &s, GMP_Integer &t, const GMP_Integer &y, const GMP_Integer &z)
 Extended GCD.
void lcm_assign (GMP_Integer &x, const GMP_Integer &y, const GMP_Integer &z)
 Assigns to x the least common multiple of y and z.
void add_mul_assign (GMP_Integer &x, const GMP_Integer &y, const GMP_Integer &z)
 Assigns to x the value x + y * z.
void sub_mul_assign (GMP_Integer &x, const GMP_Integer &y, const GMP_Integer &z)
 Assigns to x the value x - y * z.
void mul_2exp_assign (GMP_Integer &x, const GMP_Integer &y, unsigned int exp)
 Assigns to x the value $ y \cdot 2^\mathtt{exp} $.
void div_2exp_assign (GMP_Integer &x, const GMP_Integer &y, unsigned int exp)
 Assigns to x the value $ y / 2^\mathtt{exp} $.
void exact_div_assign (GMP_Integer &x, const GMP_Integer &y, const GMP_Integer &z)
 If z divides y, assigns to x the quotient of the integer division of y and z.
void sqrt_assign (GMP_Integer &x, const GMP_Integer &y)
 Assigns to x the integer square root of y.
int cmp (const GMP_Integer &x, const GMP_Integer &y)
 Returns a negative, zero or positive value depending on whether x is lower than, equal to or greater than y, respectively.

Detailed Description

Unbounded integers as provided by the GMP library.

GMP_Integer is an alias for the mpz_class type defined in the C++ interface of the GMP library. For more information, see http://gmplib.org/


Friends And Related Function Documentation

const mpz_class & raw_value ( const GMP_Integer x)
related

Returns a const reference to the underlying integer value.

mpz_class & raw_value ( GMP_Integer x)
related

Returns a reference to the underlying integer value.

void neg_assign ( GMP_Integer x)
related

Assigns to x its negation.

void neg_assign ( GMP_Integer x,
const GMP_Integer y 
)
related

Assigns to x the negation of y.

void abs_assign ( GMP_Integer x)
related

Assigns to x its absolute value.

void abs_assign ( GMP_Integer x,
const GMP_Integer y 
)
related

Assigns to x the absolute value of y.

void rem_assign ( GMP_Integer x,
const GMP_Integer y,
const GMP_Integer z 
)
related

Assigns to x the remainder of the division of y by z.

void gcd_assign ( GMP_Integer x,
const GMP_Integer y,
const GMP_Integer z 
)
related

Assigns to x the greatest common divisor of y and z.

void gcdext_assign ( GMP_Integer x,
GMP_Integer s,
GMP_Integer t,
const GMP_Integer y,
const GMP_Integer z 
)
related

Extended GCD.

Assigns to x the greatest common divisor of y and z, and to s and t the values such that y * s + z * t = x.

void lcm_assign ( GMP_Integer x,
const GMP_Integer y,
const GMP_Integer z 
)
related

Assigns to x the least common multiple of y and z.

void add_mul_assign ( GMP_Integer x,
const GMP_Integer y,
const GMP_Integer z 
)
related

Assigns to x the value x + y * z.

void sub_mul_assign ( GMP_Integer x,
const GMP_Integer y,
const GMP_Integer z 
)
related

Assigns to x the value x - y * z.

void mul_2exp_assign ( GMP_Integer x,
const GMP_Integer y,
unsigned int  exp 
)
related

Assigns to x the value $ y \cdot 2^\mathtt{exp} $.

void div_2exp_assign ( GMP_Integer x,
const GMP_Integer y,
unsigned int  exp 
)
related

Assigns to x the value $ y / 2^\mathtt{exp} $.

void exact_div_assign ( GMP_Integer x,
const GMP_Integer y,
const GMP_Integer z 
)
related

If z divides y, assigns to x the quotient of the integer division of y and z.

The behavior is undefined if z does not divide y.

void sqrt_assign ( GMP_Integer x,
const GMP_Integer y 
)
related

Assigns to x the integer square root of y.


The documentation for this class was generated from the following file: