| LIB "poly.lib";
ring r;
ideal i=x;
module M=[x,0,1],[-x,0,-1];
freerank(M); // should be 2, coker(M) is not free
→ 2
freerank(syz (M),"");
→ [1]:
→ 1
→ [2]:
→ _[1]=gen(2)+gen(1)
// [1] should be 1, coker(syz(M))=M is free of rank 1
// [2] should be gen(2)+gen(1) (minimal relation of M)
freerank(i);
→ -1
freerank(syz(i)); // should be 1, coker(syz(i))=i is free of rank 1
→ 1
|