# HH^ZZ(NormalToricVariety,CoherentSheaf) -- compute the cohomology of a coherent sheaf

## Synopsis

• Function: cohomology
• Usage:
HH^i (X, F)
• Inputs:
• Optional inputs:
• Degree (missing documentation) => ..., default value 0,
• Outputs:
• , the i-th cohomology group of F

## Description

The cohomology functor $HH^i (X,-)$ from the category of sheaves of abelian groups to the category of abelian groups is the right derived functor of the global sections functor.

As a simple example, we compute the dimensions of the cohomology groups for some line bundles on the projective plane.

 i1 : PP2 = toricProjectiveSpace 2; i2 : HH^0 (PP2, OO_PP2(1)) 3 o2 = QQ o2 : QQ-module, free i3 : matrix table (reverse toList (0..2), toList (-10..5), (i,j) -> rank HH^i (PP2, OO_PP2(j-i))) o3 = | 55 45 36 28 21 15 10 6 3 1 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 1 3 6 10 15 21 | 3 16 o3 : Matrix ZZ <--- ZZ

For a second example, we compute the dimensions of the cohomology groups for some line bundles on a Hirzebruch surface.

 i4 : FF2 = hirzebruchSurface 2; i5 : HH^0 (FF2, OO_FF2(1,1)) 6 o5 = QQ o5 : QQ-module, free i6 : matrix table (reverse toList (-7..7), toList (-7..7), (i,j) -> rank HH^0 (FF2, OO_FF2(j,i))) o6 = | 20 25 30 36 42 49 56 64 72 80 88 96 104 112 120 | | 12 16 20 25 30 36 42 49 56 63 70 77 84 91 98 | | 6 9 12 16 20 25 30 36 42 48 54 60 66 72 78 | | 2 4 6 9 12 16 20 25 30 35 40 45 50 55 60 | | 0 1 2 4 6 9 12 16 20 24 28 32 36 40 44 | | 0 0 0 1 2 4 6 9 12 15 18 21 24 27 30 | | 0 0 0 0 0 1 2 4 6 8 10 12 14 16 18 | | 0 0 0 0 0 0 0 1 2 3 4 5 6 7 8 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | 15 15 o6 : Matrix ZZ <--- ZZ i7 : matrix table (reverse toList (-7..7), toList (-7..7), (i,j) -> rank HH^1 (FF2, OO_FF2(j,i))) o7 = | 12 9 6 4 2 1 0 0 0 0 0 0 0 0 0 | | 12 9 6 4 2 1 0 0 0 0 0 0 0 0 0 | | 12 9 6 4 2 1 0 0 0 0 0 0 0 0 0 | | 12 9 6 4 2 1 0 0 0 0 0 0 0 0 0 | | 12 9 6 4 2 1 0 0 0 0 0 0 0 0 0 | | 12 9 6 4 2 1 0 0 0 0 0 0 0 0 0 | | 10 8 6 4 2 1 0 0 0 0 0 0 0 0 0 | | 6 5 4 3 2 1 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 | | 0 0 0 0 0 0 0 0 0 1 2 4 6 8 10 | | 0 0 0 0 0 0 0 0 0 1 2 4 6 9 12 | | 0 0 0 0 0 0 0 0 0 1 2 4 6 9 12 | | 0 0 0 0 0 0 0 0 0 1 2 4 6 9 12 | | 0 0 0 0 0 0 0 0 0 1 2 4 6 9 12 | 15 15 o7 : Matrix ZZ <--- ZZ i8 : matrix table (reverse toList (-7..7), toList (-7..7), (i,j) -> rank HH^2 (FF2, OO_FF2(j,i))) o8 = | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | | 8 7 6 5 4 3 2 1 0 0 0 0 0 0 0 | | 18 16 14 12 10 8 6 4 2 1 0 0 0 0 0 | | 30 27 24 21 18 15 12 9 6 4 2 1 0 0 0 | | 44 40 36 32 28 24 20 16 12 9 6 4 2 1 0 | | 60 55 50 45 40 35 30 25 20 16 12 9 6 4 2 | | 78 72 66 60 54 48 42 36 30 25 20 16 12 9 6 | 15 15 o8 : Matrix ZZ <--- ZZ

When F is free, the algorithm based on [Diane Maclagan and Gregory G. Smith, Multigraded Castelnuovo-Mumford regularity, J. Reine Angew. Math. 571 (2004), 179-212]. The general case uses the methods described in [David Eisenbud, Mircea Mustata, and Mike Stillman, Cohomology on toric varieties and local cohomology with monomial supports, J. Symbolic Comput. 29 (2000), 583-600].