31 number
N()
const {
return _n;}
103static number ngfCopyMap(number a,
const coeffs r1,
const coeffs r2)
302 while ((*
s >=
'0' && *
s <=
'9')||(*
s ==
'.'))
s++;
307 if ( (
s != start) && ((*
s ==
'e')||(*
s==
'E')))
311 if ((*
s ==
'+') || (*
s ==
'-'))
s++;
312 while ((*
s >=
'0' && *
s <=
'9'))
s++;
328 char *
s= (
char *)start;
361 Werror(
"wrong long real format: %s",start2);
407 && (
p->float_len == r->float_len)
408 && (
p->float_len2 == r->float_len2))
422 snprintf(ngfCoeffName_buf,30,
"Float(%d,%d)",r->float_len,r->float_len2);
423 return ngfCoeffName_buf;
557 if( parameter !=
NULL)
561 n->float_len =
p->float_len;
562 n->float_len2 =
p->float_len2;
gmp_complex numbers based on
void setFromStr(const char *in)
Coefficient rings, fields and other domains suitable for Singular polynomials.
number ndCopyMap(number a, const coeffs src, const coeffs dst)
static FORCE_INLINE BOOLEAN nCoeff_is_long_R(const coeffs r)
@ n_R
single prescision (6,6) real numbers
@ n_long_R
real floating point (GMP) numbers
@ n_long_C
complex floating point (GMP) numbers
static FORCE_INLINE char const ** n_ParameterNames(const coeffs r)
Returns a (const!) pointer to (const char*) names of parameters.
static FORCE_INLINE n_coeffType getCoeffType(const coeffs r)
Returns the type of coeffs domain.
static FORCE_INLINE int n_NumberOfParameters(const coeffs r)
Returns the number of parameters.
static FORCE_INLINE BOOLEAN nCoeff_is_Zp(const coeffs r)
@ n_rep_gap_rat
(number), see longrat.h
@ n_rep_gap_gmp
(), see rinteger.h, new impl.
@ n_rep_float
(float), see shortfl.h
@ n_rep_int
(int), see modulop.h
@ n_rep_gmp_float
(gmp_float), see
@ n_rep_gmp
(mpz_ptr), see rmodulon,h
@ n_rep_gmp_complex
(gmp_complex), see gnumpc.h
number(* nMapFunc)(number a, const coeffs src, const coeffs dst)
maps "a", which lives in src, into dst
static FORCE_INLINE BOOLEAN nCoeff_is_R(const coeffs r)
static FORCE_INLINE BOOLEAN nCoeff_is_long_C(const coeffs r)
const CanonicalForm int s
bool isZero(const CFArray &A)
checks if entries of A are zero
void WerrorS(const char *s)
static number ngfInit(long i, const coeffs r)
static number ngfMapC(number from, const coeffs src, const coeffs dst)
static number ngfCopy(number a, const coeffs r)
static BOOLEAN ngfGreater(number a, number b, const coeffs r)
static void ngfSetChar(const coeffs r)
static void ngfInpAdd(number &a, number b, const coeffs R)
static number ngfMapZ(number from, const coeffs aRing, const coeffs r)
static number ngfInvers(number a, const coeffs r)
static long ngfInt(number &i, const coeffs r)
static number ngfInitMPZ(mpz_t m, const coeffs)
static number ngfDiv(number a, number b, const coeffs r)
static number ngfAdd(number a, number b, const coeffs R)
static number ngfMapP(number from, const coeffs src, const coeffs dst)
const char * ngfRead(const char *start, number *a, const coeffs r)
static BOOLEAN ngfGreaterZero(number a, const coeffs r)
static BOOLEAN ngfIsMOne(number a, const coeffs r)
static BOOLEAN ngfIsZero(number a, const coeffs r)
static void ngfWrite(number a, const coeffs r)
static number ngfPower(number x, int exp, const coeffs r)
static BOOLEAN ngfEqual(number a, number b, const coeffs r)
static int ngfSize(number n, const coeffs r)
static char * ngfEatFloatNExp(char *s)
static void ngfDelete(number *a, const coeffs r)
static number ngfMapQ(number from, const coeffs src, const coeffs dst)
static BOOLEAN ngfCoeffIsEqual(const coeffs r, n_coeffType n, void *parameter)
static number ngfNeg(number a, const coeffs r)
static void ngfInpMult(number &a, number b, const coeffs R)
static BOOLEAN ngfIsOne(number a, const coeffs r)
static number ngfMult(number a, number b, const coeffs R)
static nMapFunc ngfSetMap(const coeffs src, const coeffs dst)
static char * ngfCoeffName(const coeffs r)
BOOLEAN ngfInitChar(coeffs n, void *parameter)
Initialize r.
static number ngfSub(number a, number b, const coeffs R)
static number ngfMapR(number from, const coeffs src, const coeffs dst)
long npInt(number &n, const coeffs r)
char * floatToStr(const gmp_float &r, const unsigned int oprec)
gmp_float exp(const gmp_float &a)
gmp_float numberFieldToFloat(number num, int cf)
void setGMPFloatDigits(size_t digits, size_t rest)
Set size of mantissa digits - the number of output digits (basis 10) the size of mantissa consists of...
The main handler for Singular numbers which are suitable for Singular polynomials.
const char *const nDivBy0
#define SHORT_REAL_LENGTH
void StringAppendS(const char *st)
void Werror(const char *fmt,...)