MCPcopy Create free account
hub / github.com/Singular/Singular / p_ExpVectorAdd

Function p_ExpVectorAdd

libpolys/polys/monomials/p_polys.h:1425–1437  ·  view source on GitHub ↗

* * Operation on ExpVectors * ***************************************************************/ ExpVector(p1) += ExpVector(p2)

Source from the content-addressed store, hash-verified

1423 ***************************************************************/
1424// ExpVector(p1) += ExpVector(p2)
1425static 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)
1439static inline void p_ExpVectorSum(poly pr, poly p1, poly p2, const ring r)
1440{

Callers 14

sm_ExpMultDivFunction · 0.85
sca_m_Mult_mmFunction · 0.85
sca_mm_Mult_mFunction · 0.85
p_MonMultFunction · 0.85
p_MonMultMBFunction · 0.85
sbaFunction · 0.85
initSLSbaFunction · 0.85
ksReducePolyZFunction · 0.85
ksReducePolyFunction · 0.85
ksReducePolyGCDFunction · 0.85
ksReducePolyLCFunction · 0.85
ksReducePolyBoundFunction · 0.85

Calls 2

p_GetExpFunction · 0.85
p_MemAdd_NegWeightAdjustFunction · 0.85

Tested by

no test coverage detected