|
D.2.12.6 SSsyz
Procedure from library schreyer.lib (see schreyer_lib).
- Usage:
- SSsyz(M)
- Return:
- ring, containing a list of modules RES and a module MRES
- Purpose:
- computes the first syzygy module of M (wrt some Schreyer ordering)?
- Note:
- The output is explained in Sres
Example:
| LIB "schreyer.lib";
ring r;
/* ideal M = 0;
def S = SSsyz(M); setring S; S;
"Only the first syzygy: ";
RES; LRES; TRES;
MRES;
kill S; setring r; kill M;
*/
ideal M = maxideal(1); M;
==> M[1]=x
==> M[2]=y
==> M[3]=z
def S = SSres(M, 0); setring S; S;
==> // characteristic : 32003
==> // number of vars : 3
==> // block 1 : ordering dp
==> // : names x y z
==> // block 2 : ordering C
MRES;
==> MRES[1]=0
==> MRES[2]=x*gen(1)
==> MRES[3]=y*gen(1)
==> MRES[4]=z*gen(1)
==> MRES[5]=x*gen(3)-y*gen(2)
==> MRES[6]=x*gen(4)-z*gen(2)
==> MRES[7]=y*gen(4)-z*gen(3)
==> MRES[8]=x*gen(7)-y*gen(6)+z*gen(5)
==> MRES[9]=0
print(_);
==> 0,x,y,z,0, 0, 0, 0, 0,
==> 0,0,0,0,-y,-z,0, 0, 0,
==> 0,0,0,0,x, 0, -z,0, 0,
==> 0,0,0,0,0, x, y, 0, 0,
==> 0,0,0,0,0, 0, 0, z, 0,
==> 0,0,0,0,0, 0, 0, -y,0,
==> 0,0,0,0,0, 0, 0, x, 0,
==> 0,0,0,0,0, 0, 0, 0, 0
RES;
==> [1]:
==> _[1]=0
==> [2]:
==> _[1]=x
==> _[2]=y
==> _[3]=z
==> [3]:
==> _[1]=x*gen(3)-y*gen(2)
==> _[2]=x*gen(4)-z*gen(2)
==> _[3]=y*gen(4)-z*gen(3)
==> [4]:
==> _[1]=x*gen(7)-y*gen(6)+z*gen(5)
==> [5]:
==> _[1]=0
kill S; setring r; kill M;
kill r;
ring R = 0, (w, x, y, z), dp;
ideal M = w^2 - x*z, w*x - y*z, x^2 - w*y, x*y - z^2, y^2 - w*z;
def S = SSres(M, 0); setring S; S;
==> // characteristic : 0
==> // number of vars : 4
==> // block 1 : ordering dp
==> // : names w x y z
==> // block 2 : ordering C
"";
==>
LRES;
==> [1]:
==> _[1]=0
==> [2]:
==> _[1]=w2
==> _[2]=wx
==> _[3]=x2
==> _[4]=xy
==> _[5]=y2
==> [3]:
==> _[1]=w*gen(3)
==> _[2]=w*gen(4)
==> _[3]=w*gen(5)
==> _[4]=x*gen(5)
==> _[5]=x*gen(6)
==> _[6]=w2*gen(6)
==> [4]:
==> _[1]=w*gen(10)
==> _[2]=x*gen(12)
==> [5]:
==> _[1]=0
"";
==>
TRES;
==> [1]:
==> _[1]=0
==> [2]:
==> _[1]=-xz
==> _[2]=-yz
==> _[3]=-wy
==> _[4]=-z2
==> _[5]=-wz
==> [3]:
==> _[1]=-x*gen(2)-z*gen(4)
==> _[2]=-x*gen(3)+y*gen(2)
==> _[3]=-y*gen(3)-z*gen(6)
==> _[4]=-w*gen(6)-y*gen(4)-z*gen(2)
==> _[5]=-y*gen(5)+z*gen(3)
==> _[6]=-y2*gen(2)+wz*gen(2)-yz*gen(5)+z2*gen(3)
==> [4]:
==> _[1]=-x*gen(9)+y*gen(8)-z*gen(11)+gen(12)
==> _[2]=-w2*gen(11)-wy*gen(9)-y2*gen(7)+wz*gen(7)+yz*gen(10)+z2*gen(8)
==> [5]:
==> _[1]=0
"";
==>
MRES;
==> MRES[1]=0
==> MRES[2]=w2*gen(1)-xz*gen(1)
==> MRES[3]=wx*gen(1)-yz*gen(1)
==> MRES[4]=x2*gen(1)-wy*gen(1)
==> MRES[5]=xy*gen(1)-z2*gen(1)
==> MRES[6]=y2*gen(1)-wz*gen(1)
==> MRES[7]=w*gen(3)-x*gen(2)-z*gen(4)
==> MRES[8]=w*gen(4)-x*gen(3)+y*gen(2)
==> MRES[9]=w*gen(5)-y*gen(3)-z*gen(6)
==> MRES[10]=-w*gen(6)+x*gen(5)-y*gen(4)-z*gen(2)
==> MRES[11]=x*gen(6)-y*gen(5)+z*gen(3)
==> MRES[12]=w2*gen(6)-y2*gen(2)+wz*gen(2)-yz*gen(5)+z2*gen(3)
==> MRES[13]=w*gen(10)-x*gen(9)+y*gen(8)-z*gen(11)+gen(12)
==> MRES[14]=-w2*gen(11)-wy*gen(9)-y2*gen(7)+wz*gen(7)+yz*gen(10)+z2*gen(8)+x\
*gen(12)
==> MRES[15]=0
print(_);
==> 0,w2-xz,wx-yz,x2-wy,xy-z2,y2-wz,0, 0, 0, 0, 0, 0, 0, 0, 0,
==> 0,0, 0, 0, 0, 0, -x,y, 0, -z,0, -y2+wz,0, 0, 0,
==> 0,0, 0, 0, 0, 0, w, -x,-y,0, z, z2, 0, 0, 0,
==> 0,0, 0, 0, 0, 0, -z,w, 0, -y,0, 0, 0, 0, 0,
==> 0,0, 0, 0, 0, 0, 0, 0, w, x, -y,-yz, 0, 0, 0,
==> 0,0, 0, 0, 0, 0, 0, 0, -z,-w,x, w2, 0, 0, 0,
==> 0,0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -y2+wz,0,
==> 0,0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, y, z2, 0,
==> 0,0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -x,-wy, 0,
==> 0,0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, w, yz, 0,
==> 0,0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -z,-w2, 0,
==> 0,0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, x, 0,
==> 0,0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
RES;
==> [1]:
==> _[1]=0
==> [2]:
==> _[1]=w2-xz
==> _[2]=wx-yz
==> _[3]=x2-wy
==> _[4]=xy-z2
==> _[5]=y2-wz
==> [3]:
==> _[1]=w*gen(3)-x*gen(2)-z*gen(4)
==> _[2]=w*gen(4)-x*gen(3)+y*gen(2)
==> _[3]=w*gen(5)-y*gen(3)-z*gen(6)
==> _[4]=-w*gen(6)+x*gen(5)-y*gen(4)-z*gen(2)
==> _[5]=x*gen(6)-y*gen(5)+z*gen(3)
==> _[6]=w2*gen(6)-y2*gen(2)+wz*gen(2)-yz*gen(5)+z2*gen(3)
==> [4]:
==> _[1]=w*gen(10)-x*gen(9)+y*gen(8)-z*gen(11)+gen(12)
==> _[2]=-w2*gen(11)-wy*gen(9)-y2*gen(7)+wz*gen(7)+yz*gen(10)+z2*gen(8)+x*\
gen(12)
==> [5]:
==> _[1]=0
|
|