31 #define pSetCoeff(p,n) p_SetCoeff(p,n,currRing) 34 #define pGetOrder(p) p_GetOrder(p, currRing) 37 #define pGetComp(p) (int)__p_GetComp(p, currRing) 38 #define pSetComp(p,v) p_SetComp(p,v, currRing) 41 #define pGetExp(p,i) p_GetExp(p, i, currRing) 42 #define pSetExp(p,i,v) p_SetExp(p, i, v, currRing) 43 #define pIncrExp(p,i) p_IncrExp(p,i, currRing) 44 #define pDecrExp(p,i) p_DecrExp(p,i, currRing) 45 #define pAddExp(p,i,v) p_AddExp(p,i,v, currRing) 46 #define pSubExp(p,i,v) p_SubExp(p,i,v, currRing) 47 #define pMultExp(p,i,v) p_MultExp(p,i,v, currRing) 48 #define pGetExpSum(p1, p2, i) p_GetExpSum(p1, p2, i, currRing) 49 #define pGetExpDiff(p1, p2, i) p_GetExpDiff(p1, p2, i, currRing) 59 #define pNew() p_New(currRing) 61 #define pInit() p_Init(currRing,currRing->PolyBin) 64 #define pLmInit(p) p_LmInit(p, currRing) 67 #define pHead(p) p_Head(p, currRing) 74 #define pLmFreeAndNext(p) p_LmFreeAndNext(p, currRing) 76 #define pLmDelete(p) p_LmDelete(p, currRing) 78 #define pLmDeleteAndNext(p) p_LmDeleteAndNext(p, currRing) 86 #define pExpVectorCopy(d_p, s_p) p_ExpVectorCopy(d_p, s_p, currRing) 87 #define pExpVectorAdd(p1, p2) p_ExpVectorAdd(p1, p2, currRing) 88 #define pExpVectorSub(p1, p2) p_ExpVectorSub(p1, p2, currRing) 89 #define pExpVectorAddSub(p1, p2, p3) p_ExpVectorAddSub(p1, p2, p3, currRing) 90 #define pExpVectorSum(pr, p1, p2) p_ExpVectorSum(pr, p1, p2, currRing) 91 #define pExpVectorDiff(pr, p1, p2) p_ExpVectorDiff(pr, p1, p2, currRing) 96 #define pGetExpV(p, e) p_GetExpV(p, e, currRing) 97 #define pSetExpV(p, e) p_SetExpV(p, e, currRing) 105 #define pLmCmp(p,q) p_LmCmp(p,q,currRing) 108 #define pLmCmpAction(p,q, actionE, actionG, actionS) \ 109 _p_LmCmpAction(p,q,currRing, actionE, actionG,actionS) 111 #define pLmEqual(p1, p2) p_ExpVectorEqual(p1, p2, currRing) 115 #define pCmp(p1, p2) p_Cmp(p1, p2, currRing) 123 #define pLtCmp(p,q) p_LtCmp(p,q,currRing) 124 #define pLtCmpNoAbs(p,q) p_LtCmpNoAbs(p,q,currRing) 125 #define pLtCmpOrdSgnDiffM(p,q) p_LtCmpOrdSgnDiffM(p,q,currRing) 126 #define pLtCmpOrdSgnDiffP(p,q) p_LtCmpOrdSgnDiffP(p,q,currRing) 127 #define pLtCmpOrdSgnEqM(p,q) p_LtCmpOrdSgnEqM(p,q,currRing) 128 #define pLtCmpOrdSgnEqP(p,q) p_LtCmpOrdSgnEqP(p,q,currRing) 138 #define pDivisibleBy(a, b) p_DivisibleBy(a,b,currRing) 140 #define pLmDivisibleBy(a,b) p_LmDivisibleBy(a,b,currRing) 142 #define pLmDivisibleByNoComp(a, b) p_LmDivisibleByNoComp(a,b,currRing) 146 #define pLmShortDivisibleBy(a, sev_a, b, not_sev_b) \ 147 p_LmShortDivisibleBy(a, sev_a, b, not_sev_b, currRing) 148 #define pLmRingShortDivisibleBy(a, sev_a, b, not_sev_b) \ 149 p_LmRingShortDivisibleBy(a, sev_a, b, not_sev_b, currRing) 152 #define pGetShortExpVector(a) p_GetShortExpVector(a, currRing) 159 #define pDivisibleByRingCase(f,g) p_DivisibleByRingCase(f,g,currRing) 165 poly
p_Divide(poly a, poly
b,
const ring r);
172 #define pCopy(p) p_Copy(p, currRing) 173 #define pDelete(p_ptr) p_Delete(p_ptr, currRing) 185 #define pNeg(p) p_Neg(p, currRing) 186 #define ppMult_nn(p, n) pp_Mult_nn(p, n, currRing) 187 #define pMult_nn(p, n) p_Mult_nn(p, n, currRing) 188 #define ppMult_mm(p, m) pp_Mult_mm(p, m, currRing) 189 #define pMult_mm(p, m) p_Mult_mm(p, m, currRing) 190 #define pAdd(p, q) p_Add_q(p, q, currRing) 191 #define pPower(p, q) p_Power(p, q, currRing) 192 #define pMinus_mm_Mult_qq(p, m, q) p_Minus_mm_Mult_qq(p, m, q, currRing) 193 #define pPlus_mm_Mult_qq(p, m, q) p_Plus_mm_Mult_qq(p, m, q, currRing) 194 #define pMult(p, q) p_Mult_q(p, q, currRing) 195 #define ppMult_qq(p, q) pp_Mult_qq(p, q, currRing) 197 #define ppMult_Coeff_mm_DivSelect(p, m) pp_Mult_Coeff_mm_DivSelect(p, m, currRing) 204 #define pSortMerger(p) p_SortMerge(p, currRing) 205 #define pSort(p) p_SortMerge(p, currRing) 208 #define pSortAdd(p) p_SortAdd(p, currRing) 214 #define pSortCompCorrect(p) pSort(p) 223 #define pIsConstantComp(p) p_IsConstantComp(p, currRing) 225 #define pIsConstant(p) p_IsConstant(p,currRing) 227 #define pIsUnit(p) p_IsUnit(p,currRing) 229 #define pLmIsConstantComp(p) p_LmIsConstantComp(p, currRing) 230 #define pLmIsConstant(p) p_LmIsConstant(p,currRing) 233 #define pIsConstantPoly(p) p_IsConstantPoly(p, currRing) 235 #define pIsPurePower(p) p_IsPurePower(p, currRing) 236 #define pIsUnivariate(p) p_IsUnivariate(p, currRing) 237 #define pIsVector(p) (pGetComp(p)>0) 238 #define pGetVariables(p,e) p_GetVariables(p, e, currRing) 249 #define pHasNotCF(p1,p2) p_HasNotCF(p1,p2,currRing) 251 #define pSplit(p,r) p_Split(p,r) 257 #define pSetm(p) p_Setm(p, currRing) 259 #define pSetmComp(p) p_Setm(p, currRing) 266 #define pWeight(i) p_Weight(i,currRing) 269 #define pWTotaldegree(p) p_WTotaldegree(p,currRing) 270 #define pWDegree(p) p_WDegree(p,currRing) 273 #define pSub(a,b) p_Sub(a,b,currRing) 275 #define pmInit(a,b) p_mInit(a,b,currRing) 279 #define pMDivide(a,b) p_MDivide(a,b,currRing) 280 #define pDivideM(a,b) p_DivideM(a,b,currRing) 281 #define pLcm(a,b,m) p_Lcm(a,b,m,currRing) 282 #define pDiff(a,b) p_Diff(a,b,currRing) 283 #define pDiffOp(a,b,m) p_DiffOp(a,b,m,currRing) 285 #define pMaxComp(p) p_MaxComp(p, currRing) 286 #define pMinComp(p) p_MinComp(p, currRing) 288 #define pOneComp(p) p_OneComp(p, currRing) 289 #define pSetCompP(a,i) p_SetCompP(a, i, currRing) 298 #define pISet(i) p_ISet(i,currRing) 299 #define pNSet(n) p_NSet(n,currRing) 301 #define pOne() p_One(currRing) 303 #define pNormalize(p) p_Normalize(p,currRing) 304 #define pSize(p) p_Size(p,currRing) 308 #define pHomogen(p,varnum) p_Homogen(p,varnum,currRing) 315 #define pIsHomogen(p) p_IsHomogen(p,currRing) 318 #define pVectorHasUnitB(p,k) p_VectorHasUnitB(p,k,currRing) 319 #define pVectorHasUnit(p,k,l) p_VectorHasUnit(p,k,l,currRing) 320 #define pTakeOutComp1(p,k) p_TakeOutComp1(p,k,currRing) 347 #define pDeleteComp(p,k) p_DeleteComp(p,k,currRing) 352 #define pSubst(p,n,e) p_Subst(p,n,e,currRing) 353 #define ppJet(p,m) pp_Jet(p,m,currRing) 354 #define pJet(p,m) p_Jet(p,m,currRing) 355 #define ppJetW(p,m,iv) pp_JetW(p,m,iv,currRing) 356 #define pJetW(p,m,iv) p_JetW(p,m,iv,currRing) 357 #define pMinDeg(p,w) p_MinDeg(p,w,currRing) 358 #define pSeries(n,p,u,w) p_Series(n,p,u,w,currRing) 363 #define pDegW(p,w) p_DegW(p,w,currRing) 367 #define pVar(m) p_Var(m,currRing) 386 #define pEqualPolys(p1,p2) p_EqualPolys(p1,p2,currRing) 401 #define pTest(p) _p_Test(p, currRing, PDEBUG) 402 #define pLmTest(p) _p_LmTest(p, currRing, PDEBUG) 406 #define pTest(p) do {} while (0) 407 #define pLmTest(p) do {} while (0) static poly pLast(poly a, int &length)
returns the length of a polynomial (numbers of monomials) respect syzComp
int lcm(unsigned long *l, unsigned long *a, unsigned long *b, unsigned long p, int dega, int degb)
char * p_String(poly p, ring lmRing, ring tailRing)
void p_TakeOutComp(poly *p, long comp, poly *q, int *lq, const ring r)
BOOLEAN pIsHomogeneous(poly p)
static long p_Totaldegree(poly p, const ring r)
void p_Norm(poly p1, const ring r)
static void p_LmFree(poly p, ring)
poly p_Divide(poly a, poly b, const ring r)
polynomial division, ignoring the rest via singclap_pdiive resp. idLift destroyes a...
int comp(const CanonicalForm &A, const CanonicalForm &B)
compare polynomials
void rChangeCurrRing(ring r)
ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
static long pTotaldegree(poly p)
BOOLEAN pCompareChain(poly p, poly p1, poly p2, poly lcm, const ring R=currRing)
Returns TRUE if.
void p_Write0(poly p, ring lmRing, ring tailRing)
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 ...
poly p_Last(const poly p, int &l, const ring r)
void pNorm(poly p, const ring R=currRing)
static BOOLEAN length(leftv result, leftv arg)
static void pLmFree(poly p)
frees the space of the monomial m, assumes m != NULL coef is not freed, m is not advanced ...
void p_wrp(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)
BOOLEAN pCompareChainPart(poly p, poly p1, poly p2, poly lcm, const ring R=currRing)
void pSetPolyComp(poly p, int comp)