1367{
1368
1369#ifdef HAVE_OMALLOC
1371#ifndef OM_NDEBUG
1372#ifndef __OPTIMIZE__
1373 #ifndef MAKE_DISTRUBTION
1375 #endif
1376#else
1378#endif
1379#else
1381#endif
1383#endif
1384
1385#ifndef HAVE_NTL
1388#endif
1389 {
1390 char *env_cpu=
getenv(
"SINGULAR_CPUS");
1392 {
1393 int cpu_n,cpus;
1394 #ifdef _SC_NPROCESSORS_ONLN
1395 if ((cpu_n=sysconf(_SC_NPROCESSORS_ONLN))>cpus) cpus=cpu_n;
1396 #elif defined(_SC_NPROCESSORS_CONF)
1397 if ((cpu_n=sysconf(_SC_NPROCESSORS_CONF))>cpus) cpus=cpu_n;
1398 #endif
1399 #ifdef HAVE_SIMPLEIPC
1401 #endif
1402
1403 int t=atoi(env_cpu);
1404 if ((t>=0)&&(t<cpus)) cpus=t;
1406
1408 }
1409 }
1410
1412
1415
1417
1426
1428
1429#if 1
1430
1432 {
1434 #ifdef SINGULAR_4_2
1437 #endif
1438
1441
1444
1445 (void)type;
1446 }
1447#endif
1448
1449
1450 {
1452 if (t==0) t=1;
1458 }
1459
1460
1461
1462
1464
1465
1468
1469
1470 {
1479
1480
1481
1482
1483 }
1484
1485
1486#ifdef HAVE_PLURAL
1493#endif
1494
1496 {
1502 }
1503
1504 #ifndef __CYGWIN__
1506 #endif
1508}
BOOLEAN naInitChar(coeffs cf, void *infoStruct)
Initialize the coeffs object.
BOOLEAN n2pInitChar(coeffs cf, void *infoStruct)
void factoryseed(int s)
random seed initializer
VAR void(* factoryError)(const char *s)
Class used for (list of) interpreter objects.
@ n_polyExt
used to represent polys as coefficients
@ n_Q
rational (GMP) numbers
@ n_algExt
used for all algebraic extensions, i.e., the top-most extension in an extension tower is algebraic
@ n_Zn
only used if HAVE_RINGS is defined
@ n_transExt
used for all transcendental extensions, i.e., the top-most extension in an extension tower is transce...
@ n_Z
only used if HAVE_RINGS is defined
coeffs nInitChar(n_coeffType t, void *parameter)
one-time initialisations for new coeffs in case of an error return NULL
void feInitResources(const char *argv0)
EXTERN_VAR BBA_Proc gnc_gr_bba
EXTERN_VAR BBA_Proc gnc_gr_mora
EXTERN_VAR BBA_Proc sca_gr_bba
EXTERN_VAR BBA_Proc sca_mora
EXTERN_VAR BBA_Proc sca_bba
ideal k_gnc_gr_bba(const ideal F, const ideal Q, const intvec *, const bigintmat *, kStrategy strat, const ring _currRing)
ideal k_gnc_gr_mora(const ideal F, const ideal Q, const intvec *, const bigintmat *, kStrategy strat, const ring _currRing)
int iiInitArithmetic()
initialisation of arithmetic structured data
idhdl enterid(const char *s, int lev, int t, idhdl *root, BOOLEAN init, BOOLEAN search)
int iiAddCproc(const char *libname, const char *procname, BOOLEAN pstatic, BOOLEAN(*func)(leftv res, leftv v))
BOOLEAN iiLibCmd(const char *newlib, BOOLEAN autoexport, BOOLEAN tellerror, BOOLEAN force)
ideal k_sca_bba(const ideal F, const ideal Q, const intvec *, const bigintmat *, kStrategy strat, const ring _currRing)
Modified modern Sinuglar Buchberger's algorithm.
ideal k_sca_gr_bba(const ideal F, const ideal Q, const intvec *, const bigintmat *, kStrategy strat, const ring _currRing)
Modified Plural's Buchberger's algorithmus.
ideal k_sca_mora(const ideal F, const ideal Q, const intvec *, const bigintmat *, kStrategy strat, const ring _currRing)
Modified modern Sinuglar Mora's algorithm.
poly k_NF(ideal F, ideal Q, poly p, int syzComp, int lazyReduce, const ring _currRing)
NOTE: this is just a wrapper which sets currRing for the actual kNF call.
static BOOLEAN iiCrossProd(leftv res, leftv args)
void omSingOutOfMemoryFunc()
static BOOLEAN iiFloat(leftv res, leftv pnn)
static void callWerrorS(const char *s)
void nRegisterCfByName(cfInitCfByNameProc p, n_coeffType n)
n_coeffType nRegister(n_coeffType n, cfInitCharProc p)
#define SI_SAVE_OPT(A, B)
#define SI_RESTORE_OPT(A, B)
coeffs nrnInitCfByName(char *s, n_coeffType)
INST_VAR sleftv sLastPrinted
BOOLEAN ntInitChar(coeffs cf, void *infoStruct)
Initialize the coeffs object.