Toric Divisor Classes
Introduction
Toric divisor classes are equivalence classes of Weil divisors modulo linear equivalence.
Constructors
General constructors
ToricDivisorClass
— MethodToricDivisorClass(v::AbstractNormalToricVariety, coeffs::Vector{T}) where {T <: IntegerUnion}
Construct the toric divisor class associated to a list of integers which specify an element of the class group of the normal toric variety v
.
Examples
julia> P2 = projective_space(NormalToricVariety, 2)
A normal, non-affine, smooth, projective, gorenstein, fano, 2-dimensional toric variety without torusfactor
julia> tdc = ToricDivisorClass(P2, class_group(P2)([fmpz(1)]))
A divisor class on a normal toric variety
Addition, subtraction and scalar multiplication
Toric divisor classes can be added and subtracted via the usual +
and -
operators. Moreover, multiplication by scalars from the left is supported for scalars which are integers or of type fmpz
.
Special divisor classes
trivial_divisor_class
— Methodtrivial_divisor_class(v::AbstractNormalToricVariety)
Construct the trivial divisor class of a normal toric variety.
Examples
julia> v = projective_space(NormalToricVariety, 2)
A normal, non-affine, smooth, projective, gorenstein, fano, 2-dimensional toric variety without torusfactor
julia> trivial_divisor_class(v)
A divisor class on a normal toric variety
anticanonical_divisor_class
— Methodanticanonical_divisor_class(v::AbstractNormalToricVariety)
Construct the anticanonical divisor class of a normal toric variety.
Examples
julia> v = projective_space(NormalToricVariety, 2)
A normal, non-affine, smooth, projective, gorenstein, fano, 2-dimensional toric variety without torusfactor
julia> anticanonical_divisor_class(v)
A divisor class on a normal toric variety
canonical_divisor_class
— Methodcanonical_divisor_class(v::AbstractNormalToricVariety)
Construct the canonical divisor class of a normal toric variety.
Examples
julia> v = projective_space(NormalToricVariety, 2)
A normal, non-affine, smooth, projective, gorenstein, fano, 2-dimensional toric variety without torusfactor
julia> canonical_divisor_class(v)
A divisor class on a normal toric variety
Properties
Equality of toric divisor classes can be tested via ==
.
To check if a toric divisor class is trivial, one can invoke is_trivial
.
is_effective
— Methodis_effective(tdc::ToricDivisorClass)
Determines whether the toric divisor class tdc
is effective, that is if a toric divisor in this divisor class is linearly equivalent to an effective toric divisor.
Examples
julia> P2 = projective_space(NormalToricVariety,2)
A normal, non-affine, smooth, projective, gorenstein, fano, 2-dimensional toric variety without torusfactor
julia> tdc = ToricDivisorClass(P2, [1])
A divisor class on a normal toric variety
julia> is_effective(tdc)
true
julia> tdc2 = ToricDivisorClass(P2, [-1])
A divisor class on a normal toric variety
julia> is_effective(tdc2)
false
Attributes
divisor_class
— Methoddivisor_class(tdc::ToricDivisorClass)
Return the element of the class group corresponding to the toric divisor class tdc
.
Examples
julia> P2 = projective_space(NormalToricVariety, 2)
A normal, non-affine, smooth, projective, gorenstein, fano, 2-dimensional toric variety without torusfactor
julia> tdc = ToricDivisorClass(P2, class_group(P2)([1]))
A divisor class on a normal toric variety
julia> divisor_class(tdc)
Element of
GrpAb: Z
with components [1]
toric_variety
— Methodtoric_variety(tdc::ToricDivisorClass)
Return the toric variety on which the toric divisor class tdc
is defined.
Examples
julia> P2 = projective_space(NormalToricVariety, 2)
A normal, non-affine, smooth, projective, gorenstein, fano, 2-dimensional toric variety without torusfactor
julia> tdc = ToricDivisorClass(P2, class_group(P2)([1]))
A divisor class on a normal toric variety
julia> toric_variety(tdc)
A normal, non-affine, smooth, projective, gorenstein, fano, 2-dimensional toric variety without torusfactor
toric_divisor
— Methodtoric_divisor(tdc::ToricDivisorClass)
Constructs a toric divisor corresponding to the toric divisor class tdc
.
Examples
julia> P2 = projective_space(NormalToricVariety, 2)
A normal, non-affine, smooth, projective, gorenstein, fano, 2-dimensional toric variety without torusfactor
julia> tdc = ToricDivisorClass(P2, class_group(P2)([1]))
A divisor class on a normal toric variety
julia> toric_divisor(tdc)
A torus-invariant, prime divisor on a normal toric variety