Via the Morse Graph we are able to compute a free resolution of a
polynomial ideal via the
JBMill if the polynomial ideal has some
special properties. The ideal must be in delta-regular coordinates
(i.e. it has a Pommaret basis) and the ordering must be
degrevlex. If these conditions hold we can compute a free
resolution and, if the ideal is homogeneous, the minimal free resolution
and the graded Betti numbers of the ideal.
In the following let
degrevlex order. Furthermore we assume that
JBIsPommaretBasis(mill) == true.
The following command computes a free resolution as
JBResolution(mill)Now we assume that
millcontains a homogeneous ideal
JBMinimalResolution(mill)-- Returns the minimal free resolution of
JBBettiDiagramm(mill)-- Returns a matrix of
ZZ, which represents the graded Betti numbers in Macaulay-Style
We only explain the basic structure because there is very much code. The implementation is divided in four parts:
Here we define the MorseElements and the StandardRepresentationContainer. The MorseGraph consists of MorseElements. The StandardRepresentationContainer stores standard representations, to avoid redundant computations.
MorsePaths are maps between MorseElements.
Stores and computes the MorseGraph. Also there are some easy interfaces to access the resolution. It still waits for a general free resolution object in CoCoALib.
Takes a free resolution of an homogeneous ideal an computes the minimal free resolutions. But only works for free resolution which have already the correct length.
Implementing a own specialized myAddRowMul function (skipping zeros...).
Waiting for general free resolution object.