65 for(
int i=1;
i<=strat->
sl;
i++)
72 for(
int i=1;
i<=strat->
sl;
i++)
81 for(
int i=strat->
Ll;
i>=0;
i--)
86 strat->
P = strat->
L[
i];
97 if ((strat->
P.p ==
NULL) && (strat->
P.t_p ==
NULL))
120 if (
p==
NULL) red_result=0;
183 for(
int i=1;
i<=strat->
sl;
i++)
190 for(
int i=1;
i<=strat->
sl;
i++)
198 for(
int i=strat->
Ll;
i>=0;
i--)
218 if (cpus>strat->
Ll) cpus=strat->
Ll;
220 int parent_pid=getpid();
226 for(
int i=strat->
Ll;
i>=0;
i--)
230 for(
int i=cpus*2;
i>=0;
i--)
235 for (
int i=0;
i<cpus;
i++)
243 if (parent_pid!=getpid())
250 int ind=queue->dequeue();
254 rqueue->enqueue(getpid());
273 if ((P.p ==
NULL) && (P.t_p ==
NULL))
283 if (
p==
NULL) red_result=0;
298 rqueue->enqueue(getpid());
303 rqueue->enqueue(getpid());
313 int remaining_children=cpus;
314 while(remaining_children>0)
316 res=rqueue->dequeue();
320 if (si_waitpid(
res,
NULL,WNOHANG)==0)
331 if (si_waitpid(
res,
NULL,WNOHANG) ==0)
341 remaining_children--;
351 dummy=queue->dequeue();
si_hdl_typ si_set_signal(int sig, si_hdl_typ signal_handler)
meta function for binding a signal to an handler
void sig_term_hdl_child(int)
const char * feSetOptValue(feOptIndex opt, char *optarg)
static void * feOptValue(feOptIndex opt)
KINLINE TObject ** initR()
KINLINE unsigned long * initsevT()
void ksCreateSpoly(LObject *Pair, poly spNoether, int use_buckets, ring tailRing, poly m1, poly m2, TObject **R)
void initBba(kStrategy strat)
poly redNF(poly h, int &max_ind, int nonorm, kStrategy strat)
void initBuchMora(ideal F, ideal Q, kStrategy strat)
void initBuchMoraPos(kStrategy strat)
void initenterpairs(poly h, int k, int ecart, int isFromQ, kStrategy strat, int atR)
void initS(ideal F, ideal Q, kStrategy strat)
BOOLEAN kCheckSpolyCreation(LObject *L, kStrategy strat, poly &m1, poly &m2)
void deleteInL(LSet set, int *length, int j, kStrategy strat)
void initBuchMoraCrit(kStrategy strat)
void messageSets(kStrategy strat)
static LSet initL(int nr=setmaxL)
BOOLEAN kVerify2(ideal F, ideal Q)
BOOLEAN kVerify1(ideal F, ideal Q)
void rem(unsigned long *a, unsigned long *q, unsigned long p, int °a, int degq)
static const int MAX_PROCESS
static void vmem_deinit()
static Status vmem_init()
#define TEST_OPT_DEGBOUND
void p_wrp(poly p, ring lmRing, ring tailRing)
VAR ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
Compatibility layer for legacy polynomial operations (over currRing)
static void pLmFree(poly p)
frees the space of the monomial m, assumes m != NULL coef is not freed, m is not advanced
#define pInit()
allocates a new monomial and initializes everything to 0
static BOOLEAN rIsNCRing(const ring r)
long id_RankFreeModule(ideal s, ring lmRing, ring tailRing)
return the maximal component number found in any polynomial in s
void singular_close_links()