![]() |
My Project
|
#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) |
#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) |
#define | mpz_limb_size(A) |
#define | mpz_limb_d(A) |
#define | GCD_NORM_COND(OLD, NEW) |
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) |
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) |
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) |
static number | nlInitMPZ (mpz_t m, const coeffs) |
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) |
static number | nlMapGMP (number from, const coeffs, const coeffs dst) |
number | nlMapZ (number from, const coeffs, 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) |
static number | nlMapR_BI (number from, const coeffs src, const coeffs dst) |
static number | nlMapLongR_BI (number from, const coeffs src, const coeffs dst) |
static number | nlMapC (number from, const coeffs src, const coeffs dst) |
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 | nlMapQtoZ (number a, const coeffs src, const coeffs dst) |
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 | |
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 | |
void | nlMPZ (mpz_t m, number &n, const coeffs r) |
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) |
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 136 of file longrat.cc.
#define GCD_NORM_COND | ( | OLD, | |
NEW ) |
Definition at line 1790 of file longrat.cc.
#define LINLINE |
Definition at line 31 of file longrat.cc.
#define LONG int |
Definition at line 105 of file longrat.cc.
#define LONGRAT_CC |
Definition at line 133 of file longrat.cc.
#define MAX_NUM_SIZE 28 |
Definition at line 102 of file longrat.cc.
#define MP_SMALL 1 |
Definition at line 144 of file longrat.cc.
#define mpz_isNeg | ( | A | ) |
Definition at line 146 of file longrat.cc.
#define mpz_limb_d | ( | A | ) |
Definition at line 148 of file longrat.cc.
#define mpz_limb_size | ( | A | ) |
Definition at line 147 of file longrat.cc.
#define nlTest | ( | a, | |
r ) |
Definition at line 87 of file longrat.cc.
#define POW_2_28 (1L<<28) |
Definition at line 103 of file longrat.cc.
#define POW_2_28_32 (1L<<28) |
Definition at line 104 of file longrat.cc.
number _nlAdd_aNoImm_OR_bNoImm | ( | number | a, |
number | b ) |
Definition at line 1812 of file longrat.cc.
number _nlCopy_NoImm | ( | number | a | ) |
Definition at line 1740 of file longrat.cc.
void _nlDelete_NoImm | ( | number * | a | ) |
Definition at line 1761 of file longrat.cc.
BOOLEAN _nlEqual_aNoImm_OR_bNoImm | ( | number | a, |
number | b ) |
Definition at line 1693 of file longrat.cc.
void _nlInpAdd_aNoImm_OR_bNoImm | ( | number & | a, |
number | b ) |
Definition at line 1970 of file longrat.cc.
number _nlMult_aImm_bImm_rNoImm | ( | number | a, |
number | b ) |
Definition at line 2324 of file longrat.cc.
number _nlMult_aNoImm_OR_bNoImm | ( | number | a, |
number | b ) |
Definition at line 2337 of file longrat.cc.
number _nlNeg_NoImm | ( | number | a | ) |
Definition at line 1779 of file longrat.cc.
number _nlSub_aNoImm_OR_bNoImm | ( | number | a, |
number | b ) |
Definition at line 2113 of file longrat.cc.
|
static |
Definition at line 1410 of file longrat.cc.
void mpz_mul_si | ( | mpz_ptr | r, |
mpz_srcptr | s, | ||
long int | si ) |
Definition at line 177 of file longrat.cc.
Definition at line 2692 of file longrat.cc.
Definition at line 772 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 3086 of file longrat.cc.
|
static |
Definition at line 3130 of file longrat.cc.
|
static |
Definition at line 3221 of file longrat.cc.
BOOLEAN nlCoeffIsEqual | ( | const coeffs | r, |
n_coeffType | n, | ||
void * | p ) |
Definition at line 3426 of file longrat.cc.
Definition at line 3315 of file longrat.cc.
|
static |
Definition at line 365 of file longrat.cc.
|
static |
Definition at line 327 of file longrat.cc.
Definition at line 2644 of file longrat.cc.
Definition at line 2445 of file longrat.cc.
Definition at line 235 of file longrat.cc.
Definition at line 2657 of file longrat.cc.
Definition at line 1140 of file longrat.cc.
Definition at line 1077 of file longrat.cc.
Definition at line 1091 of file longrat.cc.
Definition at line 2588 of file longrat.cc.
Definition at line 870 of file longrat.cc.
Definition at line 3030 of file longrat.cc.
Definition at line 2959 of file longrat.cc.
Definition at line 1340 of file longrat.cc.
Definition at line 1633 of file longrat.cc.
Definition at line 1662 of file longrat.cc.
Definition at line 1102 of file longrat.cc.
Definition at line 1613 of file longrat.cc.
Definition at line 1313 of file longrat.cc.
Definition at line 2597 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 2535 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 2548 of file longrat.cc.
Definition at line 3462 of file longrat.cc.
Definition at line 164 of file longrat.cc.
Definition at line 2710 of file longrat.cc.
Definition at line 2939 of file longrat.cc.
Definition at line 2776 of file longrat.cc.
Definition at line 740 of file longrat.cc.
Definition at line 935 of file longrat.cc.
Definition at line 1016 of file longrat.cc.
Definition at line 790 of file longrat.cc.
Definition at line 2624 of file longrat.cc.
Definition at line 545 of file longrat.cc.
Definition at line 205 of file longrat.cc.
Definition at line 432 of file longrat.cc.
Definition at line 222 of file longrat.cc.
Definition at line 189 of file longrat.cc.
Definition at line 2454 of file longrat.cc.
Definition at line 392 of file longrat.cc.
Definition at line 210 of file longrat.cc.
Definition at line 1572 of file longrat.cc.
Definition at line 2810 of file longrat.cc.
Definition at line 2728 of file longrat.cc.
Definition at line 2673 of file longrat.cc.
Definition at line 1481 of file longrat.cc.
|
static |
Definition at line 1525 of file longrat.cc.
Definition at line 1250 of file longrat.cc.
Definition at line 1108 of file longrat.cc.
Definition at line 2871 of file longrat.cc.
|
static |
Definition at line 31 of file longrat0.cc.
Definition at line 3367 of file longrat.cc.
number nlRInit | ( | long | i | ) |
Definition at line 2521 of file longrat.cc.
Definition at line 2473 of file longrat.cc.
number nlShort1 | ( | number | x | ) |
Definition at line 1460 of file longrat.cc.
|
inlinestatic |
Definition at line 109 of file longrat.cc.
number nlShort3_noinline | ( | number | x | ) |
Definition at line 159 of file longrat.cc.
Definition at line 711 of file longrat.cc.
Definition at line 2758 of file longrat.cc.
Definition at line 90 of file longrat0.cc.
Definition at line 3321 of file longrat.cc.
number nlXExtGcd | ( | number | a, |
number | b, | ||
number * | s, | ||
number * | t, | ||
number * | u, | ||
number * | v, | ||
const coeffs | r ) |
Definition at line 2819 of file longrat.cc.
VAR int n_SwitchChinRem =0 |
Definition at line 3085 of file longrat.cc.