| LIB "homolog.lib";
int p = printlevel;
ring rr = 32003,(x,y,z),(dp,C);
ideal I = x4+y3+z2;
qring o = std(I);
module M = [x,y,0,z],[y2,-x3,z,0],[z,0,-y,-x3],[0,z,x,-y2];
print(cupproduct(M,M,M,1,3));
→ 0,1,0, 0, 0,0,0,0,0,0,0, 0,0,0,0,0,0,
→ 0,0,-1,0, 0,1,0,0,0,0,0, 0,0,0,0,0,0,
→ 0,0,0, -1,0,0,0,0,0,1,0, 0,0,0,0,0,0,
→ 0,0,0, 0, 1,0,0,1,0,0,-1,0,0,1,0,0,0
printlevel = 3;
list l = (cupproduct(M,M,M,1,3,"any"));
→ // vdim Ext(M,N) = 4
→ // kbase of Ext^p(M,N)
→ // - the columns present the kbase elements in Hom(F(p),G(0))
→ // - F(*),G(*) are free resolutions of M and N
→ 0, 0, 1, 0,
→ 0, y, 0, 0,
→ 1, 0, 0, 0,
→ 0, 0, 0, y,
→ 0, -1,0, 0,
→ 0, 0, x2,0,
→ 0, 0, 0, -x2,
→ 1, 0, 0, 0,
→ 0, 0, 0, -1,
→ -1,0, 0, 0,
→ 0, 1, 0, 0,
→ 0, 0, 1, 0,
→ -1,0, 0, 0,
→ 0, 0, 0, x2y,
→ 0, 0, x2,0,
→ 0, -y,0, 0
→ // vdim Ext(N,P) = 4
→ // kbase of Ext(N,P):
→ 0, 0, 1, 0,
→ 0, 0, 0, y,
→ 1, 0, 0, 0,
→ 0, -y,0, 0,
→ 0, -1,0, 0,
→ 1, 0, 0, 0,
→ 0, 0, 0, -x2,
→ 0, 0, -x2,0,
→ 0, 0, 0, -1,
→ 0, 0, 1, 0,
→ 0, 1, 0, 0,
→ 1, 0, 0, 0,
→ -1,0, 0, 0,
→ 0, -y,0, 0,
→ 0, 0, x2, 0,
→ 0, 0, 0, -x2y
→ // kbase of Ext^q(N,P)
→ // - the columns present the kbase elements in Hom(G(q),H(0))
→ // - G(*),H(*) are free resolutions of N and P
→ 0, 0, 1, 0,
→ 0, 0, 0, y,
→ 1, 0, 0, 0,
→ 0, -y,0, 0,
→ 0, -1,0, 0,
→ 1, 0, 0, 0,
→ 0, 0, 0, -x2,
→ 0, 0, -x2,0,
→ 0, 0, 0, -1,
→ 0, 0, 1, 0,
→ 0, 1, 0, 0,
→ 1, 0, 0, 0,
→ -1,0, 0, 0,
→ 0, -y,0, 0,
→ 0, 0, x2, 0,
→ 0, 0, 0, -x2y
→ // vdim Ext(M,P) = 4
→ // kbase of Ext^p+q(M,P)
→ // - the columns present the kbase elements in Hom(F(p+q),H(0))
→ // - F(*),H(*) are free resolutions of M and P
→ 0, 0, 1, 0,
→ 0, 0, 0, y,
→ 1, 0, 0, 0,
→ 0, -y,0, 0,
→ 0, -1,0, 0,
→ 1, 0, 0, 0,
→ 0, 0, 0, -x2,
→ 0, 0, -x2,0,
→ 0, 0, 0, -1,
→ 0, 0, 1, 0,
→ 0, 1, 0, 0,
→ 1, 0, 0, 0,
→ -1,0, 0, 0,
→ 0, -y,0, 0,
→ 0, 0, x2, 0,
→ 0, 0, 0, -x2y
→ // lifting of kbase of Ext^p(M,N)
→ // - the columns present liftings of kbase elements in Hom(F(p+q),G(q))
→ 1,0, 0, 0,
→ 0,-y,0, 0,
→ 0,0, x2,0,
→ 0,0, 0, x2y,
→ 0,1, 0, 0,
→ 1,0, 0, 0,
→ 0,0, 0, -x2,
→ 0,0, x2,0,
→ 0,0, -1,0,
→ 0,0, 0, y,
→ 1,0, 0, 0,
→ 0,y, 0, 0,
→ 0,0, 0, -1,
→ 0,0, -1,0,
→ 0,-1,0, 0,
→ 1,0, 0, 0
→ // matrix of cup-products (in Ext^p+q)
→ 0,0, 0, -1, 0, 0, 0, 0, y, 1, 0, 0, 0, 0, y, 0, 0,
→ 0,0, 0, 0, y, 0, 0, y, 0, 0, -y, 0, 0, y, 0, 0, 0,
→ 0,1, 0, 0, 0, 0, y, 0, 0, 0, 0, x2, 0, 0, 0, 0, -x2y,
→ 0,0, y, 0, 0, -y,0, 0, 0, 0, 0, 0, x2y,0, 0, x2y,0,
→ 0,0, 1, 0, 0, -1,0, 0, 0, 0, 0, 0, x2, 0, 0, x2, 0,
→ 0,1, 0, 0, 0, 0, y, 0, 0, 0, 0, x2, 0, 0, 0, 0, -x2y,
→ 0,0, 0, 0, -x2, 0, 0, -x2, 0, 0, x2, 0, 0, -x2, 0, 0, 0,
→ 0,0, 0, x2, 0, 0, 0, 0, -x2y,-x2,0, 0, 0, 0, -x2y,0, 0,
→ 0,0, 0, 0, -1, 0, 0, -1, 0, 0, 1, 0, 0, -1, 0, 0, 0,
→ 0,0, 0, -1, 0, 0, 0, 0, y, 1, 0, 0, 0, 0, y, 0, 0,
→ 0,0, -1,0, 0, 1, 0, 0, 0, 0, 0, 0, -x2,0, 0, -x2,0,
→ 0,1, 0, 0, 0, 0, y, 0, 0, 0, 0, x2, 0, 0, 0, 0, -x2y,
→ 0,-1,0, 0, 0, 0, -y,0, 0, 0, 0, -x2,0, 0, 0, 0, x2y,
→ 0,0, y, 0, 0, -y,0, 0, 0, 0, 0, 0, x2y,0, 0, x2y,0,
→ 0,0, 0, -x2,0, 0, 0, 0, x2y, x2, 0, 0, 0, 0, x2y, 0, 0,
→ 0,0, 0, 0, -x2y,0, 0, -x2y,0, 0, x2y,0, 0, -x2y,0, 0, 0
→ ////// end level 2 //////
→ // the associated matrices of the bilinear mapping 'cup'
→ // corresponding to the kbase elements of Ext^p+q(M,P) are shown,
→ // i.e. the rows of the final matrix are written as matrix of
→ // a bilinear form on Ext^p x Ext^q
→ //----component 1:
→ 0,1,0,0,
→ 0,0,0,0,
→ 0,0,0,0,
→ 0,0,0,0
→ //----component 2:
→ 0,0,-1,0,
→ 0,1,0, 0,
→ 0,0,0, 0,
→ 0,0,0, 0
→ //----component 3:
→ 0,0,0,-1,
→ 0,0,0,0,
→ 0,1,0,0,
→ 0,0,0,0
→ //----component 4:
→ 0,0,0, 0,
→ 1,0,0, 1,
→ 0,0,-1,0,
→ 0,1,0, 0
→ ////// end level 3 //////
show(l[1]);show(l[2]);
→ // matrix, 4x17
→ 0,1,0, 0, 0,0,0,0,0,0,0, 0,0,0,0,0,0,
→ 0,0,-1,0, 0,1,0,0,0,0,0, 0,0,0,0,0,0,
→ 0,0,0, -1,0,0,0,0,0,1,0, 0,0,0,0,0,0,
→ 0,0,0, 0, 1,0,0,1,0,0,-1,0,0,1,0,0,0
→ // matrix, 16x4
→ 0, 0, 1, 0,
→ 0, y, 0, 0,
→ 1, 0, 0, 0,
→ 0, 0, 0, y,
→ 0, -1,0, 0,
→ 0, 0, x2,0,
→ 0, 0, 0, -x2,
→ 1, 0, 0, 0,
→ 0, 0, 0, -1,
→ -1,0, 0, 0,
→ 0, 1, 0, 0,
→ 0, 0, 1, 0,
→ -1,0, 0, 0,
→ 0, 0, 0, x2y,
→ 0, 0, x2,0,
→ 0, -y,0, 0
printlevel = p;
|