/**/ use R ::= QQ[x,y,z];
/**/ indent(syz([x^2-y-1, y^3-z, x^2-y, y^3-z]));
SubmoduleRows(F, matrix(
[y^3 -z, 0, 0, -x^2 +y +1],
[0, 1, 0, -1],
[x^2 -y, 0, -x^2 +y +1, 0],
[0, 0, y^3 -z, -x^2 +y]
))
-------------------------------
/**/ L := [x^2, 0, 0, y];
/**/ I := ideal(L); -- 0 gens are removed
/**/ gens(I); --> [x^2, y]
/**/ syz(gens(I)); -- same as SyzOfGens(I);
submodule(FreeModule(..), [[y, -x^2]])
-- /**/ syz(L); --> !!! ERROR !!! as expected: 0 entries
-- for dealing with 0 entries we need to specify the FreeModule
/**/ F := NewFreeModule(R, 4);
/**/ indent(syz(F, L));
SubmoduleRows(F, matrix([
[0, 1, 0, 0],
[0, 0, 1, 0],
[y, 0, 0, -x^2]
]))
/**/ FwShifts := NewFreeModuleForSyz([x^2, x^100, 1, y]);
/**/ S := syz(FwShifts, L); indent(S); --> prints "F" for free module
SubmoduleRows(F, matrix([
[0, 1, 0, 0],
[0, 0, 1, 0],
[y, 0, 0, -x^2]
]))
/**/ [ wdeg(v) | v in gens(S) ];
[[100], [0], [3]]
ModuleOf(S); --> FreeModule(RingWithID(168, "QQ[x,y,z]"), 4)
-------------------------------
/**/ I := ideal(x^2-y*z, x*y-z^2, x*y*z);
/**/ indent(res(I));
-------------------------------
-- syz(I,i) for module in minimal resolution: NOT YET IMPLEMENTED
|