SEGRE: a script for the REDUCE package CALI
R. Achilles and D. Aliffi, Segre, a script for the REDUCE package CALI,Bologna, 1999-2017.
The algebraic module SEGRE extends (and requires)
CALI [H.-G. Gräbe:
CALI - A REDUCE package for commutative algebra, Version 2.2.1 (1995).
Available through the REDUCE library redlib@rand.org] and
provides convenient procedures for calculations in multiplicity theory,
intersection theory, and singularity theory. Based on a procedure for
the computation of the leading coefficients of Hilbert polynomials of
multigraded rings, it contains procedures for the calculation of
- mixed multiplicities;
- Tworzewski's extended index of intersection
[P. Tworzewski: Intersection theory in complex analytic geometry.
Ann. Polon. Math. 62 (1995), 177-191];
- the multiplicity sequence or generalized Samuel multiplicity of
[R. Achilles and M. Manaresi: Multiplicities of a bigraded ring and
intersection theory. Math. Ann. 309 (1997), 573-591];
- the Segre numbers of Gaffney-Gassler
[T. Gaffney and R. Gassler: Segre numbers and hypersurface
singularities. J. Algebraic Geom. 8 (1999), 695-736];
- Lê numbers (and, in particular, Milnor numbers)
[D.B. Massey: Lê cycles and hypersurface singularities.
Lecture Notes Math. 1615, Springer-Verlag, Berlin-Heidelberg, 1995];
- the push-forward to projective space of Segre and (Chern-)Fulton
classes assciated to a projective scheme
[P. Aluffi: Computing characteristic classes of projective
schemes. J. Symbolic Comput. 35 (2003), 3-19].
In fact, 6. is a consequence of 3., 5. is a special case of 4., and 2. and 4.
are special cases of 3.; see
[R. Achilles and S. Rams: Intersection numbers, Segre numbers
and generalized Samuel multiplicities. Arch. Math. (Basel)
77 (2001), 391-398].
The package contains many other procedures, e.g. for computing
the ideal of Chow equations and the Cayley (-van der Waerden-Chow)
or associated form of a projective variety, the arithmetic degree of a
projective variety, mixed multiplicities, the tangent variety of a
projective variety, the defining ideals of special varieties (Grassmannians,
Veronese varieties and their projections, rational normal scrolls).
If you want to use the script SEGRE, you will need the computer algebra
system REDUCE,
which is freely available for many platforms. Click
here to download
Reduce from SOURCEFORGE.
CALI and its user documentation cali.tex are included in the REDUCE
distribution.
Download
segre.red (version from October 13, 2017) in the working
directory of REDUCE, compile it and load it as a package. The commands in a
REDUCE session (running as "Run as Administrator") are:
faslout "segre"$
in "segre.red"$
faslend$
% Then in order to use SEGRE, it must be loaded:
load_package segre;
Alternatively, you can simply read in segre.red:
in "c:\scripts\segre.red"$
Here it is assumed that you have saved segre.red in the
directory scripts on c.
The script SEGRE has been written for my private use only, and so it lacks of
a manual. But you have at least a minimum of help by the help()
function of SEGRE. Typing
help();
lists all functions or procedures of CALI and SEGRE and
help(b);
all procedures beginning with "b": bettinumbers blowup bin bavula.
The command
help(blowup);
gives then a short description of the procedure blowup, which in the case of
CALI commands has been taken from H.-G. Gräbe's file cali.tex.
We provide the script SEGRE and four sample sessions, demonstrating and testing the
facilities of SEGRE:
-
segre.red (the script or module SEGRE, version of 2017-10-13)
-
segre1.txt (joins, secant varieties, relative
tangent cones, limits of joins)
-
segre2.txt (Segre numbers and Lê numbers)
-
segre3.txt (extended index of intersection)
-
segre4.txt (Stückrad-Vogel intersection cycle).
This script is still under (sporadic) development, and feedback is welcome.
last updated 10 February 2019, Rüdiger Achilles