![]() |
My Project
debian-1:4.1.2-p1+ds-2
|
#include "misc/auxiliary.h"
#include "factory/factory.h"
#include "misc/sirandom.h"
#include "misc/prime.h"
#include "reporter/reporter.h"
#include "coeffs/coeffs.h"
#include "coeffs/numbers.h"
#include "coeffs/rmodulon.h"
#include "coeffs/longrat.h"
#include "coeffs/shortfl.h"
#include "coeffs/modulop.h"
#include "coeffs/mpr_complex.h"
#include <string.h>
#include <float.h>
Go to the source code of this file.
Macros | |
#define | LINLINE |
#define | nlTest(a, r) nlDBTest(a,__FILE__,__LINE__, r) |
#define | MAX_NUM_SIZE 28 |
#define | POW_2_28 (1L<<28) |
#define | POW_2_28_32 (1L<<28) |
#define | LONG int |
#define | LONGRAT_CC |
#define | BYTES_PER_MP_LIMB sizeof(mp_limb_t) |
#define | MP_SMALL 1 |
#define | mpz_isNeg(A) ((A)->_mp_size<0) |
#define | mpz_limb_size(A) ((A)->_mp_size) |
#define | mpz_limb_d(A) ((A)->_mp_d) |
#define | GCD_NORM_COND(OLD, NEW) (mpz_size1(NEW->z)>mpz_size1(OLD->z)) |
Functions | |
LINLINE BOOLEAN | nlEqual (number a, number b, const coeffs r) |
LINLINE number | nlInit (long i, const coeffs r) |
LINLINE BOOLEAN | nlIsOne (number a, const coeffs r) |
LINLINE BOOLEAN | nlIsZero (number za, const coeffs r) |
LINLINE number | nlCopy (number a, const coeffs r) |
LINLINE number | nl_Copy (number a, const coeffs r) |
LINLINE void | nlDelete (number *a, const coeffs r) |
LINLINE number | nlNeg (number za, const coeffs r) |
LINLINE number | nlAdd (number la, number li, const coeffs r) |
LINLINE number | nlSub (number la, number li, const coeffs r) |
LINLINE number | nlMult (number a, number b, const coeffs r) |
LINLINE void | nlInpAdd (number &a, number b, const coeffs r) |
LINLINE void | nlInpMult (number &a, number b, const coeffs r) |
number | nlRInit (long i) |
void | nlNormalize (number &x, const coeffs r) |
number | nlGcd (number a, number b, const coeffs r) |
number | nlExtGcd (number a, number b, number *s, number *t, const coeffs) |
number | nlNormalizeHelper (number a, number b, const coeffs r) |
BOOLEAN | nlGreater (number a, number b, const coeffs r) |
BOOLEAN | nlIsMOne (number a, const coeffs r) |
long | nlInt (number &n, const coeffs r) |
number | nlBigInt (number &n) |
number | nlMapGMP (number from, const coeffs src, const coeffs dst) |
BOOLEAN | nlGreaterZero (number za, const coeffs r) |
number | nlInvers (number a, const coeffs r) |
number | nlDiv (number a, number b, const coeffs r) |
number | nlExactDiv (number a, number b, const coeffs r) |
number | nlIntDiv (number a, number b, const coeffs r) |
number | nlIntMod (number a, number b, const coeffs r) |
void | nlPower (number x, int exp, number *lu, const coeffs r) |
const char * | nlRead (const char *s, number *a, const coeffs r) |
void | nlWrite (number a, const coeffs r) |
void | nlCoeffWrite (const coeffs r, BOOLEAN details) |
number | nlFarey (number nN, number nP, const coeffs CF) |
BOOLEAN | nlDBTest (number a, const char *f, const int l) |
nMapFunc | nlSetMap (const coeffs src, const coeffs dst) |
void | nlInpIntDiv (number &a, number b, const coeffs r) |
BOOLEAN | nlDBTest (number a, const char *f, int l, const coeffs r) |
static number | nlShort3 (number x) |
void | _nlDelete_NoImm (number *a) |
number | nlShort3_noinline (number x) |
void | mpz_mul_si (mpz_ptr r, mpz_srcptr s, long int si) |
static number | nlMapP (number from, const coeffs src, const coeffs dst) |
static number | nlMapLongR (number from, const coeffs src, const coeffs dst) |
static number | nlMapR (number from, const coeffs src, const coeffs dst) |
number | nlMapZ (number from, const coeffs src, const coeffs dst) |
number | nlMapMachineInt (number from, const coeffs, const coeffs) |
static CanonicalForm | nlConvSingNFactoryN (number n, const BOOLEAN setChar, const coeffs) |
static number | nlConvFactoryNSingN (const CanonicalForm f, const coeffs r) |
int | nlSize (number a, const coeffs) |
number | nlBigInt (number &i, const coeffs r) |
BOOLEAN | nlDivBy (number a, number b, const coeffs) |
int | nlDivComp (number a, number b, const coeffs r) |
number | nlGetUnit (number n, const coeffs cf) |
coeffs | nlQuot1 (number c, const coeffs r) |
BOOLEAN | nlIsUnit (number a, const coeffs) |
static int | int_extgcd (int a, int b, int *u, int *x, int *v, int *y) |
number | nlShort1 (number x) |
number | nlModP (number q, const coeffs, const coeffs Zp) |
void | nlGMP (number &i, mpz_t n, const coeffs r) |
number | nlGetDenom (number &n, const coeffs r) |
number | nlGetNumerator (number &n, const coeffs r) |
BOOLEAN | _nlEqual_aNoImm_OR_bNoImm (number a, number b) |
number | _nlCopy_NoImm (number a) |
number | _nlNeg_NoImm (number a) |
static void | nlNormalize_Gcd (number &x) |
number | _nlAdd_aNoImm_OR_bNoImm (number a, number b) |
void | _nlInpAdd_aNoImm_OR_bNoImm (number &a, number b) |
number | _nlSub_aNoImm_OR_bNoImm (number a, number b) |
number | _nlMult_aImm_bImm_rNoImm (number a, number b) |
number | _nlMult_aNoImm_OR_bNoImm (number a, number b) |
number | nlCopyMap (number a, const coeffs, const coeffs) |
number | nlInit2 (int i, int j, const coeffs r) |
create a rational i/j (implicitly) over Q NOTE: make sure to use correct Q in debug mode More... | |
number | nlInit2gmp (mpz_t i, mpz_t j, const coeffs r) |
create a rational i/j (implicitly) over Q NOTE: make sure to use correct Q in debug mode More... | |
static void | nlMPZ (mpz_t m, number &n, const coeffs r) |
static number | nlInitMPZ (mpz_t m, const coeffs) |
number | nlXExtGcd (number a, number b, number *s, number *t, number *u, number *v, const coeffs r) |
number | nlQuotRem (number a, number b, number *r, const coeffs R) |
void | nlInpGcd (number &a, number b, const coeffs r) |
number | nlChineseRemainderSym (number *x, number *q, int rl, BOOLEAN sym, CFArray &inv_cache, const coeffs CF) |
static void | nlClearContent (ICoeffsEnumerator &numberCollectionEnumerator, number &c, const coeffs cf) |
static void | nlClearDenominators (ICoeffsEnumerator &numberCollectionEnumerator, number &c, const coeffs cf) |
char * | nlCoeffName (const coeffs r) |
static char * | nlCoeffString (const coeffs r) |
void | nlWriteFd (number n, const ssiInfo *d, const coeffs) |
number | nlReadFd (const ssiInfo *d, const coeffs) |
BOOLEAN | nlCoeffIsEqual (const coeffs r, n_coeffType n, void *p) |
static number | nlLcm (number a, number b, const coeffs r) |
static number | nlRandom (siRandProc p, number v2, number, const coeffs cf) |
BOOLEAN | nlInitChar (coeffs r, void *p) |
Variables | |
VAR int | n_SwitchChinRem =0 |
#define BYTES_PER_MP_LIMB sizeof(mp_limb_t) |
Definition at line 141 of file longrat.cc.
Definition at line 1660 of file longrat.cc.
#define LINLINE |
Definition at line 31 of file longrat.cc.
#define LONG int |
Definition at line 110 of file longrat.cc.
#define LONGRAT_CC |
Definition at line 138 of file longrat.cc.
#define MAX_NUM_SIZE 28 |
Definition at line 107 of file longrat.cc.
#define MP_SMALL 1 |
Definition at line 149 of file longrat.cc.
Definition at line 151 of file longrat.cc.
Definition at line 153 of file longrat.cc.
Definition at line 152 of file longrat.cc.
#define nlTest | ( | a, | |
r | |||
) | nlDBTest(a,__FILE__,__LINE__, r) |
Definition at line 92 of file longrat.cc.
#define POW_2_28 (1L<<28) |
Definition at line 108 of file longrat.cc.
#define POW_2_28_32 (1L<<28) |
Definition at line 109 of file longrat.cc.
number _nlAdd_aNoImm_OR_bNoImm | ( | number | a, |
number | b | ||
) |
Definition at line 1682 of file longrat.cc.
number _nlCopy_NoImm | ( | number | a | ) |
Definition at line 1605 of file longrat.cc.
void _nlDelete_NoImm | ( | number * | a | ) |
Definition at line 1626 of file longrat.cc.
BOOLEAN _nlEqual_aNoImm_OR_bNoImm | ( | number | a, |
number | b | ||
) |
Definition at line 1558 of file longrat.cc.
void _nlInpAdd_aNoImm_OR_bNoImm | ( | number & | a, |
number | b | ||
) |
Definition at line 1840 of file longrat.cc.
number _nlMult_aImm_bImm_rNoImm | ( | number | a, |
number | b | ||
) |
Definition at line 2194 of file longrat.cc.
number _nlMult_aNoImm_OR_bNoImm | ( | number | a, |
number | b | ||
) |
Definition at line 2207 of file longrat.cc.
number _nlNeg_NoImm | ( | number | a | ) |
Definition at line 1647 of file longrat.cc.
number _nlSub_aNoImm_OR_bNoImm | ( | number | a, |
number | b | ||
) |
Definition at line 1983 of file longrat.cc.
|
static |
Definition at line 1273 of file longrat.cc.
void mpz_mul_si | ( | mpz_ptr | r, |
mpz_srcptr | s, | ||
long int | si | ||
) |
Definition at line 171 of file longrat.cc.
Definition at line 2532 of file longrat.cc.
Definition at line 630 of file longrat.cc.
number nlBigInt | ( | number & | n | ) |
number nlChineseRemainderSym | ( | number * | x, |
number * | q, | ||
int | rl, | ||
BOOLEAN | sym, | ||
CFArray & | inv_cache, | ||
const coeffs | CF | ||
) |
Definition at line 2938 of file longrat.cc.
|
static |
Definition at line 2982 of file longrat.cc.
|
static |
Definition at line 3073 of file longrat.cc.
BOOLEAN nlCoeffIsEqual | ( | const coeffs | r, |
n_coeffType | n, | ||
void * | p | ||
) |
Definition at line 3289 of file longrat.cc.
Definition at line 3167 of file longrat.cc.
Definition at line 3173 of file longrat.cc.
Definition at line 2929 of file longrat.cc.
|
static |
Definition at line 369 of file longrat.cc.
|
static |
Definition at line 331 of file longrat.cc.
Definition at line 2484 of file longrat.cc.
Definition at line 2315 of file longrat.cc.
Definition at line 239 of file longrat.cc.
Definition at line 2497 of file longrat.cc.
Definition at line 1002 of file longrat.cc.
Definition at line 937 of file longrat.cc.
Definition at line 951 of file longrat.cc.
Definition at line 2428 of file longrat.cc.
Definition at line 728 of file longrat.cc.
number nlExtGcd | ( | number | a, |
number | b, | ||
number * | s, | ||
number * | t, | ||
const | coeffs | ||
) |
Definition at line 2880 of file longrat.cc.
Definition at line 2809 of file longrat.cc.
Definition at line 1202 of file longrat.cc.
Definition at line 1498 of file longrat.cc.
Definition at line 1527 of file longrat.cc.
Definition at line 962 of file longrat.cc.
Definition at line 1477 of file longrat.cc.
Definition at line 1175 of file longrat.cc.
Definition at line 2437 of file longrat.cc.
create a rational i/j (implicitly) over Q NOTE: make sure to use correct Q in debug mode
Definition at line 2375 of file longrat.cc.
create a rational i/j (implicitly) over Q NOTE: make sure to use correct Q in debug mode
Definition at line 2388 of file longrat.cc.
Definition at line 3325 of file longrat.cc.
|
static |
Definition at line 2659 of file longrat.cc.
Definition at line 2550 of file longrat.cc.
Definition at line 2791 of file longrat.cc.
Definition at line 2616 of file longrat.cc.
Definition at line 598 of file longrat.cc.
Definition at line 795 of file longrat.cc.
Definition at line 876 of file longrat.cc.
Definition at line 648 of file longrat.cc.
Definition at line 2464 of file longrat.cc.
Definition at line 200 of file longrat.cc.
Definition at line 426 of file longrat.cc.
Definition at line 224 of file longrat.cc.
Definition at line 183 of file longrat.cc.
Definition at line 396 of file longrat.cc.
Definition at line 212 of file longrat.cc.
Definition at line 1435 of file longrat.cc.
Definition at line 2650 of file longrat.cc.
Definition at line 2568 of file longrat.cc.
Definition at line 2513 of file longrat.cc.
Definition at line 1344 of file longrat.cc.
|
static |
Definition at line 1662 of file longrat.cc.
Definition at line 1388 of file longrat.cc.
Definition at line 1112 of file longrat.cc.
Definition at line 968 of file longrat.cc.
Definition at line 2723 of file longrat.cc.
|
static |
Definition at line 31 of file longrat0.cc.
Definition at line 3226 of file longrat.cc.
number nlRInit | ( | long | i | ) |
Definition at line 2361 of file longrat.cc.
Definition at line 2324 of file longrat.cc.
number nlShort1 | ( | number | x | ) |
Definition at line 1323 of file longrat.cc.
|
inlinestatic |
Definition at line 114 of file longrat.cc.
number nlShort3_noinline | ( | number | x | ) |
Definition at line 164 of file longrat.cc.
int nlSize | ( | number | a, |
const | coeffs | ||
) |
Definition at line 569 of file longrat.cc.
Definition at line 2598 of file longrat.cc.
Definition at line 90 of file longrat0.cc.
Definition at line 3180 of file longrat.cc.
number nlXExtGcd | ( | number | a, |
number | b, | ||
number * | s, | ||
number * | t, | ||
number * | u, | ||
number * | v, | ||
const coeffs | r | ||
) |
Definition at line 2671 of file longrat.cc.
VAR int n_SwitchChinRem =0 |
Definition at line 2937 of file longrat.cc.