Singular

D.15.6 divisors_lib

Library:
divisors.lib
Purpose:
Divisors and P-Divisors

Authors:
Janko Boehm boehm@mathematik.uni-kl.de
Lars Kastner kastner@math.fu-berlin.de
Benjamin Lorenz blorenz@math.uni-frankfurt.de
Hans Schoenemann hannes@mathematik.uni-kl.de
Yue Ren ren@mathematik.uni-kl.de

Overview:
We implement a class divisor on an algebraic variety and methods for computing with them. Divisors are represented by tuples of ideals defining the positive and the negative part. In particular, we implement the group structure on divisors, computing global sections and testing linear equivalence.

In addition to this we provide a class formaldivisor which implements integer formal sums of divisors (not necessarily prime). A formal divisor can be evaluated to a divisor, and a divisor can be decomposed into a formal sum.

Finally we provide a class pdivisor which implements polyhedral formal sums of divisors (P-divisors) where the coefficients are assumed to be polyhedra with fixed tail cone. There is a function to evaluate a P-divisor on a vector in the dual of the tail cone. The result will be a formal divisor.

References:
For the class divisor we closely follow Macaulay2's tutorial on divisors.

Procedures:

 D.15.6.1 makeDivisor create a divisor D.15.6.2 divisorplus add two divisors D.15.6.3 multdivisor multiply a divisor by an interger D.15.6.4 negativedivisor compute the negative of the divisor D.15.6.5 normalForm normal form of a divisor D.15.6.6 isEqualDivisor test whether two divisors are equal D.15.6.7 globalSections compute the global sections of a divisor D.15.6.8 degreeDivisor degree of a divisor D.15.6.9 linearlyEquivalent test whether two divisors a linearly equivalent D.15.6.10 effective compute an effective divisor linearly equivalent to a divisor D.15.6.11 makeFormalDivisor make a formal integer sum of divisors D.15.6.12 evaluateFormalDivisor evalutate a formal sum of divisors to a divisor D.15.6.13 formaldivisorplus add two formal divisors D.15.6.14 negativeformaldivisor compute the negative of the formal divisor D.15.6.15 multformaldivisor multiply a formal divisor by an interger D.15.6.16 degreeFormalDivisor degree of a formal divisor D.15.6.17 makePDivisor make a formal polyhedral sum of divisors D.15.6.18 evaluatePDivisor evaluate a polyhedral divisor to an integer formal divisor D.15.6.19 pdivisorplus add two polyhedral divisors