Home Online Manual
Top
Back: sufficientlyPositiveMultidegree
Forward: cohomologyMatrix
FastBack:
FastForward:
Up: tateProdCplxNegGrad_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.15.18.6 tateResolution

Procedure from library tateProdCplxNegGrad.lib (see tateProdCplxNegGrad_lib).

Usage:
tateResolution(M,low,high); M module, L list, low intvec, high intvec

Purpose:
compute tate resolution of coker(M) where M is Z^t-graded S-module

Assume:
M a module over multigraded ring S

Return:
(E,tate), tate a multigradedcomplex, E the ring in which tate has to be viewed, however note that tate is not ring dependent

Example:
 
LIB "tateProdCplxNegGrad.lib";
// example 1
intvec c1 = 1,1,1;
intvec low1 = 0,0,0;
intvec high1 = 0,1,0;
def (S1,E1) = productOfProjectiveSpaces(c1);
setring(S1);
module M1 = 0;
intmat grading1[3][1] = -1,-1,-1;
M1 = setModuleGrading(M1,grading1);
multigradedcomplex tate1;
(E1,tate1) = tateResolution(M1,low1,high1);
setring(E1);
tate1;
==> E^12  <--  E^20
==> -1         0
==> 
tate1.differentials;
==> [1]:
==>    _[1]=-e(0)(0)*gen(2)-e(0)(1)*gen(1)
==>    _[2]=-e(1)(0)*gen(3)-e(1)(1)*gen(1)
==>    _[3]=-e(1)(0)*gen(4)-e(1)(1)*gen(2)
==>    _[4]=-e(0)(0)*gen(4)-e(0)(1)*gen(3)
==>    _[5]=-e(1)(0)*gen(5)-e(1)(1)*gen(3)
==>    _[6]=-e(1)(0)*gen(6)-e(1)(1)*gen(4)
==>    _[7]=-e(0)(0)*gen(6)-e(0)(1)*gen(5)
==>    _[8]=-e(2)(0)*gen(7)-e(2)(1)*gen(1)
==>    _[9]=-e(2)(0)*gen(8)-e(2)(1)*gen(2)
==>    _[10]=-e(0)(0)*gen(8)-e(0)(1)*gen(7)
==>    _[11]=-e(2)(0)*gen(9)-e(2)(1)*gen(3)
==>    _[12]=-e(1)(0)*gen(9)-e(1)(1)*gen(7)
==>    _[13]=-e(2)(0)*gen(10)-e(2)(1)*gen(4)
==>    _[14]=-e(1)(0)*gen(10)-e(1)(1)*gen(8)
==>    _[15]=-e(0)(0)*gen(10)-e(0)(1)*gen(9)
==>    _[16]=-e(2)(0)*gen(11)-e(2)(1)*gen(5)
==>    _[17]=-e(1)(0)*gen(11)-e(1)(1)*gen(9)
==>    _[18]=-e(2)(0)*gen(12)-e(2)(1)*gen(6)
==>    _[19]=-e(1)(0)*gen(12)-e(1)(1)*gen(10)
==>    _[20]=-e(0)(0)*gen(12)-e(0)(1)*gen(11)
// example 2
intvec c2 = 1,2;
def (S2,E2) = productOfProjectiveSpaces(c2);
setring(S2);
intvec low2 = -3,-3;
intvec high2 = 0,0;
module M2 = x(0)(0),x(1)(0)^3 + x(1)(1)^3 +x(1)(2)^3;;
intmat grading2[2][1] = 0,0;
M2 = setModuleGrading(M2,grading2);
multigradedcomplex tate2;
(E2,tate2) = tateResolution(M2,low2,high2);
setring(E2);
tate2;
==> E^6  <--  E^10  <--  E^14  <--  E^20  <--  E^29  <--  E^41  <--  E^56  <-\
   -  E^74  <--  E^95
==> -2        -1         0          1          2          3          4       \
      5          6
==> 
// example 3
intvec c3 = 1,1;
def (S3,E3) = productOfProjectiveSpaces(c3);
intvec low3 = -3,-3;
intvec high3 = 3,3;
setring(S3);
module M3 = 0;
intmat grading3[2][1] = -1,-1;
M3 = setModuleGrading(M3,grading3);
multigradedcomplex tate3;
(E3,tate3) = tateResolution(M3,low3,high3);
setring(E3);
tate3;
==> E^25  <--  E^40  <--  E^46  <--  E^44  <--  E^35  <--  E^30  <--  E^38  <\
   --  E^56  <--  E^81  <--  E^110  <--  E^141  <--  E^174  <--  E^210
==> -6         -5         -4         -3         -2         -1         0      \
       1          2          3           4           5           6
==>