executes axtionE|actionG|actionS if p=q|p>q|p<q w.r.t monomial ordering action should be a "goto ..."
282#define pWTotaldegree(p) p_WTotaldegree(p,currRing)
283#define pWDegree(p) p_WDegree(p,currRing)
284
285
286#define pSub(a,b) p_Sub(a,b,currRing)
287
288#define pmInit(a,b) p_mInit(a,b,currRing)
289
290
291
292#define pMDivide(a,b) p_MDivide(a,b,currRing)
293#define pDivideM(a,b) p_DivideM(a,b,currRing)
294#define pLcm(a,b,m) p_Lcm(a,b,m,currRing)
295#define pDiff(a,b) p_Diff(a,b,currRing)
296#define pDiffOp(a,b,m) p_DiffOp(a,b,m,currRing)
297
298#define pMaxComp(p) p_MaxComp(p, currRing)
299#define pMinComp(p) p_MinComp(p, currRing)
300
301#define pOneComp(p) p_OneComp(p, currRing)
302#define pSetCompP(a,i) p_SetCompP(a, i, currRing)
303
304
310
311#define pISet(i) p_ISet(i,currRing)
312#define pNSet(n) p_NSet(n,currRing)
313
314#define pOne() p_One(currRing)
315
316#define pNormalize(p) p_Normalize(p,currRing)
317#define pSize(p) p_Size(p,currRing)
318
319
320
321#define pHomogen(p,varnum) p_Homogen(p,varnum,currRing)
322
324
325
326
327
328#define pIsHomogen(p) p_IsHomogen(p,currRing)
329
330
331#define pVectorHasUnitB(p,k) p_VectorHasUnitB(p,k,currRing)
332#define pVectorHasUnit(p,k,l) p_VectorHasUnit(p,k,l,currRing)
333
334
335
336
338{
340}
341
342
343
345{
347}
348
349
350
351
352
353
354
355
356
357
359#define pDeleteComp(p,k) p_DeleteComp(p,k,currRing)
360
362
363
364#define pSubst(p,n,e) p_Subst(p,n,e,currRing)
365#define ppJet(p,m) pp_Jet(p,m,currRing)
366#define pJet(p,m) p_Jet(p,m,currRing)
367#define ppJetW(p,m,iv) pp_JetW(p,m,iv,currRing)
368#define pJetW(p,m,iv) p_JetW(p,m,iv,currRing)
369#define pMinDeg(p,w) p_MinDeg(p,w,currRing)
370#define pSeries(n,p,u,w) p_Series(n,p,u,w,currRing)
371
372
373
374
375#define pDegW(p,w) p_DegW(p,w,currRing)
376
377
378
379#define pVar(m) p_Var(m,currRing)
380
381
382
383
384
385
386
387
388
389
390
392
393#ifdef HAVE_RATGRING
395#endif
396
397
398#define pEqualPolys(p1,p2) p_EqualPolys(p1,p2,currRing)
399
400
401
402
403
405static inline poly
pLast(poly a) {
int l;
return pLast(a,
l); }
406
407
408
409
410
411
412#ifdef PDEBUG
413#define pTest(p) _p_Test(p, currRing, PDEBUG)
414#define pLmTest(p) _p_LmTest(p, currRing, PDEBUG)
415
416#else
417
418#define pTest(p) do {} while (0)
419#define pLmTest(p) do {} while (0)
420#endif
421
422#endif
int comp(const CanonicalForm &A, const CanonicalForm &B)
compare polynomials
static BOOLEAN length(leftv result, leftv arg)
void p_TakeOutComp(poly *p, long comp, poly *q, int *lq, const ring r)
int lcm(unsigned long *l, unsigned long *a, unsigned long *b, unsigned long p, int dega, int degb)
void p_Norm(poly p1, const ring r)
poly p_Last(const poly p, int &l, const ring r)
char * p_String(poly p, ring lmRing, ring tailRing)
void p_String0(poly p, ring lmRing, ring tailRing)
print p according to ShortOut in lmRing & tailRing
void p_Write(poly p, ring lmRing, ring tailRing)
void p_Write0(poly p, ring lmRing, ring tailRing)
static long p_Totaldegree(poly p, const ring r)
void p_wrp(poly p, ring lmRing, ring tailRing)
void pSetPolyComp(poly p, int comp)
BOOLEAN pCompareChain(poly p, poly p1, poly p2, poly lcm, const ring R=currRing)
Returns TRUE if.
BOOLEAN pIsHomogeneous(poly p)
BOOLEAN pCompareChainPart(poly p, poly p1, poly p2, poly lcm, const ring R=currRing)
static poly pLast(poly a, int &length)
returns the length of a polynomial (numbers of monomials) respect syzComp
void pTakeOutComp(poly *p, long comp, poly *q, int *lq, const ring R=currRing)
Splits *p into two polys: *q which consists of all monoms with component == comp and *p of all other ...