
D.15.23.1 realclassify
Procedure from library realclassify.lib (see realclassify_lib).
 Usage:
 realclassify(f[, format]); f poly, format string
 Return:
 A list containing (in this order)
 the type of the singularity as a string,
 the normal form,
 the corank, the Milnor number, the inertia index and
a bound for the determinacy as integers.
The normal form involves parameters for singularities of modality
greater than 0. The actual value of the parameters is not computed
in most of the cases. If the value of the parameter is unknown,
the normal form is given as a string with an "a" as the
parameter. Otherwise, it is given as a polynomial.
An optional string format can be provided. Its default
value is "short" in which case the return value is the list
described above. If set to "nice", a string is added at the end
of this list, containing the result in a more readable form.
 Note:
 The classification is done over the real numbers, so in contrast to
classify.lib, the signs of coefficients of monomials where even
exponents occur matter.
The ground field must be Q (the rational numbers). No field
extensions of any kind nor floating point numbers are allowed.
The monomial order must be local.
The input polynomial must be contained in maxideal(2) and must be
an isolated singularity of modality 0 or 1. The Milnor number is
checked for being finite.
Example:
 LIB "realclassify.lib";
ring r = 0, (x,y,z), ds;
poly f = (x2+3y2z)^2+xyz(xy3+x2z3)^3;
realclassify(f, "nice");
==> [1]:
==> D[4]
==> [2]:
==> z2+x2yy3
==> [3]:
==> 2
==> [4]:
==> 4
==> [5]:
==> 0
==> [6]:
==> 3
==> [7]:
==>
==> Type of singularity: D[4]
==> Normal form: z2+x2yy3
==> Corank: 2
==> Milnor number: 4
==> Inertia index: 0
==> Determinacy: <= 3
==>
 See also:
classify.
