Home Online Manual
Top
Back: Classification of hypersurface singularities
Forward: Invariant Theory
FastBack: Commutative Algebra
FastForward: G_a -Invariants
Up: Singularity Theory
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

A.4.9 Resolution of singularities

Resolution of singularities and applications thereof are provided by the libraries resolve.lib and reszeta.lib; graphical output may be generated automatically by using external programs surf and dot respectively to which a specialized interface is provided by the library resgraph.lib. In this example, the basic functionality of the resolution of singularities package is illustrated by the computation of the intersection matrix and genera of the exceptional curves on a surface obtained from resolving the A6 surface singularity. A separate tutorial, which introduces the complete functionality of the package and explains the rather complicated data structures appearing in intermediate results, can be found at http://www.singular.uni-kl.de/tutor_resol.ps.

 
LIB"resolve.lib";                   // load the resolution algorithm
LIB"reszeta.lib";                   // load its application algorithms

ring R=0,(x,y,z),dp;              // define the ring Q[x,y,z]
ideal I=x7+y2-z2;                 // an A6 surface singularity
list L=resolve(I);                // compute the resolution
list iD=intersectionDiv(L);       // compute intersection properties
iD;                               // show the output
==> [1]:
==>    -2,0,1,0,0,0,
==>    0,-2,0,1,0,0,
==>    1,0,-2,0,1,0,
==>    0,1,0,-2,0,1,
==>    0,0,1,0,-2,1,
==>    0,0,0,1,1,-2 
==> [2]:
==>    0,0,0,0,0,0
==> [3]:
==>    [1]:
==>       [1]:
==>          2,1,1
==>       [2]:
==>          4,1,1
==>    [2]:
==>       [1]:
==>          2,1,2
==>       [2]:
==>          4,1,2
==>    [3]:
==>       [1]:
==>          4,2,1
==>       [2]:
==>          6,2,1
==>    [4]:
==>       [1]:
==>          4,2,2
==>       [2]:
==>          6,2,2
==>    [5]:
==>       [1]:
==>          6,3,1
==>       [2]:
==>          7,3,1
==>    [6]:
==>       [1]:
==>          6,3,2
==>       [2]:
==>          7,3,2
==> [4]:
==>    1,1,1,1,1,1
// The output is a list whose first entry contains the intersection matrix
// of the exceptional divisors. The second entry is the list of genera
// of these divisors. The third and fourth entry contain the information
// how to find the corresponding divisors in the respective charts.