PPL  1.2
Parma_Polyhedra_Library::GMP_Integer Class Reference

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

#include <ppl.hh>

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. More...
 
mpz_class & raw_value (GMP_Integer &x)
 Returns a reference to the underlying integer value. More...
 
Arithmetic Operators
void neg_assign (GMP_Integer &x)
 Assigns to x its negation. More...
 
void neg_assign (GMP_Integer &x, const GMP_Integer &y)
 Assigns to x the negation of y. More...
 
void abs_assign (GMP_Integer &x)
 Assigns to x its absolute value. More...
 
void abs_assign (GMP_Integer &x, const GMP_Integer &y)
 Assigns to x the absolute value of y. More...
 
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. More...
 
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. More...
 
void gcdext_assign (GMP_Integer &x, GMP_Integer &s, GMP_Integer &t, const GMP_Integer &y, const GMP_Integer &z)
 Extended GCD. More...
 
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. More...
 
void add_mul_assign (GMP_Integer &x, const GMP_Integer &y, const GMP_Integer &z)
 Assigns to x the value x + y * z. More...
 
void sub_mul_assign (GMP_Integer &x, const GMP_Integer &y, const GMP_Integer &z)
 Assigns to x the value x - y * z. More...
 
void mul_2exp_assign (GMP_Integer &x, const GMP_Integer &y, unsigned int exp)
 Assigns to x the value $ y \cdot 2^\mathtt{exp} $. More...
 
void div_2exp_assign (GMP_Integer &x, const GMP_Integer &y, unsigned int exp)
 Assigns to x the value $ y / 2^\mathtt{exp} $. More...
 
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. More...
 
void sqrt_assign (GMP_Integer &x, const GMP_Integer &y)
 Assigns to x the integer square root of y. More...
 
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: