/**/ M := MakeTermOrdMat(matrix([[5,5,5,1,1], [1,1,1,0,0]]));
/**/ P := NewPolyRing(QQ, "t[1],t[2],t[3],x,y", M, 2); -- ZZ^2-grading
/**/ use P;
/**/ I := ideal(t[1]^6 -t[3]^6, t[2]^6 -t[1]^5*t[3], t[1]*t[3]*x^8 -t[2]^2*y^8);
/**/ RES := res(P/I);
/**/ PrintRes(RES);
0 --> R[-78,-14] --> R[-48,-8]^2(+)R[-60,-12] --> R[-18,-2](+)R[-30,-6]^2 --> R
/**/ PrintBettiNumbers(RES); --> just prints in a readable way
-- Betti 0 -----------
-- Betti 1 -----------
[18, 2]: 1
[30, 6]: 2
-- Betti 2 -----------
[48, 8]: 2
[60, 12]: 1
-- Betti 3 -----------
[78, 14]: 1
----------------------
/**/ BettiNumbers(RES); --> returns the value for further computations
[[], [[[18, 2], 1], [[30, 6], 2]], [[[48, 8], 2],
[[60, 12], 1]], [[[78, 14], 1]]]
|