|
void | bi_set_0 (BigInteger *p) |
|
BigInteger | bi_copy (const BigInteger &in) |
|
void | bi_copy_ip (const BigInteger &in, BigInteger *out) |
|
int | bi_compare (const BigInteger &left, const BigInteger &right) |
|
int | bi_compare_0 (const BigInteger &left) |
|
int | bi_compare_1 (const BigInteger &left) |
|
BigInteger | operator+ (const BigInteger &left, const BigInteger &right) |
|
void | bi_add_ip (BigInteger *left, const BigInteger &right) |
|
BigInteger | operator- (const BigInteger &left, const BigInteger &right) |
|
void | bi_sub_ip (BigInteger *left, const BigInteger &right) |
|
void | bi_increment (BigInteger *pBigInt, const BIG_INTEGER_WORD &value) |
|
void | bi_decrement (BigInteger *pBigInt, const BIG_INTEGER_WORD &value) |
|
BigInteger | bi_load (BIG_INTEGER_WORD *a) |
|
BigInteger | bi_lshift_word (const BigInteger &left, BIG_INTEGER_WORD rightMult) |
|
void | bi_lshift_word_ip (BigInteger *left, BIG_INTEGER_WORD rightMult) |
|
BigInteger | bi_rshift_word (const BigInteger &left, const BIG_INTEGER_WORD &rightMult) |
|
void | bi_rshift_word_ip (BigInteger *left, const BIG_INTEGER_WORD &rightMult) |
|
BigInteger | operator<< (const BigInteger &left, BIG_INTEGER_WORD right) |
|
void | bi_lshift_ip (BigInteger *left, BIG_INTEGER_WORD right) |
|
BigInteger | operator>> (const BigInteger &left, BIG_INTEGER_WORD right) |
|
void | bi_rshift_ip (BigInteger *left, BIG_INTEGER_WORD right) |
|
int | bi_log2 (const BigInteger &n) |
|
int | bi_and_1 (const BigInteger &left) |
|
BigInteger | operator& (const BigInteger &left, const BigInteger &right) |
|
void | bi_and_ip (BigInteger *left, const BigInteger &right) |
|
BigInteger | operator| (const BigInteger &left, const BigInteger &right) |
|
void | bi_or_ip (BigInteger *left, const BigInteger &right) |
|
BigInteger | operator^ (const BigInteger &left, const BigInteger &right) |
|
void | bi_xor_ip (BigInteger *left, const BigInteger &right) |
|
BigInteger | operator~ (const BigInteger &left) |
|
void | bi_not_ip (BigInteger *left) |
|
double | bi_to_double (const BigInteger &in) |
|
bool | operator== (const BigInteger &left, const BigInteger &right) |
|
bool | operator< (const BigInteger &left, const BigInteger &right) |
|
bool | operator<= (const BigInteger &left, const BigInteger &right) |
|
bool | operator> (const BigInteger &left, const BigInteger &right) |
|
bool | operator>= (const BigInteger &left, const BigInteger &right) |
|
BigInteger | operator++ (BigInteger &a) |
|
BigInteger | operator-- (BigInteger &a) |
|
BigInteger | operator* (const BigInteger &left, BIG_INTEGER_HALF_WORD right) |
| "Schoolbook multiplication" (on half words) Complexity - O(x^2) More...
|
|
BigInteger | operator* (const BigInteger &left, const BigInteger &right) |
| "Schoolbook multiplication" (on half words) Complexity - O(x^2) More...
|
|
void | bi_div_mod_small (const BigInteger &left, BIG_INTEGER_HALF_WORD right, BigInteger *quotient, BIG_INTEGER_HALF_WORD *rmndr) |
| "Schoolbook division" (on half words) Complexity - O(x^2) More...
|
|
void | bi_div_mod (const BigInteger &left, const BigInteger &right, BigInteger *quotient, BigInteger *rmndr) |
| Adapted from Qrack! (The fundamental algorithm was discovered before.) Complexity - O(log) More...
|
|