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 128 of file rintegers.cc.

129 {
130  mpz_ptr erg = (mpz_ptr) omAllocBin(gmp_nrz_bin);
131  mpz_init_set_si(erg, i);
132  return (number) erg;
133 }
#define omAllocBin(bin)
Definition: omAllocDecl.h:205
omBin gmp_nrz_bin
Definition: rintegers.cc:31
int i
Definition: cfEzgcd.cc:123

◆ nrzInitChar()

BOOLEAN nrzInitChar ( coeffs  r,
void *  parameter 
)

Definition at line 571 of file rintegers.cc.

572 {
573  assume( getCoeffType(r) == n_Z );
574 
575  r->is_field=FALSE;
576  r->is_domain=TRUE;
577  r->rep=n_rep_gmp;
578 
579  //r->nCoeffIsEqual = ndCoeffIsEqual;
580  r->cfCoeffString = nrzCoeffString;
581  r->cfCoeffName = nrzCoeffName;
582  r->cfCoeffWrite = nrzCoeffWrite;
583  //r->cfKillChar = ndKillChar;
584  r->cfMult = nrzMult;
585  r->cfSub = nrzSub;
586  r->cfAdd = nrzAdd;
587  r->cfDiv = nrzDiv;
588  r->cfIntMod= nrzIntMod;
589  r->cfExactDiv= nrzExactDiv;
590  r->cfInit = nrzInit;
591  r->cfInitMPZ = nrzInitMPZ;
592  r->cfSize = nrzSize;
593  r->cfInt = nrzInt;
594  r->cfDivComp = nrzDivComp;
595  r->cfIsUnit = nrzIsUnit;
596  r->cfGetUnit = nrzGetUnit;
597  r->cfExtGcd = nrzExtGcd;
598  r->cfXExtGcd = nrzXExtGcd;
599  r->cfDivBy = nrzDivBy;
600  r->cfQuotRem = nrzQuotRem;
601  r->cfInpNeg = nrzNeg;
602  r->cfInvers= nrzInvers;
603  r->cfCopy = nrzCopy;
604  r->cfWriteLong = nrzWrite;
605  r->cfRead = nrzRead;
606  r->cfGreater = nrzGreater;
607  r->cfEqual = nrzEqual;
608  r->cfIsZero = nrzIsZero;
609  r->cfIsOne = nrzIsOne;
610  r->cfIsMOne = nrzIsMOne;
611  r->cfGreaterZero = nrzGreaterZero;
612  r->cfPower = nrzPower;
613  r->cfGcd = nrzGcd;
614  r->cfLcm = nrzLcm;
615  r->cfDelete= nrzDelete;
616  r->cfSetMap = nrzSetMap;
617  r->cfQuot1 = nrzQuot1;
618  r->convSingNFactoryN=nrzConvSingNFactoryN;
619  r->convFactoryNSingN=nrzConvFactoryNSingN;
620  r->cfChineseRemainder=nlChineseRemainderSym;
621  r->cfFarey=nrzFarey;
622  // debug stuff
623 
624 #ifdef LDEBUG
625  r->cfDBTest=nrzDBTest;
626 #endif
627 
628  r->nNULL = 0;
629  r->ch = 0;
630  r->has_simple_Alloc=FALSE;
631  r->has_simple_Inverse=FALSE;
632  return FALSE;
633 }
static const char * nrzRead(const char *s, number *a, const coeffs)
Definition: rintegers.cc:454
static BOOLEAN nrzEqual(number a, number b, const coeffs)
Definition: rintegers.cc:213
static number nrzExtGcd(number a, number b, number *s, number *t, const coeffs)
Definition: rintegers.cc:72
static number nrzMult(number a, number b, const coeffs)
Definition: rintegers.cc:37
void nrzWrite(number a, const coeffs)
Definition: rintegers.cc:386
static number nrzNeg(number c, const coeffs)
Definition: rintegers.cc:310
#define FALSE
Definition: auxiliary.h:94
static void nrzDelete(number *a, const coeffs)
Definition: rintegers.cc:135
static number nrzAdd(number a, number b, const coeffs)
Definition: rintegers.cc:172
static number nrzInitMPZ(mpz_t m, const coeffs)
Definition: rintegers.cc:493
static void nrzCoeffWrite(const coeffs, BOOLEAN)
Definition: rintegers.cc:465
#define TRUE
Definition: auxiliary.h:98
static number nrzGcd(number a, number b, const coeffs)
Definition: rintegers.cc:60
static BOOLEAN nrzDBTest(number, const char *, const int, const coeffs)
Definition: rintegers.cc:380
static BOOLEAN nrzDivBy(number a, number b, const coeffs)
Definition: rintegers.cc:228
static long nrzInt(number &n, const coeffs)
Definition: rintegers.cc:167
static BOOLEAN nrzGreaterZero(number k, const coeffs)
Definition: rintegers.cc:223
static int nrzDivComp(number a, number b, const coeffs r)
Definition: rintegers.cc:233
static number nrzIntMod(number a, number b, const coeffs)
Definition: rintegers.cc:288
static number nrzCopy(number a, const coeffs)
Definition: rintegers.cc:143
static number nrzExactDiv(number a, number b, const coeffs)
Definition: rintegers.cc:261
const ring r
Definition: syzextra.cc:208
static BOOLEAN nrzGreater(number a, number b, const coeffs)
Definition: rintegers.cc:218
static number nrzGetUnit(number, const coeffs r)
Definition: rintegers.cc:188
#define assume(x)
Definition: mod2.h:394
static BOOLEAN nrzIsUnit(number a, const coeffs)
Definition: rintegers.cc:193
static BOOLEAN nrzIsOne(number a, const coeffs)
Definition: rintegers.cc:203
static number nrzLcm(number a, number b, const coeffs)
Definition: rintegers.cc:48
static CanonicalForm nrzConvSingNFactoryN(number n, BOOLEAN setChar, const coeffs)
Definition: rintegers.cc:431
only used if HAVE_RINGS is defined
Definition: coeffs.h:43
(mpz_ptr), see rmodulon,h
Definition: coeffs.h:115
static int nrzSize(number a, const coeffs)
Definition: rintegers.cc:158
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:470
number nrzInit(long i, const coeffs)
Definition: rintegers.cc:128
number nlChineseRemainderSym(number *x, number *q, int rl, BOOLEAN sym, CFArray &inv_cache, const coeffs CF)
Definition: longrat.cc:2938
static number nrzDiv(number a, number b, const coeffs)
Definition: rintegers.cc:244
static BOOLEAN nrzIsZero(number a, const coeffs)
Definition: rintegers.cc:198
static number nrzFarey(number r, number N, const coeffs R)
Definition: rintegers.cc:500
static BOOLEAN nrzIsMOne(number a, const coeffs)
Definition: rintegers.cc:208
static void nrzPower(number a, int i, number *result, const coeffs)
Definition: rintegers.cc:117
static coeffs nrzQuot1(number c, const coeffs r)
Definition: rintegers.cc:480
static number nrzQuotRem(number a, number b, number *r, const coeffs)
Definition: rintegers.cc:269
static char * nrzCoeffString(const coeffs cf)
Definition: rintegers.cc:475
static number nrzXExtGcd(number a, number b, number *s, number *t, number *u, number *v, const coeffs)
Definition: rintegers.cc:86
static number nrzConvFactoryNSingN(const CanonicalForm n, const coeffs r)
Definition: rintegers.cc:442
static number nrzSub(number a, number b, const coeffs)
Definition: rintegers.cc:180
static number nrzInvers(number c, const coeffs r)
Definition: rintegers.cc:300
static nMapFunc nrzSetMap(const coeffs src, const coeffs)
Definition: rintegers.cc:339

◆ nrzWrite()

void nrzWrite ( number  a,
const coeffs  r 
)

Definition at line 386 of file rintegers.cc.

387 {
388  char *s,*z;
389  if (a==NULL)
390  {
391  StringAppendS("o");
392  }
393  else
394  {
395  int l=mpz_sizeinbase((mpz_ptr) a, 10) + 2;
396  s=(char*)omAlloc(l);
397  z=mpz_get_str(s,10,(mpz_ptr) a);
398  StringAppendS(z);
399  omFreeSize((ADDRESS)s,l);
400  }
401 }
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