previous up next
Go up to Top
Go forward to User manual


The problem of desingularization briefly is, given an algebraic variety X, find a proper, birational morphism f: Y -> X, such that Y is a nonsingular variety. Without going into the history deeply, we just mention that the existence of desingularization in arbitrary dimension, over fields of characteristic zero was first proved by Hironaka [Hir64]. His proof was non constructive, and it took till the end of the XX century to come up with constructive versions for hypersurfaces [Vil89][Vil96][EV00][EV98] and [BM91][BM97]. Here we do not intend to go into the details of the theory, we ask the reader to consult the papers in the reference list, in particular we recommend the papers [BS00a][BS00c][BS00b][BS01][Bod00] on our approach.

This software package is an implementation of Villamayor's algoroithm, having been optimized in several subparts. The program constructs embedded desingularizations for subschemes of smooth varieties in arbitrary dimension, over a computable algebraically closed, field of characteristic zero. The most essential operations required by the algorithm are performed with Gröbner basis computations [Buc65][Buc85][Win88][BW93]. The package can use either the Gröbner package Maple 8 or the Algolib package of F. Chyzak or the Gb package (which is an interface to the C++ implementation) of J. C. Faugere.

The desing package has several additional features implemented besides the main functionality. It can provide output for human experts to read, it can handle continuations of interrupted computations, etc.

From version 1.3 on, several additional routines are available to compute vector spaces of adjoints, compute the dual hypergraph of the resolution, unify the sequence of blowing ups of the resolution, etc.

To our best knowledge, there is no other existing computer program that performs desingularization in such a general case.

The software is under continuous development since 1998. It started in the Adjoints Project (FWF P12662) (1998-2000), and continued, supported by the project Proving and solving over the reals (FWF F1303) (2000-2002), and recently by the project xplicit Resolution and Related Methods in Algebraic Geometry and Number Theory (FWF P15551) (2002-).

Please send any feedback and bug report to

previous up next