Macaulay2 » Documentation
Packages » BGG :: cohomologyTable
next | previous | forward | backward | up | index | toc

cohomologyTable -- dimensions of cohomology groups

Synopsis

Description

This function takes as input a coherent sheaf F, two integers l and h, and prints the dimension dim HH^j F(i-j) for h>=i>=l. As a simple example, we compute the dimensions of cohomology groups of the projective plane.
i1 : S = ZZ/32003[x_0..x_2]; 
i2 : PP2 = Proj S; 
i3 : F =sheaf S^1

          1
o3 = OO
       PP2

o3 : coherent sheaf on PP2, free of rank 1
i4 : cohomologyTable(F,-10,5)

        -10 -9 -8 -7 -6 -5 -4 -3 -2 -1 0 1 2  3  4  5
o4 = 2:  55 45 36 28 21 15 10  6  3  1 . . .  .  .  .
     1:   .  .  .  .  .  .  .  .  .  . . . .  .  .  .
     0:   .  .  .  .  .  .  .  .  .  . 1 3 6 10 15 21

o4 : CohomologyTally
There is also a built-in sheaf cohomology function HH in Macaulay2. However, these algorithms are much slower than cohomologyTable.

Alternatively, this function takes as input a presentation matrix m of a finitely generated graded S-module Mand an exterior algebra Ewith the same number of variables. In this form, the function is equivalent to the function sheafCohomology in Sheaf Algorithms Using Exterior Algebra.
i5 : S = ZZ/32003[x_0..x_2]; 
i6 : E = ZZ/32003[e_0..e_2, SkewCommutative=>true];
i7 : m  = koszul (3, vars S); 

             3      1
o7 : Matrix S  <-- S
i8 : regularity coker m 

o8 = 2
i9 : betti tateResolution(m,E,-6,2)

             0 1 2 3 4 5  6  7  8  9 10
o9 = total: 15 8 3 1 3 8 15 24 35 48 63
        -4: 15 8 3 . . .  .  .  .  .  .
        -3:  . . . 1 . .  .  .  .  .  .
        -2:  . . . . 3 8 15 24 35 48 63

o9 : BettiTally
i10 : cohomologyTable(m,E,-6,2)

         -6 -5 -4 -3 -2 -1 0 1 2 3  4
o10 = 2: 63 48 35 24 15  8 3 . . .  .
      1:  .  .  .  .  .  . . 1 . .  .
      0:  .  .  .  .  .  . . . 3 8 15

o10 : CohomologyTally

As the third example, we compute the dimensions of cohomology groups of the structure sheaf of an irregular elliptic surface.
i11 : S = ZZ/32003[x_0..x_4]; 
i12 : X = Proj S; 
i13 : ff = res coker map(S^{1:0},S^{3:-1,2:-2},{{x_0..x_2,x_3^2,x_4^2}}); 
i14 : alpha = map(S^{1:-2},target ff.dd_3,{{1,4:0,x_0,2:0,x_1,0}})*ff.dd_3; 

              1      10
o14 : Matrix S  <-- S
i15 : beta = ff.dd_4//syz alpha; 

              18      5
o15 : Matrix S   <-- S
i16 : K = syz syz alpha|beta;

              18      21
o16 : Matrix S   <-- S
i17 : fK = res prune coker K;
i18 : s = random(target fK.dd_1,S^{1:-4,3:-5});

              13      4
o18 : Matrix S   <-- S
i19 : ftphi = res prune coker transpose (fK.dd_1|s);
i20 : I = ideal ftphi.dd_2;

o20 : Ideal of S
i21 : F = sheaf S^1/I; 
i22 : cohomologyTable(F,-2,6)

          -2 -1  0  1  2  3  4   5   6   7   8
o22 = 2: 123 75 39 15  3  .  .   .   .   .   .
      1:   .  .  .  1  2  1  .   .   .   .   .
      0:   .  .  1  5 16 39 75 123 183 255 339

o22 : CohomologyTally

See also

Ways to use cohomologyTable :

For the programmer

The object cohomologyTable is a method function.