491 const int c = (int) (
long)
p;
502 r->npPminus1M = c - 1;
564 r->has_simple_Alloc=
TRUE;
565 r->has_simple_Inverse=
TRUE;
573 r->npInvTable=(
unsigned short*)
omAlloc0( r->ch*
sizeof(
unsigned short) );
575 #ifndef HAVE_GENERIC_MULT
576 r->npExpTable=(
unsigned short *)
omAlloc0( r->ch*
sizeof(
unsigned short) );
577 r->npLogTable=(
unsigned short *)
omAlloc0( r->ch*
sizeof(
unsigned short) );
578 r->npExpTable[0] = 1;
579 r->npLogTable[0] = 0;
585 r->npLogTable[1] = 0;
591 r->npExpTable[
i] =(int)(((
long)
w * (long)r->npExpTable[
i-1]) % r->ch);
592 r->npLogTable[r->npExpTable[
i]] =
i;
593 if ( r->npExpTable[
i] == 1 )
602 r->npExpTable[1] = 1;
603 r->npLogTable[1] = 0;
612 r->cfExactDiv =
nvDiv;
static FORCE_INLINE n_coeffType getCoeffType(const coeffs r)
Returns the type of coeffs domain.
@ n_rep_int
(int), see modulop.h
static BOOLEAN npCoeffsEqual(const coeffs r, n_coeffType n, void *parameter)
void nvInpMult(number &a, number b, const coeffs r)
number npInvers(number c, const coeffs r)
number nvDiv(number a, number b, const coeffs r)
void npCoeffWrite(const coeffs r, BOOLEAN details)
BOOLEAN npIsMOne(number a, const coeffs r)
CanonicalForm npConvSingNFactoryN(number n, BOOLEAN setChar, const coeffs r)
BOOLEAN npIsOne(number a, const coeffs r)
number npNeg(number c, const coeffs r)
nMapFunc npSetMap(const coeffs src, const coeffs dst)
const char * npRead(const char *s, number *a, const coeffs r)
number npInit(long i, const coeffs r)
number nvInvers(number c, const coeffs r)
static char * npCoeffName(const coeffs cf)
void npInpMult(number &a, number b, const coeffs r)
BOOLEAN npDBTest(number a, const char *f, const int l, const coeffs r)
number npMult(number a, number b, const coeffs r)
static void npWriteFd(number n, FILE *f, const coeffs)
number nvMult(number a, number b, const coeffs r)
BOOLEAN npIsZero(number a, const coeffs r)
void npWrite(number a, const coeffs r)
static number npReadFd(s_buff f, const coeffs)
static char * npCoeffString(const coeffs cf)
BOOLEAN npGreaterZero(number k, const coeffs r)
BOOLEAN npEqual(number a, number b, const coeffs r)
static number npRandom(siRandProc p, number, number, const coeffs cf)
long npInt(number &n, const coeffs r)
number npDiv(number a, number b, const coeffs r)
void npKillChar(coeffs r)
number npConvFactoryNSingN(const CanonicalForm n, const coeffs r)
BOOLEAN npGreater(number a, number b, const coeffs r)
static number npAddM(number a, number b, const coeffs r)
static void npInpAddM(number &a, number b, const coeffs r)
static number npSubM(number a, number b, const coeffs r)