The keys of this hash table are the divisor classes (degrees) whose cohomology vector has already been computed. The value of the hash table for this key is a list of two things: the cohomology vector, and a list representing the denominators which appear for this degree.
i1 : needsPackage "ReflexivePolytopesDB" o1 = ReflexivePolytopesDB o1 : Package |
i2 : topes = kreuzerSkarke(5, Limit => 20); using offline data file: ks5-n50.txt |
i3 : A = matrix topes_15
o3 = | 1 1 0 1 -1 -2 1 |
| 0 2 0 0 -4 0 6 |
| 0 0 1 0 2 -1 -4 |
| 0 0 0 2 -2 0 0 |
4 7
o3 : Matrix ZZ <--- ZZ
|
i4 : P = convexHull A o4 = P o4 : Polyhedron |
i5 : X = normalToricVariety P o5 = X o5 : NormalToricVariety |
i6 : H = cohomCalg X
o6 = MutableHashTable{}
o6 : MutableHashTable
|
Notice that the hash table H is empty, as we haven't tried computing any cohomology vectors yet.
i7 : cohomCalg(X, {-4, 10, -9})
cohomCalg v0.32
(compiled for Linux/Unix x86-64 / 64 bit)
author: Benjamin Jurke (mail@benjaminjurke.com)
Based on the algorithm detailed in arXiv:1003.5217
Usage and generation of intermediate monomial files deactivated.
Starting computation of secondary sequences...
0.00% completed (1 sec remaining)...
Computation of secondary cohomologies and contributions complete.
Computing target cohomology 1 of 1 (0.0% done)...
7 6
1 0 0 4 -4 0
1 2 0 4 -2 -20
1 -2 -4 -4 -2 -64
1 1 0 0 0 0
1 0 1 0 0 29
1 0 0 1 0 0
1 0 1 0 2 0
7 6
1 0 0 4 4 0
1 -2 0 -4 -2 -26
1 2 -4 4 -2 -58
1 1 0 0 0 0
1 0 1 0 0 29
1 0 0 1 0 0
1 0 1 0 2 0
7 6
1 0 -4 -4 -4 0
1 -2 2 4 2 20
1 2 -2 -4 2 64
1 1 0 0 0 0
1 0 1 0 0 -32
1 0 0 1 0 0
1 0 1 0 2 0
7 6
1 0 -4 -4 -4 0
1 -2 -2 -4 -2 -24
1 2 2 4 -2 -64
1 1 0 0 0 0
1 0 1 0 0 -32
1 0 0 1 0 0
1 0 1 0 2 0
7 6
1 0 4 4 4 0
1 -2 -2 -4 -2 -26
1 2 2 4 -2 -58
1 1 0 0 0 0
1 0 1 0 0 -30
1 0 0 1 0 0
1 0 1 0 2 0
7 6
1 0 -4 -4 -4 0
1 2 2 4 2 22
1 -2 -2 -4 2 62
1 1 0 0 0 0
1 0 1 0 0 -32
1 0 0 1 0 0
1 0 1 0 2 0
7 6
1 0 -4 -4 -4 0
1 -2 -2 -4 -2 20
1 2 2 4 -2 52
1 1 0 0 0 0
1 0 1 0 0 26
1 0 0 1 0 0
1 0 1 0 2 0
7 6
1 0 -4 -4 -4 0
1 -2 2 4 2 -24
1 2 -2 -4 2 -52
1 1 0 0 0 0
1 0 1 0 0 26
1 0 0 1 0 0
1 0 1 0 2 0
7 6
1 0 -4 -4 -4 0
1 2 -2 -4 -2 22
1 -2 2 4 -2 50
1 1 0 0 0 0
1 0 1 0 0 26
1 0 0 1 0 0
1 0 1 0 2 0
7 6
1 0 0 4 4 0
1 -2 0 -4 -2 18
1 2 -4 4 -2 58
1 1 0 0 0 0
1 0 1 0 0 -29
1 0 0 1 0 0
1 0 1 0 2 0
7 6
1 0 0 -4 -4 0
1 -2 0 -4 -2 20
1 2 -4 4 -2 52
1 1 0 0 0 0
1 0 1 0 0 -27
1 0 0 1 0 0
1 0 1 0 2 0
7 6
1 0 -4 4 -4 0
1 -2 2 -4 2 -26
1 2 -2 4 2 -54
1 1 0 0 0 0
1 0 1 0 0 28
1 0 0 1 0 0
1 0 1 0 2 0
7 6
1 0 0 -4 4 0
1 -2 0 4 -2 20
1 2 -4 -4 -2 60
1 1 0 0 0 0
1 0 1 0 0 -31
1 0 0 1 0 0
1 0 1 0 2 0
7 6
1 0 0 4 -4 0
1 2 0 4 -2 24
1 -2 -4 -4 -2 52
1 1 0 0 0 0
1 0 1 0 0 -29
1 0 0 1 0 0
1 0 1 0 2 0
Computation of the target cohomology group dimensions complete.
All done. Program run successfully completed.
o7 = {0, 0, 0, 12960, 0}
o7 : List
|
i8 : for i from 0 to dim X list rank HH^i(X, OO_X(-4, 10, -9))
o8 = {0, 0, 0, 12960, 0}
o8 : List
|
i9 : peek cohomCalg X
o9 = MutableHashTable{{-4, 10, -9} => {{0, 0, 0, 12960, 0}, {{3, 1x0*x1*x2*x6}, {3, 1x0*x1*x2*x3*x6}, {3, 1x0*x1*x2*x4*x6}}}}
|