23 #define SR_HDL(A) ((long)(A)) 26 #define SR_TO_INT(SR) (((long)SR) >> 2) 36 while (*
s >=
'0' && *
s <=
'9')
s++;
39 mpz_set_str(
i,start,10);
45 mpz_set_str(
i,start,10);
77 if (mpz_cmp_si(n,0L)==0)
83 else if (mpz_cmp_si(n,1L)==0)
89 if (mpz_cmp_si(z,0L)==0)
126 int l=mpz_sizeinbase(
a->z,10);
127 if (
a->s<2)
l=
si_max(
l,(
int)mpz_sizeinbase(
a->n,10));
130 z=mpz_get_str(
s,10,
a->z);
135 z=mpz_get_str(
s,10,
a->n);
143 void nlDebugWrite (number
a)
156 int l=mpz_sizeinbase(
a->z,10);
157 if (
a->s<2)
l=
si_max(
l,(
int)mpz_sizeinbase(
a->n,10));
160 z=mpz_get_str(
s,10,
a->z);
165 z=mpz_get_str(
s,10,
a->n);
const CanonicalForm int s
'SR_INT' is the type of those integers small enough to fit into 29 bits.
#define omFreeSize(addr, size)
const char * nlRead(const char *s, number *a, const coeffs r)
void nlWrite(number a, const coeffs)
void WerrorS(const char *s)
Coefficient rings, fields and other domains suitable for Singular polynomials.
The main handler for Singular numbers which are suitable for Singular polynomials.
void StringAppendS(const char *st)
const char *const nDivBy0
static int si_max(const int a, const int b)
void PrintS(const char *s)
number nlShort3_noinline(number x)
#define omGetSpecBin(size)
void nlNormalize(number &x, const coeffs r)
static const char * nlEatLong(char *s, mpz_ptr i)