![]() |
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 1791 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 1813 of file longrat.cc.
number _nlCopy_NoImm | ( | number | a | ) |
Definition at line 1741 of file longrat.cc.
void _nlDelete_NoImm | ( | number * | a | ) |
Definition at line 1762 of file longrat.cc.
BOOLEAN _nlEqual_aNoImm_OR_bNoImm | ( | number | a, |
number | b ) |
Definition at line 1694 of file longrat.cc.
void _nlInpAdd_aNoImm_OR_bNoImm | ( | number & | a, |
number | b ) |
Definition at line 1971 of file longrat.cc.
number _nlMult_aImm_bImm_rNoImm | ( | number | a, |
number | b ) |
Definition at line 2325 of file longrat.cc.
number _nlMult_aNoImm_OR_bNoImm | ( | number | a, |
number | b ) |
Definition at line 2338 of file longrat.cc.
number _nlNeg_NoImm | ( | number | a | ) |
Definition at line 1780 of file longrat.cc.
number _nlSub_aNoImm_OR_bNoImm | ( | number | a, |
number | b ) |
Definition at line 2114 of file longrat.cc.
|
static |
Definition at line 1411 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 2693 of file longrat.cc.
Definition at line 773 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 3087 of file longrat.cc.
|
static |
Definition at line 3131 of file longrat.cc.
|
static |
Definition at line 3222 of file longrat.cc.
BOOLEAN nlCoeffIsEqual | ( | const coeffs | r, |
n_coeffType | n, | ||
void * | p ) |
Definition at line 3427 of file longrat.cc.
Definition at line 3316 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 2645 of file longrat.cc.
Definition at line 2446 of file longrat.cc.
Definition at line 235 of file longrat.cc.
Definition at line 2658 of file longrat.cc.
Definition at line 1141 of file longrat.cc.
Definition at line 1078 of file longrat.cc.
Definition at line 1092 of file longrat.cc.
Definition at line 2589 of file longrat.cc.
Definition at line 871 of file longrat.cc.
Definition at line 3031 of file longrat.cc.
Definition at line 2960 of file longrat.cc.
Definition at line 1341 of file longrat.cc.
Definition at line 1634 of file longrat.cc.
Definition at line 1663 of file longrat.cc.
Definition at line 1103 of file longrat.cc.
Definition at line 1614 of file longrat.cc.
Definition at line 1314 of file longrat.cc.
Definition at line 2598 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 2536 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 2549 of file longrat.cc.
Definition at line 3463 of file longrat.cc.
Definition at line 164 of file longrat.cc.
Definition at line 2711 of file longrat.cc.
Definition at line 2940 of file longrat.cc.
Definition at line 2777 of file longrat.cc.
Definition at line 741 of file longrat.cc.
Definition at line 936 of file longrat.cc.
Definition at line 1017 of file longrat.cc.
Definition at line 791 of file longrat.cc.
Definition at line 2625 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 2455 of file longrat.cc.
Definition at line 392 of file longrat.cc.
Definition at line 210 of file longrat.cc.
Definition at line 1573 of file longrat.cc.
Definition at line 2811 of file longrat.cc.
Definition at line 2729 of file longrat.cc.
Definition at line 2674 of file longrat.cc.
Definition at line 1482 of file longrat.cc.
|
static |
Definition at line 1526 of file longrat.cc.
Definition at line 1251 of file longrat.cc.
Definition at line 1109 of file longrat.cc.
Definition at line 2872 of file longrat.cc.
|
static |
Definition at line 31 of file longrat0.cc.
Definition at line 3368 of file longrat.cc.
number nlRInit | ( | long | i | ) |
Definition at line 2522 of file longrat.cc.
Definition at line 2474 of file longrat.cc.
number nlShort1 | ( | number | x | ) |
Definition at line 1461 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 712 of file longrat.cc.
Definition at line 2759 of file longrat.cc.
Definition at line 90 of file longrat0.cc.
Definition at line 3322 of file longrat.cc.
number nlXExtGcd | ( | number | a, |
number | b, | ||
number * | s, | ||
number * | t, | ||
number * | u, | ||
number * | v, | ||
const coeffs | r ) |
Definition at line 2820 of file longrat.cc.
VAR int n_SwitchChinRem =0 |
Definition at line 3086 of file longrat.cc.