Line bundle cohomology with cohomCalg
We employ the cohomCalg algorithm (2010) to compute the dimension of line bundle cohomologies as well as vanishing sets.
Dimensions of line bundle cohomology
all_cohomologies — Methodall_cohomologies(l::ToricLineBundle)Computes the dimension of all sheaf cohomologies of the toric line bundle l by use of the cohomCalg algorithm Ralph Blumenhagen, Benjamin Jurke, Thorsten Rahn, Helmut Roschy (2010), [cohomCalg:Implementation(@cite), Helmut Roschy, Thorsten Rahn (2010), Shin-Yao Jow (2011), Ralph Blumenhagen, Benjamin Jurke, Thorsten Rahn, Helmut Roschy (2012).
Examples
julia> dP3 = del_pezzo(3)
A normal, non-affine, smooth, projective, gorenstein, fano, 2-dimensional toric variety without torusfactor
julia> all_cohomologies(ToricLineBundle(dP3, [1,2,3,4]))
3-element Vector{fmpz}:
0
16
0cohomology — Methodcohomology(l::ToricLineBundle, i::Int)Computes the dimension of the i-th sheaf cohomology of the toric line bundle l by use of the cohomCalg algorithm Ralph Blumenhagen, Benjamin Jurke, Thorsten Rahn, Helmut Roschy (2010), [cohomCalg:Implementation(@cite), Helmut Roschy, Thorsten Rahn (2010), Shin-Yao Jow (2011), Ralph Blumenhagen, Benjamin Jurke, Thorsten Rahn, Helmut Roschy (2012).
Examples
julia> dP3 = del_pezzo(3)
A normal, non-affine, smooth, projective, gorenstein, fano, 2-dimensional toric variety without torusfactor
julia> cohomology(ToricLineBundle(dP3, [4,1,1,1]), 0)
12Toric vanishing sets
Vanishing sets describe subsets of the Picard group of toric varieties. Their computations is based on (2010), i.e. this functionality is only available if the toric variety in question is either smooth and complete or alternatively, simplicial and projective. This approach to identify vanishing sets on toric varieties was originally introduced in Martin Bies (2018). As described there, on a technical level, a vanishing set is the complement of a finite family of polyhedra.
For a given toric variety tvs, the vanishing sets are computed as follows:
vanishing_sets — Methodvanishing_sets(variety::AbstractNormalToricVariety)Compute the vanishing sets of an abstract toric variety v by use of the cohomCalg algorithm.
The return value is a vector of vanishing sets. This vector has length dim(variety) + 1. The first vanishing set in this vector describes all line bundles for which the zero-th cohomology class vanishes. More generally, if a line bundle is contained in the k-th vanishing set, then its k-1th cohomology class vanishes. The following method can be used to check if a line bundle l is contained in a vanishing sets: toric vanishing set:
contains — Methodcontains(tvs::ToricVanishingSet, l::ToricLineBundle)Checks if the toric line bundle l is contained in the toric vanishing set tvs.
Examples
julia> dP1 = del_pezzo(1)
A normal, non-affine, smooth, projective, gorenstein, fano, 2-dimensional toric variety without torusfactor
julia> l = ToricLineBundle(dP1, [3,2])
A toric line bundle on a normal toric variety
julia> all_cohomologies(l)
3-element Vector{fmpz}:
7
0
0
julia> vs = vanishing_sets(dP1)
3-element Vector{ToricVanishingSet}:
A toric vanishing set for cohomology index 0
A toric vanishing set for cohomology index 1
A toric vanishing set for cohomology index 2
julia> contains(vs[1], l)
false
julia> contains(vs[2], l)
true
julia> contains(vs[3], l)
trueFor each vanishing set, tvs we support the property isfull(tvs). It returns true if the vanishing set covers the entire Picard group. of the toric variety in question. Otherwise, it returns false.
In addition, we support the following attributes:
toric_variety — Methodtoric_variety(tvs::ToricVanishingSet)Return the toric variety of the vanishing set tvs.
Examples
julia> dP1 = del_pezzo(1)
A normal, non-affine, smooth, projective, gorenstein, fano, 2-dimensional toric variety without torusfactor
julia> vs = vanishing_sets(dP1)
3-element Vector{ToricVanishingSet}:
A toric vanishing set for cohomology index 0
A toric vanishing set for cohomology index 1
A toric vanishing set for cohomology index 2
julia> toric_variety(vs[3])
A normal, non-affine, smooth, projective, gorenstein, fano, 2-dimensional toric variety without torusfactorpolyhedra — Methodpolyhedra(tvs::ToricVanishingSet)Return the vector of the polyhedra whose complement defines the vanishing set tvs.
Examples
```jldoctest julia> dP1 = del_pezzo(1) A normal, non-affine, smooth, projective, gorenstein, fano, 2-dimensional toric variety without torusfactor
julia> vs = vanishing_sets(dP1) 3-element Vector{ToricVanishingSet}: A toric vanishing set for cohomology index 0 A toric vanishing set for cohomology index 1 A toric vanishing set for cohomology index 2
julia> polyhedra(vs[3]) 1-element Vector{Polyhedra{fmpq}}: A polyhedron in ambient dimension 2
cohomology_index — Methodcohomology_index(tvs::ToricVanishingSet)Return the cohomology index of the toric vanishing set tvs.
Examples
julia> dP1 = del_pezzo(1)
A normal, non-affine, smooth, projective, gorenstein, fano, 2-dimensional toric variety without torusfactor
julia> vs = vanishing_sets(dP1)
3-element Vector{ToricVanishingSet}:
A toric vanishing set for cohomology index 0
A toric vanishing set for cohomology index 1
A toric vanishing set for cohomology index 2
julia> cohomology_index(vs[3])
2