* * Operation on ExpVectors * ***************************************************************/ ExpVector(p1) += ExpVector(p2)
| 1423 | ***************************************************************/ |
| 1424 | // ExpVector(p1) += ExpVector(p2) |
| 1425 | static inline void p_ExpVectorAdd(poly p1, poly p2, const ring r) |
| 1426 | { |
| 1427 | p_LmCheckPolyRing1(p1, r); |
| 1428 | p_LmCheckPolyRing1(p2, r); |
| 1429 | #if PDEBUG >= 1 |
| 1430 | for (int i=1; i<=r->N; i++) |
| 1431 | pAssume1((unsigned long) (p_GetExp(p1, i, r) + p_GetExp(p2, i, r)) <= r->bitmask); |
| 1432 | pAssume1(p_GetComp(p1, r) == 0 || p_GetComp(p2, r) == 0); |
| 1433 | #endif |
| 1434 | |
| 1435 | p_MemAdd_LengthGeneral(p1->exp, p2->exp, r->ExpL_Size); |
| 1436 | p_MemAdd_NegWeightAdjust(p1, r); |
| 1437 | } |
| 1438 | // ExpVector(pr) = ExpVector(p1) + ExpVector(p2) |
| 1439 | static inline void p_ExpVectorSum(poly pr, poly p1, poly p2, const ring r) |
| 1440 | { |
no test coverage detected