numerix_doc 0.4
|
#include <integer.hpp>
Definition at line 42 of file integer.hpp.
integer | ( | ) | [inline] |
Definition at line 50 of file integer.hpp.
: rep (new integer_rep ()) {}
integer | ( | signed char | i | ) | [inline] |
Definition at line 51 of file integer.hpp.
:
rep (new integer_rep ()) { mpz_set_si (rep->x, i); }
integer | ( | unsigned char | i | ) | [inline] |
Definition at line 53 of file integer.hpp.
:
rep (new integer_rep ()) { mpz_set_ui (rep->x, i); }
integer | ( | signed int | i | ) | [inline] |
Definition at line 55 of file integer.hpp.
:
rep (new integer_rep ()) { mpz_set_si (rep->x, i); }
integer | ( | unsigned int | i | ) | [inline] |
Definition at line 57 of file integer.hpp.
:
rep (new integer_rep ()) { mpz_set_ui (rep->x, i); }
integer | ( | signed short int | i | ) | [inline] |
Definition at line 59 of file integer.hpp.
:
rep (new integer_rep ()) { mpz_set_si (rep->x, i); }
integer | ( | unsigned short int | i | ) | [inline] |
Definition at line 61 of file integer.hpp.
:
rep (new integer_rep ()) { mpz_set_ui (rep->x, i); }
integer | ( | signed long int | i | ) | [inline] |
Definition at line 63 of file integer.hpp.
:
rep (new integer_rep ()) { mpz_set_si (rep->x, i); }
integer | ( | unsigned long int | i | ) | [inline] |
Definition at line 65 of file integer.hpp.
:
rep (new integer_rep ()) { mpz_set_ui (rep->x, i); }
integer | ( | char * | s, |
int | base = 10 |
||
) | [inline] |
Definition at line 86 of file integer.hpp.
References mmx::base().
: rep (new integer_rep ()) { mpz_set_str (rep->x, s, base); }
integer | ( | const string & | s, |
int | base = 10 |
||
) | [inline] |
Definition at line 88 of file integer.hpp.
References mmx::base().
: rep (new integer_rep ()) { char* r= as_charp (s); mpz_set_str (rep->x, r, base); free_charp (r); }
bool operator[] | ( | nat | index | ) | const [inline] |
Definition at line 243 of file integer.hpp.
{ return (bool) mpz_tstbit (rep->x, index); }
Definition at line 221 of file integer.hpp.
{ integer r; mpz_abs (*r, *x1); return r; }
Definition at line 180 of file integer.hpp.
{ r.secure (); mpz_add (*r, *x1, *x2); }
Definition at line 567 of file integer.hpp.
{ r.secure (); mpz_add_ui (*r, *x1, x2); }
Definition at line 570 of file integer.hpp.
{ r.secure (); if (x2 < 0) mpz_sub_ui (*r, *x1, (unsigned long int) (-x2)); else mpz_add_ui (*r, *x1, (unsigned long int) x2); }
Definition at line 574 of file integer.hpp.
{
Definition at line 574 of file integer.hpp.
{
Definition at line 575 of file integer.hpp.
{
Definition at line 575 of file integer.hpp.
{
Definition at line 576 of file integer.hpp.
{
Definition at line 576 of file integer.hpp.
{
Definition at line 577 of file integer.hpp.
{
Definition at line 577 of file integer.hpp.
{
Definition at line 578 of file integer.hpp.
{
Definition at line 578 of file integer.hpp.
{
Definition at line 579 of file integer.hpp.
{
Definition at line 579 of file integer.hpp.
{
Definition at line 580 of file integer.hpp.
{
Definition at line 580 of file integer.hpp.
{
double as_double | ( | const integer & | x | ) | [friend] |
Definition at line 98 of file integer.hpp.
{
return mpz_get_d (*x); }
int as_int | ( | const integer & | x | ) | [friend] |
Definition at line 95 of file integer.hpp.
{ return (int) mpz_get_si (*x); }
Definition at line 264 of file floating.hpp.
string as_string | ( | const integer & | x | ) | [friend] |
Definition at line 19 of file mmx_gmp.cpp.
{ char* s= mpz_get_str (NULL, 10, *i); string r= s; mmx_free (s, strlen (s) + 1); /* FIXME: for upcoming version of GMP void (*free_func) (void *, size_t); mp_get_memory_functions (NULL, NULL, &free_func); free_func ((void*) s, strlen (s) + 1); */ return r; }
xnat bit_size | ( | const integer & | x | ) | [friend] |
Definition at line 971 of file integer.hpp.
{
return mpz_sizeinbase (*x, 2); }
Definition at line 956 of file integer.hpp.
{ return x; }
Definition at line 992 of file integer.hpp.
{ if (shift == 0) return 0; if ((GMP_LIMB_BITS * shift) / GMP_LIMB_BITS != shift) // overflow return lshiftz (co_rshiftz (rshiftz (x1, shift >> 1), shift - (shift >> 1)), shift >> 1) + co_rshiftz (x1, shift >> 1); integer r; mpz_fdiv_r_2exp (*r, *x1, GMP_LIMB_BITS * shift); return r; }
Definition at line 104 of file integer.hpp.
{ integer r; mpz_set (*r, *x1); return r; }
Definition at line 141 of file integer.hpp.
{
return mpz_divisible_p (*x2, *x1); }
friend class floating [friend] |
Definition at line 1003 of file integer.hpp.
Definition at line 954 of file integer.hpp.
{ return x; }
Definition at line 920 of file integer.hpp.
{ integer r; mpz_gcd (*r, *a, *b); return r; }
Definition at line 927 of file integer.hpp.
{ integer r; mpz_gcdext (*r, *co_a, *co_b, *a, *b); return r; }
Definition at line 923 of file integer.hpp.
{ integer r; mpz_gcdext (*r, *co_a, NULL, *a, *b); return r; }
Definition at line 249 of file integer.hpp.
{
return mpz_hamdist (*x1, *x2); }
nat hamming_norm | ( | const integer & | x1 | ) | [friend] |
Definition at line 246 of file integer.hpp.
{
return mpz_popcount (*x1); }
nat hash | ( | const integer & | x | ) | [friend] |
Definition at line 962 of file integer.hpp.
{ const __mpz_struct& rep= (*x)[0]; if (rep._mp_size == 0) return 0; return ((nat) (rep._mp_d[0])) ^ ((nat) (rep._mp_size << 11)); }
Definition at line 939 of file integer.hpp.
{ integer r; mpz_invert (*r, *a, *b); return r; }
bool is_square | ( | const integer & | a | ) | [friend] |
Definition at line 895 of file integer.hpp.
{
return mpz_perfect_square_p (*a); }
Definition at line 942 of file integer.hpp.
{ ASSERT ((b&1) != 0, "second argument must be odd"); return mpz_jacobi (*a, *b); }
Definition at line 950 of file integer.hpp.
{
return mpz_kronecker (*a, *b); }
Definition at line 931 of file integer.hpp.
{ integer r; mpz_lcm (*r, *a, *b); return r; }
Definition at line 946 of file integer.hpp.
{ ASSERT ((b&1) != 0, "second argument must be odd"); return mpz_legendre (*a, *b); }
xnat limb_size | ( | const integer & | x | ) | [friend] |
Definition at line 974 of file integer.hpp.
{
return mpz_size (*x); }
Definition at line 980 of file integer.hpp.
Definition at line 227 of file integer.hpp.
{
return x1 >= x2? x1: x2; }
Definition at line 224 of file integer.hpp.
{
return x1 <= x2? x1: x2; }
Definition at line 614 of file integer.hpp.
{ r.secure (); mpz_mul_ui (*r, *x1, x2); }
Definition at line 617 of file integer.hpp.
{ r.secure (); mpz_mul_si (*r, *x1, x2); }
Definition at line 619 of file integer.hpp.
{
Definition at line 619 of file integer.hpp.
{
Definition at line 620 of file integer.hpp.
{
Definition at line 620 of file integer.hpp.
{
Definition at line 621 of file integer.hpp.
{
Definition at line 621 of file integer.hpp.
{
Definition at line 622 of file integer.hpp.
{
Definition at line 622 of file integer.hpp.
{
Definition at line 623 of file integer.hpp.
{
Definition at line 623 of file integer.hpp.
{
Definition at line 624 of file integer.hpp.
{
Definition at line 624 of file integer.hpp.
{
Definition at line 625 of file integer.hpp.
{
Definition at line 625 of file integer.hpp.
{
Definition at line 188 of file integer.hpp.
{ r.secure (); mpz_mul (*r, *x1, *x2); }
Definition at line 640 of file integer.hpp.
{
Definition at line 640 of file integer.hpp.
{
Definition at line 644 of file integer.hpp.
{
Definition at line 642 of file integer.hpp.
{
Definition at line 639 of file integer.hpp.
{
Definition at line 638 of file integer.hpp.
{
Definition at line 638 of file integer.hpp.
{
Definition at line 631 of file integer.hpp.
{ r.secure (); mpz_addmul_ui (*r, *x1, x2); }
Definition at line 639 of file integer.hpp.
{
Definition at line 641 of file integer.hpp.
{
Definition at line 641 of file integer.hpp.
{
Definition at line 642 of file integer.hpp.
{
Definition at line 634 of file integer.hpp.
{ r.secure (); if (x2 < 0) mpz_submul_ui (*r, *x1, (unsigned long int) (-x2)); else mpz_addmul_ui (*r, *x1, (unsigned long int) x2);}
Definition at line 643 of file integer.hpp.
{
Definition at line 643 of file integer.hpp.
{
Definition at line 644 of file integer.hpp.
{
Definition at line 192 of file integer.hpp.
{ r.secure (); mpz_addmul (*r, *x1, *x2); }
Definition at line 650 of file integer.hpp.
{ r.secure (); mpz_submul_ui (*r, *x1, x2); }
Definition at line 653 of file integer.hpp.
{ r.secure (); if (x2 < 0) mpz_addmul_ui (*r, *x1, (unsigned long int) (-x2)); else mpz_submul_ui (*r, *x1, (unsigned long int) x2); }
Definition at line 657 of file integer.hpp.
{
Definition at line 657 of file integer.hpp.
{
Definition at line 658 of file integer.hpp.
{
Definition at line 658 of file integer.hpp.
{
Definition at line 659 of file integer.hpp.
{
Definition at line 659 of file integer.hpp.
{
Definition at line 660 of file integer.hpp.
{
Definition at line 660 of file integer.hpp.
{
Definition at line 661 of file integer.hpp.
{
Definition at line 661 of file integer.hpp.
{
Definition at line 662 of file integer.hpp.
{
Definition at line 662 of file integer.hpp.
{
Definition at line 663 of file integer.hpp.
{
Definition at line 663 of file integer.hpp.
{
Definition at line 196 of file integer.hpp.
{ r.secure (); mpz_submul (*r, *x1, *x2); }
nat N | ( | const integer & | x | ) | [friend] |
Definition at line 977 of file integer.hpp.
{ return limb_size (x); }
void neg | ( | integer & | r, |
unsigned long int | x1 | ||
) | [friend] |
Definition at line 549 of file integer.hpp.
{ r.secure (); mpz_set_ui (*r, x1); neg (r); }
void neg | ( | integer & | r, |
long int | x1 | ||
) | [friend] |
Definition at line 551 of file integer.hpp.
{ r.secure (); mpz_set_si (*r, -x1); }
void neg | ( | integer & | r, |
unsigned int | x1 | ||
) | [friend] |
Definition at line 553 of file integer.hpp.
{ r.secure (); mpz_set_ui (*r, x1); neg (r); }
void neg | ( | integer & | r, |
int | x1 | ||
) | [friend] |
Definition at line 555 of file integer.hpp.
{ r.secure (); mpz_set_si (*r, -x1); }
void neg | ( | integer & | r, |
unsigned short int | x1 | ||
) | [friend] |
Definition at line 557 of file integer.hpp.
{ r.secure (); mpz_set_ui (*r, x1); neg (r); }
void neg | ( | integer & | r, |
short int | x1 | ||
) | [friend] |
Definition at line 559 of file integer.hpp.
{ r.secure (); mpz_set_si (*r, -x1); }
void neg | ( | integer & | r, |
unsigned char | x1 | ||
) | [friend] |
Definition at line 561 of file integer.hpp.
{ r.secure (); mpz_set_ui (*r, x1); neg (r); }
void neg | ( | integer & | r, |
signed char | x1 | ||
) | [friend] |
Definition at line 563 of file integer.hpp.
{ r.secure (); mpz_set_si (*r, -x1); }
void neg | ( | integer & | r | ) | [friend] |
Definition at line 174 of file integer.hpp.
{ r.secure (); mpz_neg (*r, *r); }
Definition at line 177 of file integer.hpp.
{ r.secure (); mpz_neg (*r, *x); }
bool operator!= | ( | const integer & | x1, |
signed char | x2 | ||
) | [friend] |
Definition at line 788 of file integer.hpp.
{
bool operator!= | ( | int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 794 of file integer.hpp.
{
Definition at line 203 of file integer.hpp.
{
return mpz_cmp (*x1, *x2) != 0; }
bool operator!= | ( | const integer & | x1, |
unsigned long int | x2 | ||
) | [friend] |
Definition at line 782 of file integer.hpp.
{
return mpz_cmp_ui (*x1, x2) != 0; }
bool operator!= | ( | const integer & | x1, |
long int | x2 | ||
) | [friend] |
Definition at line 784 of file integer.hpp.
{
return mpz_cmp_si (*x1, x2) != 0; }
bool operator!= | ( | const integer & | x1, |
unsigned int | x2 | ||
) | [friend] |
Definition at line 786 of file integer.hpp.
{
bool operator!= | ( | const integer & | x1, |
int | x2 | ||
) | [friend] |
Definition at line 786 of file integer.hpp.
{
bool operator!= | ( | const integer & | x1, |
unsigned short int | x2 | ||
) | [friend] |
Definition at line 787 of file integer.hpp.
{
bool operator!= | ( | const integer & | x1, |
short int | x2 | ||
) | [friend] |
Definition at line 787 of file integer.hpp.
{
bool operator!= | ( | const integer & | x1, |
unsigned char | x2 | ||
) | [friend] |
Definition at line 788 of file integer.hpp.
{
bool operator!= | ( | unsigned long int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 790 of file integer.hpp.
{
return mpz_cmp_ui (*x2, x1) != 0; }
bool operator!= | ( | long int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 792 of file integer.hpp.
{
return mpz_cmp_si (*x2, x1) != 0; }
bool operator!= | ( | unsigned int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 794 of file integer.hpp.
{
bool operator!= | ( | unsigned short int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 795 of file integer.hpp.
{
bool operator!= | ( | short int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 795 of file integer.hpp.
{
bool operator!= | ( | unsigned char | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 796 of file integer.hpp.
{
bool operator!= | ( | signed char | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 796 of file integer.hpp.
{
Definition at line 740 of file integer.hpp.
{ return rem (x1, x2); }
Definition at line 758 of file integer.hpp.
{
Definition at line 743 of file integer.hpp.
{ return rem (x1, x2); }
Definition at line 746 of file integer.hpp.
{
Definition at line 746 of file integer.hpp.
{
Definition at line 756 of file integer.hpp.
{
Definition at line 747 of file integer.hpp.
{
Definition at line 747 of file integer.hpp.
{
Definition at line 149 of file integer.hpp.
{ return rem (x1, x2); }
Definition at line 748 of file integer.hpp.
{
Definition at line 748 of file integer.hpp.
{
Definition at line 750 of file integer.hpp.
{ return rem (x1, x2); }
Definition at line 753 of file integer.hpp.
{ return rem (x1, x2); }
Definition at line 756 of file integer.hpp.
{
Definition at line 757 of file integer.hpp.
{
Definition at line 757 of file integer.hpp.
{
Definition at line 758 of file integer.hpp.
{
Definition at line 152 of file integer.hpp.
{ x1.secure (); x1= rem (x1, x2); return x1; }
Definition at line 231 of file integer.hpp.
{ integer r; mpz_and (*r, *x1, *x2); return r; }
Definition at line 459 of file integer.hpp.
{ integer r; mpz_mul_ui (*r, *x1, x2); return r; }
Definition at line 462 of file integer.hpp.
{ integer r; mpz_mul_si (*r, *x1, x2); return r; }
Definition at line 116 of file integer.hpp.
{ integer r; mpz_mul (*r, *x1, *x2); return r; }
Definition at line 465 of file integer.hpp.
{
Definition at line 465 of file integer.hpp.
{
Definition at line 466 of file integer.hpp.
{
Definition at line 466 of file integer.hpp.
{
Definition at line 467 of file integer.hpp.
{
Definition at line 467 of file integer.hpp.
{
Definition at line 468 of file integer.hpp.
{
Definition at line 468 of file integer.hpp.
{
Definition at line 469 of file integer.hpp.
{
Definition at line 469 of file integer.hpp.
{
Definition at line 470 of file integer.hpp.
{
Definition at line 470 of file integer.hpp.
{
Definition at line 471 of file integer.hpp.
{
Definition at line 471 of file integer.hpp.
{
Definition at line 533 of file integer.hpp.
{
x1.secure (); mpz_mul_ui (*x1, *x1, x2); return x1; }
Definition at line 535 of file integer.hpp.
{
x1.secure (); mpz_mul_si (*x1, *x1, x2); return x1; }
Definition at line 537 of file integer.hpp.
{
Definition at line 537 of file integer.hpp.
{
Definition at line 538 of file integer.hpp.
{
Definition at line 538 of file integer.hpp.
{
Definition at line 539 of file integer.hpp.
{
Definition at line 539 of file integer.hpp.
{
Definition at line 167 of file integer.hpp.
{
x1.secure (); mpz_mul (*x1, *x1, *x2); return x1; }
Definition at line 110 of file integer.hpp.
{ integer r; mpz_add (*r, *x1, *x2); return r; }
Definition at line 418 of file integer.hpp.
{
Definition at line 409 of file integer.hpp.
{ integer r; mpz_add_ui (*r, *x1, x2); return r; }
Definition at line 418 of file integer.hpp.
{
Definition at line 412 of file integer.hpp.
{ integer r; if (x2 < 0) mpz_sub_ui (*r, *x1, (unsigned long int) (-x2)); else mpz_add_ui (*r, *x1, (unsigned long int) x2); return r; }
Definition at line 419 of file integer.hpp.
{
Definition at line 419 of file integer.hpp.
{
Definition at line 420 of file integer.hpp.
{
Definition at line 420 of file integer.hpp.
{
Definition at line 421 of file integer.hpp.
{
Definition at line 421 of file integer.hpp.
{
Definition at line 422 of file integer.hpp.
{
Definition at line 422 of file integer.hpp.
{
Definition at line 423 of file integer.hpp.
{
Definition at line 423 of file integer.hpp.
{
Definition at line 424 of file integer.hpp.
{
Definition at line 424 of file integer.hpp.
{
Definition at line 161 of file integer.hpp.
{
x1.secure (); mpz_add (*x1, *x1, *x2); return x1; }
Definition at line 505 of file integer.hpp.
{
x1.secure (); mpz_add_ui (*x1, *x1, x2); return x1; }
Definition at line 507 of file integer.hpp.
{ x1.secure (); if (x2 < 0) mpz_sub_ui (*x1, *x1, (unsigned long int) (-x2)); else mpz_add_ui (*x1, *x1, (unsigned long int) x2); return x1; }
Definition at line 512 of file integer.hpp.
{
Definition at line 512 of file integer.hpp.
{
Definition at line 513 of file integer.hpp.
{
Definition at line 513 of file integer.hpp.
{
Definition at line 514 of file integer.hpp.
{
Definition at line 514 of file integer.hpp.
{
Definition at line 429 of file integer.hpp.
{ integer r; mpz_sub_ui (*r, *x1, x2); return r; }
Definition at line 432 of file integer.hpp.
{ integer r; if (x2 < 0) mpz_add_ui (*r, *x1, (unsigned long int) (-x2)); else mpz_sub_ui (*r, *x1, (unsigned long int) x2); return r; }
Definition at line 438 of file integer.hpp.
{
Definition at line 438 of file integer.hpp.
{
Definition at line 440 of file integer.hpp.
{
Definition at line 439 of file integer.hpp.
{
Definition at line 453 of file integer.hpp.
{
Definition at line 439 of file integer.hpp.
{
Definition at line 440 of file integer.hpp.
{
Definition at line 454 of file integer.hpp.
{
Definition at line 454 of file integer.hpp.
{
Definition at line 113 of file integer.hpp.
{ integer r; mpz_sub (*r, *x1, *x2); return r; }
Definition at line 442 of file integer.hpp.
{ integer r; mpz_ui_sub (*r, x1, *x2); return r; }
Definition at line 445 of file integer.hpp.
Definition at line 452 of file integer.hpp.
{
Definition at line 452 of file integer.hpp.
{
Definition at line 453 of file integer.hpp.
{
Definition at line 107 of file integer.hpp.
{ integer r; mpz_neg (*r, *x1); return r; }
Definition at line 164 of file integer.hpp.
{
x1.secure (); mpz_sub (*x1, *x1, *x2); return x1; }
Definition at line 519 of file integer.hpp.
{
x1.secure (); mpz_sub_ui (*x1, *x1, x2); return x1; }
Definition at line 521 of file integer.hpp.
{ x1.secure (); if (x2 < 0) mpz_add_ui (*x1, *x1, (unsigned long int) (-x2)); else mpz_sub_ui (*x1, *x1, (unsigned long int) x2); return x1; }
Definition at line 526 of file integer.hpp.
{
Definition at line 526 of file integer.hpp.
{
Definition at line 527 of file integer.hpp.
{
Definition at line 527 of file integer.hpp.
{
Definition at line 528 of file integer.hpp.
{
Definition at line 528 of file integer.hpp.
{
Definition at line 489 of file integer.hpp.
{
Definition at line 490 of file integer.hpp.
{
Definition at line 489 of file integer.hpp.
{
Definition at line 490 of file integer.hpp.
{
Definition at line 476 of file integer.hpp.
{ ASSERT (x2 != 0, "division by zero"); integer r; mpz_divexact_ui (*r, *x1, x2); return r; }
Definition at line 488 of file integer.hpp.
{
Definition at line 488 of file integer.hpp.
{
Definition at line 492 of file integer.hpp.
{ return integer (x1) / x2; }
Definition at line 495 of file integer.hpp.
{ return integer (x1) / x2; }
Definition at line 480 of file integer.hpp.
Definition at line 123 of file integer.hpp.
Definition at line 498 of file integer.hpp.
{
Definition at line 498 of file integer.hpp.
{
Definition at line 499 of file integer.hpp.
{
Definition at line 499 of file integer.hpp.
{
Definition at line 500 of file integer.hpp.
{
Definition at line 500 of file integer.hpp.
{
bool operator< | ( | int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 813 of file integer.hpp.
{
bool operator< | ( | short int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 814 of file integer.hpp.
{
Definition at line 206 of file integer.hpp.
{
return mpz_cmp (*x1, *x2) < 0; }
bool operator< | ( | const integer & | x1, |
unsigned long int | x2 | ||
) | [friend] |
Definition at line 801 of file integer.hpp.
{
return mpz_cmp_ui (*x1, x2) < 0; }
bool operator< | ( | const integer & | x1, |
long int | x2 | ||
) | [friend] |
Definition at line 803 of file integer.hpp.
{
return mpz_cmp_si (*x1, x2) < 0; }
bool operator< | ( | const integer & | x1, |
unsigned int | x2 | ||
) | [friend] |
Definition at line 805 of file integer.hpp.
{
bool operator< | ( | unsigned char | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 815 of file integer.hpp.
{
bool operator< | ( | const integer & | x1, |
unsigned short int | x2 | ||
) | [friend] |
Definition at line 806 of file integer.hpp.
{
bool operator< | ( | const integer & | x1, |
short int | x2 | ||
) | [friend] |
Definition at line 806 of file integer.hpp.
{
bool operator< | ( | const integer & | x1, |
unsigned char | x2 | ||
) | [friend] |
Definition at line 807 of file integer.hpp.
{
bool operator< | ( | unsigned long int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 809 of file integer.hpp.
{
return mpz_cmp_ui (*x2, x1) > 0; }
bool operator< | ( | unsigned int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 813 of file integer.hpp.
{
bool operator< | ( | unsigned short int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 814 of file integer.hpp.
{
bool operator< | ( | signed char | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 815 of file integer.hpp.
{
bool operator< | ( | const integer & | x1, |
signed char | x2 | ||
) | [friend] |
Definition at line 807 of file integer.hpp.
{
bool operator< | ( | long int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 811 of file integer.hpp.
{
return mpz_cmp_si (*x2, x1) > 0; }
bool operator< | ( | const integer & | x1, |
int | x2 | ||
) | [friend] |
Definition at line 805 of file integer.hpp.
{
Definition at line 155 of file integer.hpp.
{ integer r; mpz_mul_2si (*r, *x1, shift); return r; }
Definition at line 170 of file integer.hpp.
{ x1.secure (); mpz_mul_2si (*x1, *x1, shift); return x1; }
Definition at line 212 of file integer.hpp.
{
return mpz_cmp (*x1, *x2) <= 0; }
bool operator<= | ( | unsigned short int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 852 of file integer.hpp.
{
bool operator<= | ( | const integer & | x1, |
unsigned long int | x2 | ||
) | [friend] |
Definition at line 839 of file integer.hpp.
{
return mpz_cmp_ui (*x1, x2) <= 0; }
bool operator<= | ( | const integer & | x1, |
long int | x2 | ||
) | [friend] |
Definition at line 841 of file integer.hpp.
{
return mpz_cmp_si (*x1, x2) <= 0; }
bool operator<= | ( | const integer & | x1, |
unsigned int | x2 | ||
) | [friend] |
Definition at line 843 of file integer.hpp.
{
bool operator<= | ( | const integer & | x1, |
unsigned short int | x2 | ||
) | [friend] |
Definition at line 844 of file integer.hpp.
{
bool operator<= | ( | short int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 852 of file integer.hpp.
{
bool operator<= | ( | unsigned long int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 847 of file integer.hpp.
{
return mpz_cmp_ui (*x2, x1) >= 0; }
bool operator<= | ( | unsigned char | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 853 of file integer.hpp.
{
bool operator<= | ( | long int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 849 of file integer.hpp.
{
return mpz_cmp_si (*x2, x1) >= 0; }
bool operator<= | ( | const integer & | x1, |
int | x2 | ||
) | [friend] |
Definition at line 843 of file integer.hpp.
{
bool operator<= | ( | int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 851 of file integer.hpp.
{
bool operator<= | ( | const integer & | x1, |
signed char | x2 | ||
) | [friend] |
Definition at line 845 of file integer.hpp.
{
bool operator<= | ( | unsigned int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 851 of file integer.hpp.
{
bool operator<= | ( | signed char | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 853 of file integer.hpp.
{
bool operator<= | ( | const integer & | x1, |
short int | x2 | ||
) | [friend] |
Definition at line 844 of file integer.hpp.
{
bool operator<= | ( | const integer & | x1, |
unsigned char | x2 | ||
) | [friend] |
Definition at line 845 of file integer.hpp.
{
Definition at line 200 of file integer.hpp.
{
return mpz_cmp (*x1, *x2) == 0; }
bool operator== | ( | const integer & | x1, |
int | x2 | ||
) | [friend] |
Definition at line 767 of file integer.hpp.
{
bool operator== | ( | const integer & | x1, |
unsigned long int | x2 | ||
) | [friend] |
Definition at line 763 of file integer.hpp.
{
return mpz_cmp_ui (*x1, x2) == 0; }
bool operator== | ( | const integer & | x1, |
unsigned int | x2 | ||
) | [friend] |
Definition at line 767 of file integer.hpp.
{
bool operator== | ( | const integer & | x1, |
unsigned short int | x2 | ||
) | [friend] |
Definition at line 768 of file integer.hpp.
{
bool operator== | ( | unsigned long int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 771 of file integer.hpp.
{
return mpz_cmp_ui (*x2, x1) == 0; }
bool operator== | ( | unsigned short int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 776 of file integer.hpp.
{
bool operator== | ( | const integer & | x1, |
short int | x2 | ||
) | [friend] |
Definition at line 768 of file integer.hpp.
{
bool operator== | ( | short int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 776 of file integer.hpp.
{
bool operator== | ( | signed char | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 777 of file integer.hpp.
{
bool operator== | ( | const integer & | x1, |
unsigned char | x2 | ||
) | [friend] |
Definition at line 769 of file integer.hpp.
{
bool operator== | ( | unsigned int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 775 of file integer.hpp.
{
bool operator== | ( | const integer & | x1, |
signed char | x2 | ||
) | [friend] |
Definition at line 769 of file integer.hpp.
{
bool operator== | ( | unsigned char | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 777 of file integer.hpp.
{
bool operator== | ( | long int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 773 of file integer.hpp.
{
return mpz_cmp_si (*x2, x1) == 0; }
bool operator== | ( | const integer & | x1, |
long int | x2 | ||
) | [friend] |
Definition at line 765 of file integer.hpp.
{
return mpz_cmp_si (*x1, x2) == 0; }
bool operator== | ( | int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 775 of file integer.hpp.
{
bool operator> | ( | unsigned int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 832 of file integer.hpp.
{
bool operator> | ( | short int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 833 of file integer.hpp.
{
Definition at line 209 of file integer.hpp.
{
return mpz_cmp (*x1, *x2) > 0; }
bool operator> | ( | int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 832 of file integer.hpp.
{
bool operator> | ( | signed char | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 834 of file integer.hpp.
{
bool operator> | ( | const integer & | x1, |
short int | x2 | ||
) | [friend] |
Definition at line 825 of file integer.hpp.
{
bool operator> | ( | const integer & | x1, |
unsigned char | x2 | ||
) | [friend] |
Definition at line 826 of file integer.hpp.
{
bool operator> | ( | const integer & | x1, |
unsigned long int | x2 | ||
) | [friend] |
Definition at line 820 of file integer.hpp.
{
return mpz_cmp_ui (*x1, x2) > 0; }
bool operator> | ( | const integer & | x1, |
unsigned int | x2 | ||
) | [friend] |
Definition at line 824 of file integer.hpp.
{
bool operator> | ( | const integer & | x1, |
unsigned short int | x2 | ||
) | [friend] |
Definition at line 825 of file integer.hpp.
{
bool operator> | ( | unsigned long int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 828 of file integer.hpp.
{
return mpz_cmp_ui (*x2, x1) < 0; }
bool operator> | ( | long int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 830 of file integer.hpp.
{
return mpz_cmp_si (*x2, x1) < 0; }
bool operator> | ( | unsigned short int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 833 of file integer.hpp.
{
bool operator> | ( | const integer & | x1, |
int | x2 | ||
) | [friend] |
Definition at line 824 of file integer.hpp.
{
bool operator> | ( | const integer & | x1, |
signed char | x2 | ||
) | [friend] |
Definition at line 826 of file integer.hpp.
{
bool operator> | ( | const integer & | x1, |
long int | x2 | ||
) | [friend] |
Definition at line 822 of file integer.hpp.
{
return mpz_cmp_si (*x1, x2) > 0; }
bool operator> | ( | unsigned char | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 834 of file integer.hpp.
{
bool operator>= | ( | unsigned short int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 871 of file integer.hpp.
{
bool operator>= | ( | const integer & | x1, |
long int | x2 | ||
) | [friend] |
Definition at line 860 of file integer.hpp.
{
return mpz_cmp_si (*x1, x2) >= 0; }
bool operator>= | ( | const integer & | x1, |
unsigned int | x2 | ||
) | [friend] |
Definition at line 862 of file integer.hpp.
{
bool operator>= | ( | signed char | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 872 of file integer.hpp.
{
bool operator>= | ( | const integer & | x1, |
unsigned short int | x2 | ||
) | [friend] |
Definition at line 863 of file integer.hpp.
{
bool operator>= | ( | const integer & | x1, |
short int | x2 | ||
) | [friend] |
Definition at line 863 of file integer.hpp.
{
bool operator>= | ( | long int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 868 of file integer.hpp.
{
return mpz_cmp_si (*x2, x1) <= 0; }
bool operator>= | ( | int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 870 of file integer.hpp.
{
bool operator>= | ( | unsigned int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 870 of file integer.hpp.
{
bool operator>= | ( | const integer & | x1, |
unsigned long int | x2 | ||
) | [friend] |
Definition at line 858 of file integer.hpp.
{
return mpz_cmp_ui (*x1, x2) >= 0; }
bool operator>= | ( | const integer & | x1, |
signed char | x2 | ||
) | [friend] |
Definition at line 864 of file integer.hpp.
{
Definition at line 215 of file integer.hpp.
{
return mpz_cmp (*x1, *x2) >= 0; }
bool operator>= | ( | short int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 871 of file integer.hpp.
{
bool operator>= | ( | unsigned char | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 872 of file integer.hpp.
{
bool operator>= | ( | const integer & | x1, |
unsigned char | x2 | ||
) | [friend] |
Definition at line 864 of file integer.hpp.
{
bool operator>= | ( | const integer & | x1, |
int | x2 | ||
) | [friend] |
Definition at line 862 of file integer.hpp.
{
bool operator>= | ( | unsigned long int | x1, |
const integer & | x2 | ||
) | [friend] |
Definition at line 866 of file integer.hpp.
{
return mpz_cmp_ui (*x2, x1) <= 0; }
Definition at line 158 of file integer.hpp.
{ integer r; mpz_mul_2si (*r, *x1, -shift); return r; }
Definition at line 237 of file integer.hpp.
{ integer r; mpz_xor (*r, *x1, *x2); return r; }
Definition at line 234 of file integer.hpp.
{ integer r; mpz_ior (*r, *x1, *x2); return r; }
Definition at line 240 of file integer.hpp.
{ integer r; mpz_com (*r, *x1); return r; }
Definition at line 902 of file integer.hpp.
{ ASSERT (i >= 0, "positive int expected"); integer r; mpz_pow_ui (*r, *x1, (nat) i); return r; }
Definition at line 909 of file integer.hpp.
Definition at line 906 of file integer.hpp.
{ integer r; mpz_pow_ui (*r, *x1, i); return r; }
Definition at line 686 of file integer.hpp.
{
Definition at line 687 of file integer.hpp.
{
Definition at line 678 of file integer.hpp.
{
Definition at line 133 of file integer.hpp.
{ if (mpz_sgn (*x2) == 0) return x2; integer r; mpz_fdiv_q (*r, *x1, *x2); return r; }
Definition at line 678 of file integer.hpp.
{
Definition at line 677 of file integer.hpp.
{
Definition at line 676 of file integer.hpp.
{
Definition at line 687 of file integer.hpp.
{
Definition at line 677 of file integer.hpp.
{
Definition at line 683 of file integer.hpp.
Definition at line 668 of file integer.hpp.
{ if (x2 == 0) return x2; integer r; mpz_fdiv_q_ui (*r, *x1, x2); return r; }
Definition at line 672 of file integer.hpp.
Definition at line 688 of file integer.hpp.
{
Definition at line 680 of file integer.hpp.
Definition at line 686 of file integer.hpp.
{
Definition at line 676 of file integer.hpp.
{
Definition at line 688 of file integer.hpp.
{
friend class rational [friend] |
Definition at line 1000 of file integer.hpp.
integer raw_integer | ( | nat | limb_sz | ) | [friend] |
Definition at line 1011 of file integer.hpp.
{ return new integer_rep (limb_sz * BITS_PER_LIMB); }
Definition at line 702 of file integer.hpp.
Definition at line 144 of file integer.hpp.
{ if (mpz_sgn (*x2) == 0) { q= x2; return x1; } integer r; mpz_fdiv_qr (*q, *r, *x1, *x2); return r; }
Definition at line 700 of file integer.hpp.
{
Definition at line 705 of file integer.hpp.
Definition at line 733 of file integer.hpp.
{
Definition at line 733 of file integer.hpp.
{
Definition at line 724 of file integer.hpp.
{
Definition at line 710 of file integer.hpp.
{
Definition at line 137 of file integer.hpp.
{ if (mpz_sgn (*x2) == 0) return x1; integer r; mpz_fdiv_r (*r, *x1, *x2); return r; }
Definition at line 735 of file integer.hpp.
{
Definition at line 734 of file integer.hpp.
{
Definition at line 708 of file integer.hpp.
{
Definition at line 709 of file integer.hpp.
{
Definition at line 730 of file integer.hpp.
Definition at line 700 of file integer.hpp.
{
Definition at line 708 of file integer.hpp.
{
Definition at line 725 of file integer.hpp.
{
Definition at line 727 of file integer.hpp.
Definition at line 735 of file integer.hpp.
{
Definition at line 734 of file integer.hpp.
{
Definition at line 699 of file integer.hpp.
{
Definition at line 693 of file integer.hpp.
{ if (x2 == 0) return x1; integer r; mpz_fdiv_r_ui (*r, *x1, x2); return r; }
Definition at line 696 of file integer.hpp.
Definition at line 698 of file integer.hpp.
{
Definition at line 715 of file integer.hpp.
{ if (x2 == 0) { q= x2; return x1; } integer r; mpz_fdiv_qr_ui (*q, *r, *x1, x2); return r; }
Definition at line 723 of file integer.hpp.
{
Definition at line 723 of file integer.hpp.
{
Definition at line 724 of file integer.hpp.
{
Definition at line 725 of file integer.hpp.
{
Definition at line 699 of file integer.hpp.
{
Definition at line 698 of file integer.hpp.
{
Definition at line 710 of file integer.hpp.
{
Definition at line 709 of file integer.hpp.
{
Definition at line 957 of file integer.hpp.
{ return x; }
Definition at line 986 of file integer.hpp.
int sign | ( | const integer & | x1 | ) | [friend] |
Definition at line 218 of file integer.hpp.
{ int r= mpz_sgn (*x1); return (r<0? -1: (r==0? 0: 1)); }
xnat size | ( | const integer & | x, |
nat | base | ||
) | [friend] |
Definition at line 968 of file integer.hpp.
{ return mpz_sizeinbase (*x, base); }
Definition at line 898 of file integer.hpp.
Definition at line 119 of file integer.hpp.
{ integer r; mpz_mul (*r, *x1, *x1); return r; }
Definition at line 607 of file integer.hpp.
{
Definition at line 601 of file integer.hpp.
{ r.secure (); if (x1 < 0) { mpz_add_ui (*r, *x2, (unsigned long int) (-x1)); neg (r); } else mpz_ui_sub (*r, (unsigned long int) x1, *x2); }
Definition at line 595 of file integer.hpp.
{
Definition at line 586 of file integer.hpp.
{ r.secure (); mpz_sub_ui (*r, *x1, x2); }
Definition at line 608 of file integer.hpp.
{
Definition at line 593 of file integer.hpp.
{
Definition at line 607 of file integer.hpp.
{
Definition at line 594 of file integer.hpp.
{
Definition at line 606 of file integer.hpp.
{
Definition at line 589 of file integer.hpp.
{ r.secure (); if (x2 < 0) mpz_add_ui (*r, *x1, (unsigned long int) (-x2)); else mpz_sub_ui (*r, *x1, (unsigned long int) x2); }
Definition at line 184 of file integer.hpp.
{ r.secure (); mpz_sub (*r, *x1, *x2); }
Definition at line 598 of file integer.hpp.
{ r.secure (); mpz_ui_sub (*r, x1, *x2); }
Definition at line 606 of file integer.hpp.
{
Definition at line 593 of file integer.hpp.
{
Definition at line 608 of file integer.hpp.
{
Definition at line 594 of file integer.hpp.
{
Definition at line 595 of file integer.hpp.
{
Definition at line 955 of file integer.hpp.
{ return x; }
Definition at line 934 of file integer.hpp.
{ integer g; xgcd_matrix<integer> r; mpz_gcdext (*g, *(r.a), *(r.b), *a, *b); r.c= -b/g; r.d= a/g; return r; }