Functions
rintegers.h File Reference
#include <misc/auxiliary.h>

Go to the source code of this file.

Functions

BOOLEAN nrzInitChar (coeffs r, void *parameter)
 
void nrzWrite (number a, const coeffs r)
 
number nrzInit (long i, const coeffs r)
 

Function Documentation

§ nrzInit()

number nrzInit ( long  i,
const coeffs  r 
)

Definition at line 142 of file rintegers.cc.

143 {
144  mpz_ptr erg = (mpz_ptr) omAllocBin(gmp_nrz_bin);
145  mpz_init_set_si(erg, i);
146  return (number) erg;
147 }
#define omAllocBin(bin)
Definition: omAllocDecl.h:205
omBin gmp_nrz_bin
Definition: rintegers.cc:76
int i
Definition: cfEzgcd.cc:123

§ nrzInitChar()

BOOLEAN nrzInitChar ( coeffs  r,
void *  parameter 
)

Definition at line 489 of file rintegers.cc.

490 {
491  assume( getCoeffType(r) == n_Z );
492 
493  r->is_field=FALSE;
494  r->is_domain=TRUE;
495  r->rep=n_rep_gmp;
496 
497  //r->nCoeffIsEqual = ndCoeffIsEqual;
498  r->cfCoeffString = nrzCoeffString;
499  r->cfCoeffName = nrzCoeffName;
500  r->cfCoeffWrite = nrzCoeffWrite;
501  //r->cfKillChar = ndKillChar;
502  r->cfMult = nrzMult;
503  r->cfSub = nrzSub;
504  r->cfAdd = nrzAdd;
505  r->cfDiv = nrzDiv;
506  r->cfIntMod= nrzIntMod;
507  r->cfExactDiv= nrzExactDiv;
508  r->cfInit = nrzInit;
509  r->cfSize = nrzSize;
510  r->cfInt = nrzInt;
511  //#ifdef HAVE_RINGS
512  r->cfDivComp = nrzDivComp; // only for ring stuff
513  r->cfIsUnit = nrzIsUnit; // only for ring stuff
514  r->cfGetUnit = nrzGetUnit; // only for ring stuff
515  r->cfExtGcd = nrzExtGcd; // only for ring stuff
516  r->cfDivBy = nrzDivBy; // only for ring stuff
517  //#endif
518  r->cfInpNeg = nrzNeg;
519  r->cfInvers= nrzInvers;
520  r->cfCopy = nrzCopy;
521  r->cfWriteLong = nrzWrite;
522  r->cfRead = nrzRead;
523  r->cfGreater = nrzGreater;
524  r->cfEqual = nrzEqual;
525  r->cfIsZero = nrzIsZero;
526  r->cfIsOne = nrzIsOne;
527  r->cfIsMOne = nrzIsMOne;
528  r->cfGreaterZero = nrzGreaterZero;
529  r->cfPower = nrzPower;
530  r->cfGcd = nrzGcd;
531  r->cfLcm = nrzLcm;
532  r->cfDelete= nrzDelete;
533  r->cfSetMap = nrzSetMap;
534  r->cfQuot1 = nrzQuot1;
535  r->convSingNFactoryN=nrzConvSingNFactoryN;
536  r->convFactoryNSingN=nrzConvFactoryNSingN;
537  // debug stuff
538 
539 #ifdef LDEBUG
540  r->cfDBTest=nrzDBTest;
541 #endif
542 
543  r->nNULL = 0;
544  r->ch = 0;
545  r->has_simple_Alloc=FALSE;
546  r->has_simple_Inverse=FALSE;
547  return FALSE;
548 }
number nrzGetUnit(number a, const coeffs r)
Definition: rintegers.cc:202
number nrzIntMod(number a, number b, const coeffs r)
Definition: rintegers.cc:283
void nrzDelete(number *a, const coeffs r)
Definition: rintegers.cc:149
#define FALSE
Definition: auxiliary.h:94
int nrzDivComp(number a, number b, const coeffs r)
Definition: rintegers.cc:242
number nrzMult(number a, number b, const coeffs r)
Definition: rintegers.cc:82
number nrzLcm(number a, number b, const coeffs r)
Definition: rintegers.cc:93
BOOLEAN nrzEqual(number a, number b, const coeffs r)
Definition: rintegers.cc:227
#define TRUE
Definition: auxiliary.h:98
nMapFunc nrzSetMap(const coeffs src, const coeffs dst)
Definition: rintegers.cc:334
BOOLEAN nrzDivBy(number a, number b, const coeffs r)
Definition: rintegers.cc:253
number nrzDiv(number a, number b, const coeffs r)
Definition: rintegers.cc:258
BOOLEAN nrzGreaterZero(number k, const coeffs r)
Definition: rintegers.cc:237
BOOLEAN nrzGreater(number a, number b, const coeffs r)
Definition: rintegers.cc:232
void nrzPower(number a, int i, number *result, const coeffs r)
Definition: rintegers.cc:131
const char * nrzRead(const char *s, number *a, const coeffs r)
Definition: rintegers.cc:450
number nrzCopy(number a, const coeffs r)
Definition: rintegers.cc:157
number nrzNeg(number c, const coeffs r)
Definition: rintegers.cc:305
int nrzSize(number a, const coeffs r)
Definition: rintegers.cc:172
void nrzWrite(number a, const coeffs r)
Definition: rintegers.cc:382
BOOLEAN nrzIsOne(number a, const coeffs r)
Definition: rintegers.cc:217
number nrzGcd(number a, number b, const coeffs r)
Definition: rintegers.cc:105
#define assume(x)
Definition: mod2.h:394
number nrzInvers(number c, const coeffs r)
Definition: rintegers.cc:295
number nrzExtGcd(number a, number b, number *s, number *t, const coeffs r)
Definition: rintegers.cc:117
number nrzSub(number a, number b, const coeffs r)
Definition: rintegers.cc:194
static CanonicalForm nrzConvSingNFactoryN(number n, BOOLEAN setChar, const coeffs)
Definition: rintegers.cc:427
coeffs nrzQuot1(number c, const coeffs r)
Definition: rintegers.cc:476
only used if HAVE_RINGS is defined
Definition: coeffs.h:43
void nrzCoeffWrite(const coeffs r, BOOLEAN details)
Definition: rintegers.cc:461
(mpz_ptr), see rmodulon,h
Definition: coeffs.h:115
static FORCE_INLINE n_coeffType getCoeffType(const coeffs r)
Returns the type of coeffs domain.
Definition: coeffs.h:425
static char * nrzCoeffName(const coeffs)
Definition: rintegers.cc:466
number nrzInit(long i, const coeffs)
Definition: rintegers.cc:142
number nrzAdd(number a, number b, const coeffs r)
Definition: rintegers.cc:186
number nrzExactDiv(number a, number b, const coeffs r)
Definition: rintegers.cc:275
BOOLEAN nrzIsMOne(number a, const coeffs r)
Definition: rintegers.cc:222
BOOLEAN nrzDBTest(number a, const char *f, const int l, const coeffs r)
Definition: rintegers.cc:376
static char * nrzCoeffString(const coeffs cf)
Definition: rintegers.cc:471
BOOLEAN nrzIsUnit(number a, const coeffs r)
Definition: rintegers.cc:207
static number nrzConvFactoryNSingN(const CanonicalForm n, const coeffs r)
Definition: rintegers.cc:438
BOOLEAN nrzIsZero(number a, const coeffs r)
Definition: rintegers.cc:212
long nrzInt(number &n, const coeffs r)
Definition: rintegers.cc:181

§ nrzWrite()

void nrzWrite ( number  a,
const coeffs  r 
)

Definition at line 382 of file rintegers.cc.

383 {
384  char *s,*z;
385  if (a==NULL)
386  {
387  StringAppendS("o");
388  }
389  else
390  {
391  int l=mpz_sizeinbase((mpz_ptr) a, 10) + 2;
392  s=(char*)omAlloc(l);
393  z=mpz_get_str(s,10,(mpz_ptr) a);
394  StringAppendS(z);
395  omFreeSize((ADDRESS)s,l);
396  }
397 }
const CanonicalForm int s
Definition: facAbsFact.cc:55
const poly a
Definition: syzextra.cc:212
#define omFreeSize(addr, size)
Definition: omAllocDecl.h:260
void * ADDRESS
Definition: auxiliary.h:115
#define omAlloc(size)
Definition: omAllocDecl.h:210
void StringAppendS(const char *st)
Definition: reporter.cc:107
#define NULL
Definition: omList.c:10
int l
Definition: cfEzgcd.cc:94