This link contains the Macaulay2 code `CSM.m2' based on the algorithm described in Computing characteristic classes of projective schemes.

The code computes the push-forward to projective space of the
Chern-Schwartz-MacPherson and Fulton classes of a projective scheme S,
given its defining homogeneous ideal. Over **C**, This information
includes the *topological Euler characteristic* of the support of
S.

Also produced by the code are functions computing the Segre class
of S in projective space, and the Euler characteristic of an
*affine* scheme, given its defining ideal.

A short documentation, accompanied by examples, can be found here.

Also, here is a
link to the related paper, *Shadows of blow-up algebras*.

Please inform me of any problems with the code. Comments and suggestions for improvements will be greatly appreciated. If you use the code for computations leading to a publication, please reference the above paper in your bibliography:

@article {math.AG/0204230, AUTHOR = {Aluffi, Paolo}, TITLE = {Computing characteristic classes of projective schemes}, JOURNAL = {J. Symbolic Comput.}, FJOURNAL = {Journal of Symbolic Computation}, VOLUME = {35}, YEAR = {2003}, NUMBER = {1}, PAGES = {3--19}, }Many thanks, --Paolo Aluffi

Last modified: Mon Feb 17 14:08:38 EST 2007