
D.4.18.5 genus
Procedure from library normal.lib (see normal_lib).
 Return:
 an integer, the geometric genus p_g = p_a  delta of the projective
curve defined by i, where p_a is the arithmetic genus.
 Note:
 genus always treats projective curves and takes projective closure if input is affine 1dim variety.
delta is the sum of all local deltainvariants of the singularities,
i.e. dim(R'/R), R' the normalization of the local ring R of the
singularity.
genus(I,"nor") uses the normalization to compute delta. Usually genus(I,"nor")
is slower than genus(I) but sometimes not.
genus(I,"pri") starts with a primary decompsition.
Example:
 LIB "normal.lib";
ring r=0,(x,y),dp;
ideal i=y^9  x^2*(x  1)^9;
genus(i);
==> 0
ring r7=7,(x,y),dp;
ideal i=y^9  x^2*(x  1)^9;
genus(i);
==> 0

