[255eaa] | 1 | #ifndef RINTEGERS_H |
---|
| 2 | #define RINTEGERS_H |
---|
| 3 | /**************************************** |
---|
| 4 | * Computer Algebra System SINGULAR * |
---|
| 5 | ****************************************/ |
---|
| 6 | /* |
---|
| 7 | * ABSTRACT: numbers modulo n |
---|
| 8 | */ |
---|
[c90b43] | 9 | #ifdef HAVE_RINGS |
---|
[2d805a] | 10 | #include <coeffs/coeffs.h> |
---|
[255eaa] | 11 | |
---|
| 12 | extern int nrzExp; |
---|
| 13 | extern NATNUMBER nrzModul; |
---|
| 14 | |
---|
[1cce47] | 15 | BOOLEAN nrzInitChar (coeffs r, void * parameter); |
---|
[ec997eb] | 16 | number nrzCopy (number a, const coeffs r); |
---|
| 17 | int nrzSize (number a, const coeffs r); |
---|
[4cd3ee] | 18 | void nrzDelete (number *a, const coeffs r); |
---|
[bec902b] | 19 | BOOLEAN nrzGreaterZero (number k, const coeffs r); |
---|
| 20 | number nrzMult (number a, number b, const coeffs r); |
---|
[2f3764] | 21 | number nrzInit (long i, const coeffs r); |
---|
[4cd3ee] | 22 | int nrzInt (number &n, const coeffs r); |
---|
[bec902b] | 23 | number nrzAdd (number a, number b, const coeffs r); |
---|
| 24 | number nrzSub (number a, number b, const coeffs r); |
---|
| 25 | void nrzPower (number a, int i, number * result, const coeffs r); |
---|
| 26 | BOOLEAN nrzIsZero (number a, const coeffs r); |
---|
| 27 | BOOLEAN nrzIsOne (number a, const coeffs r); |
---|
| 28 | BOOLEAN nrzIsMOne (number a, const coeffs r); |
---|
| 29 | BOOLEAN nrzIsUnit (number a, const coeffs r); |
---|
| 30 | number nrzGetUnit (number a, const coeffs r); |
---|
| 31 | number nrzDiv (number a, number b, const coeffs r); |
---|
| 32 | number nrzIntDiv (number a, number b, const coeffs r); |
---|
| 33 | number nrzIntMod (number a, number b, const coeffs r); |
---|
| 34 | number nrzNeg (number c, const coeffs r); |
---|
| 35 | number nrzInvers (number c, const coeffs r); |
---|
| 36 | BOOLEAN nrzGreater (number a, number b, const coeffs r); |
---|
| 37 | BOOLEAN nrzDivBy (number a, number b, const coeffs r); |
---|
| 38 | int nrzDivComp (number a, number b, const coeffs r); |
---|
| 39 | BOOLEAN nrzEqual (number a, number b, const coeffs r); |
---|
| 40 | number nrzLcm (number a,number b, const coeffs r); |
---|
| 41 | number nrzGcd (number a,number b, const coeffs r); |
---|
| 42 | number nrzExtGcd (number a, number b, number *s, number *t, const coeffs r); |
---|
[4cd3ee] | 43 | nMapFunc nrzSetMap (const coeffs src, const coeffs dst); |
---|
| 44 | void nrzWrite (number &a, const coeffs r); |
---|
[ec997eb] | 45 | const char * nrzRead (const char *s, number *a, const coeffs r); |
---|
| 46 | char * nrzName (number n, const coeffs r); |
---|
[03f7b5] | 47 | void nrzCoeffWrite (const coeffs r, BOOLEAN details); |
---|
[255eaa] | 48 | #ifdef LDEBUG |
---|
[ec997eb] | 49 | BOOLEAN nrzDBTest (number a, const char *f, const int l, const coeffs r); |
---|
[255eaa] | 50 | #endif |
---|
[4cd3ee] | 51 | void nrzSetExp(int c, coeffs r); |
---|
| 52 | void nrzInitExp(int c, coeffs r); |
---|
| 53 | void nrzDelete(number *a, const coeffs r); |
---|
[255eaa] | 54 | |
---|
[c81a40] | 55 | number nrzMapQ(number from); |
---|
[255eaa] | 56 | #endif |
---|
| 57 | #endif |
---|