arXiv:1310.0048v2 [math.AG] 14 Jan 2016

The Classification of Real Singularities Using Singular
Part II: The Structure of the Equivalence Classes of the
Unimodal Singularities
Magdaleen S. Marais and Andreas Steenpaß
Abstract. In the classification of real singularities by Arnold et al. (1985),
normal forms, as representatives of equivalence classes under right equivalence,
are not always uniquely determined. We describe the complete structure of
the equivalence classes of the unimodal real singularities of corank 2. In other
words, we explicitly answer the question which normal forms of different type
are equivalent, and how a normal form can be transformed within the same
equivalence class by changing the value of the parameter. This provides new
theoretical insights into these singularities and has important consequences for
their algorithmic classification.

1. Introduction
This article is the second part of a series of articles on the algorithmic classification of real singularities up to modality 1 and corank 2. The first part (Marais
and Steenpaß, 2015) covers the splitting lemma and the simple singularities. All the
algorithms presented there have been implemented in the computer algebra system
Singular (Decker et al., 2015a) as a library called realclassify.lib (Marais and
Steenpaß, 2015).
Both real and complex singularities have been extensively studied (see Siersma,
1974; Arnold, 1976; Bruce and Gaffney, 1982; Gibson and Hobbs, 1993; FrühbisKrüger, 1999; Greuel et al., 2007; Frühbis-Krüger and Neumer, 2010). Our work is
based on the classifications of complex and real singularities of small modality up to
stable equivalence by Arnold et al. (1985). Two power series f, g ∈ K[[x1 , . . . , xn ]]
with a critical point at the origin and critical value 0 are complex (if K = C) or real
K
(if K = R) equivalent, denoted by f ∼ g, if there exists a K-algebra automorphism φ
of K[[x1 , . . . , xn ]] such that φ(f ) = g. They are stable (complex or real) equivalent if
they become (complex or real) equivalent after the direct addition of non-degenerate
quadratic terms.
In this article, we focus on the unimodal singularities of corank 2. Their complex and real normal forms can be found in Table 1. Just as for the simple singularities (cf. Marais and Steenpaß, 2015), it turns out that the complex singularity
types split up into one or several real subtypes and that the normal forms of the
real subtypes belonging to the same complex type differ from each other only in
the signs of some terms. We therefore sometimes refer to the complex singularity
Key words and phrases. hypersurface singularities, algorithmic classification, real geometry.
This research project was supported by the African Institute for Mathematical Sciences, the
German National Academic Foundation, and grants awarded by Wolfram Decker and Gert-Martin
Greuel. We are thankful to all of them.
1

2

MAGDALEEN S. MARAIS AND ANDREAS STEENPAß

Table 1. Normal forms of singularities of modality 1 and corank 2
as given in Arnold et al. (1985)
Complex
normal form

Normal forms
of real subtypes

Parabolic

+x4 + ax2 y 2 + y 4 (X9++ )
X9

x4 + ax2 y 2 + y 4

−x4 + ax2 y 2 − y 4 (X9−− )
+x4 + ax2 y 2 − y 4 (X9+− )
−x4 + ax2 y 2 + y 4 (X9−+ )

J10

x3 + ax2 y 2 + xy 4

J10+k

x3 + x2 y 2 + ay 6+k

Restrictions
a2 6= +4†
a2 6= −4†

+
x3 + ax2 y 2 + xy 4 (J10
)

a2 6= +4†

−
x3 + ax2 y 2 − xy 4 (J10
)

a2 6= −4†

+
x3 + x2 y 2 + ay 6+k (J10+k
)
−
x3 − x2 y 2 + ay 6+k (J10+k
)

a 6= 0, k > 0

++
+x4 + x2 y 2 + ay 4+k (X9+k
)

x4 + x2 y 2 + ay 4+k

Hyperbolic

X9+k

+−
+x4 − x2 y 2 + ay 4+k (X9+k
)

a 6= 0, k > 0

−+
−x4 + x2 y 2 + ay 4+k (X9+k
)
++
)
+x2 y 2 + xr + ay s (Yr,s

Yr,s

x2 y 2 + xr + ay s

Yer

(x2 + y 2 )2 + axr

E12

x3 + y 7 + axy 5

E13

Exceptional

−−
−x4 − x2 y 2 + ay 4+k (X9+k
)

3

5

x + xy + ay

−−
−x2 y 2 − xr + ay s (Yr,s
)
+−
)
+x2 y 2 − xr + ay s (Yr,s
−+
)
−x2 y 2 + xr + ay s (Yr,s
2
2 2
r e+
+(x + y ) + ax (Yr )

−(x2 + y 2 )2 + axr (Yer− )
x3 + y 7 + axy 5

8

3

5

x + xy + ay

8

+
x3 + y 8 + axy 6 (E14
)

a 6= 0, r, s > 4

a 6= 0, r > 4
-

E14

x3 + y 8 + axy 6

Z11

x3 y + y 5 + axy 4

x3 y + y 5 + axy 4

-

Z12

3

3

-

4

2 3

x y + xy + ax y

−
x3 − y 8 + axy 6 (E14
)

x3 y + y 6 + axy 5

W12

x4 + y 5 + ax2 y 3

W13

x4 + xy 4 + ay 6

2 3

x y + xy + ax y

+
x y + y + axy (Z13
)
−
3
6
5
x y − y + axy (Z13 )
+
+x4 + y 5 + ax2 y 3 (W12
)
−
4
5
2 3
−x + y + ax y (W12 )
+
+x4 + xy 4 + ay 6 (W13
)
−
4
4
6
−x + xy + ay (W13 )
3

Z13

4

6

-

5

-

†Note that the restriction a2 6= 4 applies to the normal forms of the real subtypes X ++ , X −− ,
9
9
+
and J10
as well as to the normal forms of the complex types X9 and J10 while the restriction
−
a2 6= −4 applies to the normal forms of the real subtypes X9+− , X9−+ , and J10
if we allow complex
parameters.

THE CLASSIFICATION OF REAL SINGULARITIES USING SINGULAR, PART II

3

types as main types. The hyperbolic type Yer is an exception because it is complex
equivalent to Yr,r and only occurs as a type on its own in the real classification.
Some of the normal forms in Table 1 are equivalent to others. Such equivalences
occur both between different real subtypes and between normal forms with different
values of the parameter a. However, there are no equivalences between different
main types. To give an example, x4 − 4x2 y 2 + y 4 , the normal form of X9++ with
a = −4, is equivalent to −x4 +10x2 y 2 −y 4 , the normal form of X9−− with a = 10, via
1
the coordinate transformation x 7→ c(x + y), y 7→ c(x − y) with c = √
4 . Examples
2
like this one have consequences for the algorithmic classification of real singularities.
The question if the singularity in the example is of real type X9++ or of real type
X9−− is not well-posed and the value of the parameter is not uniquely determined.
Note that this problem does not occur for the simple singularities: By definition,
their normal forms do not admit parameters, and there are no equivalences between
different real subtypes except for the main types Ak where k is even, cf. Marais and
Steenpaß (2015).
The goal of this article is to determine the complete structure of the equivalence
classes for the unimodal real singularities of corank 2. Based on these results, we
will present algorithms to determine the equivalence class of a given unimodal real
singularity of corank 2 in a subsequent part of this series of articles. If T1 and T2 are
subtypes of the same singularity main type T and if g1 (a) and g2 (a) are the normal
forms of T1 and T2 , respectively, where a denotes the value of the parameter, then
we are interested in the set of all pairs (u, v) such that g1 (u) is equivalent to g2 (v).
This question can be asked in three different ways: If we consider complex values
of u and v and complex coordinate transformations, we denote the corresponding
set by P1 (T1 , T2 ), for real values of u and v, but still complex transformations by
P2 (T1 , T2 ), and finally by P3 (T1 , T2 ) if we consider only real values of u and v and
real transformations, cf. Definition 6. We study all three sets P1 , P2 , and P3 for two
reasons: First, we need P1 and P2 to compute P3 which is the set we are mainly
interested in for our purpose. Second, besides the real structure, we thus also obtain
the complete complex structure of the equivalence classes for all the specific normal
forms given in Table 1 which is an interesting result on its own.
The formal definitions of these sets and other basic notations are introduced
in Section 2, along with different ways how P1 (T1 , T2 ), P2 (T1 , T2 ), and P3 (T1 , T2 )
can be conveniently written down in concrete cases. The following sections are
devoted to the computation of these sets for any two real subtypes T1 and T2
listed in Table 1. We first recall the definitions of (piecewise) weighted jets and
filtrations in Section 3. They play a major role in the proof of Theorem 19, the
main result of Section 4. This theorem allows us to restrict ourselves to a small
subset of coordinate transformations, which we call a sufficient set, if we want to
determine P1 (T1 , T2 ). It is thus the theoretic basis for Section 5 where we explain
how P1 (T1 , T2 ), P2 (T1 , T2 ), and P3 (T1 , T2 ) can be computed using Singular. We
also give an example with explicit Singular commands. These methods do not
apply for the singularity type Yer which is treated separately in Section 5.4. Section 6
contains the results of these computations in a concise form. Finally, we point out
some remarkable aspects of the results in this article as well as their consequences
for the algorithmic classification of the unimodal real singularities of corank 2 in
−
Section 7. The maybe most surprising outcome is that the real subtype J10
is
+
actually redundant whereas J10 is not.
2. The Sets of Parameter Transformations P1 , P2 , and P3
Let us start with some basic definitions. Throughout the rest of this article,
let K be, in each case, either R or C.

4

MAGDALEEN S. MARAIS AND ANDREAS STEENPAß

Definition 1. Two power series f, g ∈ K[[x1 , . . . , xn ]] are called K-equivalent,
K
denoted by f ∼ g, if there exists a K-algebra automorphism φ of K[[x1 , . . . , xn ]]
such that φ(f ) = g.
K

Note that ∼ is an equivalence relation on K[[x1 , . . . , xn ]]. Arnold et al. (1985)
give the following formal definition for normal forms w.r.t. this relation:
Definition 2. Let K ⊂ K[[x1 , . . . , xn ]] be a union of equivalence classes w.r.t.
K
the relation ∼. A normal form for K is given by a smooth map
Φ : B −→ K[x1 , . . . , xn ] ⊂ K[[x1 , . . . , xn ]]
of a finite-dimensional K-linear space of parameters B into the space of polynomials
for which the following three conditions hold:
(1) Φ(B) intersects all the equivalence classes of K;
(2) the inverse image in B of each equivalence class is finite;
(3) the inverse image of the whole complement to K is contained in some
proper hypersurface in B.
Remark 3. Note that the term normal form is subtly ambiguous. According
to the above definition, a normal form is a smooth map where the inverse image of
each equivalence class may contain more than one element, whereas the common
meaning of this term rather refers to the polynomials which are the images under
this map. We could be more precise and avoid this ambiguity by introducing a new
term for either of the two meanings. However, we stay with the common usage of
the term normal form in order to prevent confusion.
Definition 4. Let S ⊂ AutK (K[[x1 , . . . , xn ]]) be a set of K-algebra automorphisms of K[[x1 , . . . , xn ]] and let f, g ∈ K[[x1 , . . . , xn ]] be two power series.
(1) We denote the set of all automorphisms in S which take f to g by TSK (f, g),
i.e.
TSK (f, g) := {φ ∈ S | φ(f ) = g} .
(2) If S = AutK (K[[x1 , . . . , xn ]]), we simply write TK (f, g) for TSK (f, g), i.e.
TK (f, g) := {φ ∈ AutK (K[[x1 , . . . , xn ]]) | φ(f ) = g} .
The above definition is the key ingredient for the definition of P1 , P2 , and P3 .
We also need the following notation.
Remark 5. As usual, we denote the field of quotients Quot(K[a]) by K(a).
Let f ∈ K(a)[[x1P
, . . . , xn ]] be a power series over this quotient field. Then f can be
written as f = ν∈Nn cν xν with coefficients cν = pqνν ∈ K(a) where pν , qν ∈ K[a]
are polynomials of minimal degree with this property and qν 6= 0 for all ν ∈ Nn .
If we consider the polynomials pν , qν as polynomial functions pν , qν : K → K,
then we may also consider the coefficients cν as functions cν : K \V (qν ) → K
where V (qν ) is the set of points where
qν vanishes. Via this correspondence, we
P
ν
finally get
power
series
f
(u)
:=
n
ν∈N cν (u)x ∈ K[[x1 , . . . , xn ]] for each value
S
u ∈ K \ ν∈Nn V (qν ).
We use the notation f (u) throughout this paper. Likewise, we add the value of
the parameter which occurs in the normal form as given in Table 1 in parentheses
to the name of the singularity (sub-)type if we want to refer specifically to the
corresponding equivalence class. For instance, we denote by E14 (3) the (complex
or real) right-equivalence class of x3 + y 8 + 3xy 6 .
For any specific singularity type T , we denote by NF(T) its normal form as
+
shown in Table 1, i.e. we write NF(E14 (a)) = NF E14
(a) for the polynomial

−
3
8
6
3
8
6
x + y + axy and NF E14 (5) for x − y + 5xy .
We can now state the main definition of this section.

THE CLASSIFICATION OF REAL SINGULARITIES USING SINGULAR, PART II

5

Definition 6.
(1) Given power series f, g ∈ C(a)[[x1 , . . . , xn ]], we define the first set of
parameter transformations of f and g as

P1 (f, g) := (u, v) ∈ C2 |f (u) and g(v) are well-defined and
TC (f (u), g(v)) 6= ∅ .
(2) Given power series f, g ∈ R(a)[[x1 , . . . , xn ]], we define the second set of
parameter transformations of f and g as

P2 (f, g) := (u, v) ∈ R2 |f (u) and g(v) are well-defined and
TC (f (u), g(v)) 6= ∅ .
(3) Given power series f, g ∈ R(a)[[x1 , . . . , xn ]], we define the third set of
parameter transformations of f and g as

P3 (f, g) := (u, v) ∈ R2 |f (u) and g(v) are well-defined and
TR (f (u), g(v)) 6= ∅ .
Remark 7.
(1) Note that we have P3 (f, g) ⊆ P2 (f, g) ⊆ P1 (f, g) for any two power series
f, g ∈ R(a)[[x1 , . . . , xn ]].
(2) For any two unimodal singularity (sub-)types T1 , T2 and i ∈ {1, 2, 3}, we
simply write Pi (T1 , T2 ) instead of
1 (a)),
 Pi (NF(T
 NF(T2 (a))), e.g. we write
+
+
+
+
P1 E14
, E14
for P1 NF E14
(a) , NF E14
(a) .
For the parabolic singularity types X9 and J10 , the sets P1 , P2 , and P3 can be
described in terms of the following definition.
Definition 8. For Ω ⊂ C, let (fi : Ω → C)i∈I be a family of complex-valued
functions on Ω. We define the joint graph of (fi )i∈I over Ω as
ΓΩ ((fi )i∈I ) := {(a, fi (a)) ∈ Ω × C | a ∈ Ω, i ∈ I} .
It turns out that for the hyperbolic and exceptional unimodal singularities, P1 ,
P2 and P3 are just unions of sets of the form (a, ra)a∈K for some r ∈ K. For those
cases we use the following notations.
Definition 9. For any polynomial p(X) ∈ C[X], we define the sets C0 (p(X))
and R0 (p(X)) as
C0 (p(X)) := {(a, ra) ∈ C2 | a, r ∈ C, p(r) = 0} ,
R0 (p(X)) := {(a, ra) ∈ R2 | a, r ∈ R, p(r) = 0} .
Additionally, we define C(p(X)) and R(p(X)) as
C(p(X)) := C0 (p(X)) \ {(0, 0)} ,
R(p(X)) := R0 (p(X)) \ {(0, 0)} .

Remark 10. We occasionally use the notation R X l − s with l ∈ N \{0} and
s ∈ {−1, +1}, e.g. in Tables 5 and 6. Of course, this could be written in a more
explicit way
 for many values of l and s; for instance, we could write ∅ instead of
R X 4 + 1 . But distinguishing between different cases would spoil the symmetries
of those tables and we therefore stick to the shorthand notation.

6

MAGDALEEN S. MARAIS AND ANDREAS STEENPAß

3. Weighted Jets and Filtrations of Power Series and Transformations
We briefly introduce the concepts of (piecewise) weighted jets and filtrations.
For background regarding the definitions in this section, we refer to Arnold (1974).
We assume that the reader is familiar with the notions of weighted degrees, quasihomogeneous polynomials, and Newton polygons.
Remark 11. Let w be a weight on the variables (x1 , . . . , xn ). Throughout this
paper we always assume that the weighted degree of xi , denoted by w-deg(xi ), is a
natural number for each i = 1, . . . , n.
s

Definition 12. Let w0 := (w1 , . . . , ws ) ∈ (Nn ) be a finite family of weights on
the variables (x1 , . . . , xn ). For any term t ∈ K[x1 , . . . , xn ], we define the piecewise
weight of t w.r.t. w0 as
w0 -deg(t) := min wi -deg(t) .
i=1,...,s

A polynomial f ∈ K[x1 , . . . , xn ] is called piecewise quasihomogeneous of degree d
w.r.t. w0 if w0 -deg(t) = d for any term t of f .
Definition 13. Let w be a (piecewise) weight on the variables (x1 , . . . , xn ).
P∞
(1) Let f = i=0 fi be the decomposition of f ∈ K[[x1 , . . . , xn ]] into weighted
homogeneous parts fi of w-degree i. We denote the weighted j-jet of f
w.r.t. w by
j
X
w-jet(f, j) :=
fi .
i=0

(2) A power series in K[[x1 , . . . , xn ]] has filtration d ∈ N if all its terms are of
weighted degree d or higher. The power series of filtration d form a vector
space Edw ⊂ K[[x1 , . . . , xn ]].
Remark 14. Note that d < d0 implies Edw0 ⊆ Edw . Since the filtration of the
product Edw0 · Edw is d0 + d, it follows that Edw is an ideal in the ring of power series.
We denote the ideal consisting of power series of filtration strictly greater than d by
w
E>d
. If the weight of each variable is 1, we simply write Ed and E>d , respectively.
There are also similar concepts for coordinate transformations:
Definition 15. Let φ be a K-algebra automorphism of K[[x1 , . . . , xn ]] and let
w be a (piecewise) weight on the variables.
(1) For j > 0 we define the weighted j-jet of φ w.r.t. w, denoted by φw
j , to be
the map given by
φw
j (xi ) := w-jet(φ(xi ), w-deg(xi ) + j)

∀i = 1, . . . , n .

If the weight of each variable is 1, i.e. w = (1, . . . , 1), we simply write φj
for φw
j .
(2) φ has filtration d if, for all λ ∈ N,
w
(φ − id)Eλw ⊂ Eλ+d
.

Remark 16. Let φ be a K-algebra automorphism of K[[x1 , . . . , xn ]].
(1) Note that φ0 (xi ) = jet(φ(xi ), 1) for all i = 1, . . . , n. Furthermore note
that φw
0 may have filtration less than or equal to 0 for any weight w.
s
(2) Let w0 = (w1 , . . . , ws ) ∈ (Nn ) be a piecewise weight on (x1 , . . . , xn ), let
f0 ∈ K[x1 , . . . , xn ] be piecewise quasihomogeneous of degree d0 w.r.t. w0
and f1 ∈ K[x1 , . . . , xn ] quasihomogeneous of degree d1 w.r.t. w1 . For any
w1
1
δ ≥ 0, we always have (φ − φw
δ )(f1 ) ∈ E>d1 +δ , but the analogon for w0
does not hold in general: To give a counterexample, let us consider the

THE CLASSIFICATION OF REAL SINGULARITIES USING SINGULAR, PART II

7

case n = s = 2, w0 = ((1, 4), (4, 1)), f0 = x1 x2 , and let φ be given by
φ(x1 ) := x1 + x22 , φ(x2 ) := x2 + x22 . Then f0 is of degree d0 = 5, but
4
0
(φ − φw
0 )(f0 ) = x2 is of degree 4 w.r.t. w0 and thus not an element of
w0
w0
E5 = Ed0 +0 .
4. Sufficient Sets of Transformations
The results in this section considerably narrow down the transformations we
need to consider between specific unimodal normal forms of the same main type
in order to check if they are equivalent or not. In fact these results are in many
cases the main step for determining the structure of the equivalence classes of the
unimodal singularities up to corank 2.
Definition 17. Let f and g be elements in C(a)[[x1 , . . . , xn ]] and let S be a
subset of AutC (C[[x1 , . . . , xn ]]). We call S a sufficient set of coordinate transformations for the pair (f, g) if

∀u, v ∈ C :
TC (f (u), g(v)) 6= ∅ ⇔ TSC (f (u), g(v)) 6= ∅ .
The sufficient sets which we consider here can be described using the following
notation.
Definition 18. Let Mx and My be sets of monomials in C[[x, y]] L
and let CMx
and CMy be the C-vector spaces spanned by these sets, i.e. CMx := m∈Mx C m
and analogously for CMy . We define the set of coordinate transformations spanned
by Mx and My as
S(Mx , My ) := {φ ∈ AutC (C[[x, y]]) | φ(x) ∈ CMx , φ(y) ∈ CMy } .
Theorem 19. Let T be one of the main singularity types listed in Table 2, let
S be the corresponding set of automorphisms, and let T1 and T2 be subtypes of T.
Then S is a sufficient set of coordinate transformations for NF(T1 (a)), NF(T2 (a)) .

Except.

Hyperbolic

P.

Table 2. Sufficient sets for unimodal singularities of corank 2

Yr,s

T

S

X9

S({x, y}, {x, y})

J10

S({x, y 2 }, {y})

J10+k

S({x}, {y})

X9+k

S({x}, {y})

r 6= s

S({x}, {y})

r=s

S({x}, {y}) ∪ S({y}, {x})

E12 , E13 , E14

S({x}, {y})

Z11 , Z12 , Z13

S({x}, {y})

W12 , W13

S({x}, {y})

Proof of Theorem 19. We give different proofs for the parabolic, the hyperbolic, and the exceptional cases as indicated in Table 2.
In each case, let T1 and T2 be subtypes of the same main type T , and for u ∈ C
let φ ∈ AutC (C[[x, y]]) be a coordinate transformation which takes f := NF(T1 (u))
to NF(T2 (v)) for some v ∈ C.

8

MAGDALEEN S. MARAIS AND ANDREAS STEENPAß

Parabolic cases. The normal forms of both X9 and J10 are quasihomogeneous
with weights w := (1, 1) and w := (2, 1), respectively. Let us first consider the case
T = X9 . We have
w
w
φ(f ) = φw
0 (f ) + (φ − φ0 )(f ) = φ0 (f ) + R
w
with R ∈ E>4
. This implies φ(f ) = φw
0 (f ) because φ(f ) = NF(T2 (v)) is homogeneous of degree 4 w.r.t. the weight w. So any possible value of v which can be
reached via some φ ∈ AutC (C[[x, y]]) can also be obtained by φw
0 ∈ S({x, y}, {x, y}),
i.e., S({x, y}, {x, y}) is a sufficient set of coordinate transformations for the pair
(NF(T1 (a)), NF(T2 (a))).
Let us now consider the case T = J10 . Again we have φ(f ) = φw
0 (f ), but in
w
2
w
this case φw
0 is of the form φ0 (x) = αx + βy + γy , φ0 (y) = δy with α, β, γ, δ ∈ C.
3 3
Comparing the coefficients of φ(f ) = NF(T2 (v)) and φw
0 (f ) = β y + (other terms)
2
yields β = 0 and therefore φw
∈
S({x,
y
},
{y})
as
expected.
0
Hyperbolic cases. We present a proof for the main type T = J10+k , the proofs
for X9+k and Yr,s are similar. For Yr,s with r = s, we have to take the special shape
of S into account, cf. Table 2.
+
It does not matter for the arguments below whether we assume T1 = J10+k
or
−
T1 = J10+k , the same holds for T2 . We write ± whenever the sign can be either
plus or minus in order to prove all cases at once.
The Newton polygon of f = NF(T1 (u)) = x3 ± x2 y 2 + uy 6+k has two faces
defined by f1 := x3 ± x2 y 2 and f2 := ±x2 y 2 + uy 6+k . Let w0 be the piecewise
weight given by the two weights w1 := (12 + 2k, 6 + k) and w2 := (12 + 3k, 6). Then
f is piecewise quasihomogeneous of degree d := 36 + 6k w.r.t. w0 .
1
We now proceed in three steps: In the first two, we show φw
0 ∈ S({x}, {y})
w2
0
and φ0 ∈ S({x}, {y}). Finally we conclude that φ(f ) is equal to φw
0 (f ) and that
w0
φ0 is an element of S({x}, {y}) which proves the claim.
1
The transformation φw
0 is generically of the form
2
1
φw
0 (x) = αx + β1 y + β2 y ,
1
φw
0 (y) = γy

with coefficients α, β1 , β2 , γ ∈ C. With these notations we have
w1
1
φ(f ) = φw
0 (f ) + (φ − φ0 )(f )

= β13 y 3 + (3αβ22 ± 2αβ2 γ 2 )xy 4 + (β23 ± β22 γ 2 )y 6 + (other terms)
on the one hand and
φ(f ) = NF(T1 (v)) = x3 ± x2 y 2 + vy 6+k
on the other hand. This implies (in this order) β1 = 0, α 6= 0, β2 = 0 and hence
1
φw
0 ∈ S({x}, {y}).
The second step is a proof by contradiction. Let m be the largest integer which
2
is not greater than k2 + 2. Then similar as above, the automorphism φw
0 is of the
form
2
m
2
φw
0 (x) = αx + β1 y + β2 y + . . . + βm y ,
2
φw
0 (y) = γy

with α, β1 , . . . , βm , γ ∈ C and α, γ 6= 0. We have already shown β1 = β2 = 0.
Assume βs 6= 0 for some s ∈ {3, . . . , m} and let s be minimal with this property.
w2
2
2
Then the coefficient of xy s+2 in φ(f ) = φw
0 (f ) + (φ − φ0 )(f ) is ±2αβs γ which
implies βs = 0 in contradiction to the assumption. Hence β3 = . . . = βm = 0 and
2
φw
0 ∈ S({x}, {y}).

THE CLASSIFICATION OF REAL SINGULARITIES USING SINGULAR, PART II

9

For the last step, we consider the following equations:
w1
1
φ(f ) = φw
0 (f ) + (φ − φ0 )(f )
|
{z
}
w1
=: R1 ∈ E>d
w2
2
φ(f ) = φw
0 (f ) + (φ − φ0 )(f )
{z
}
|
w2
=: R2 ∈ E>d
w0
0
φ(f ) = φw
0 (f ) + (φ − φ0 )(f )
|
{z
}
=: R0
w0
Note that it is not a priori clear that R0 lies in E>d
if we only consider these
equations, cf. Remark 16(2). Nevertheless, this can be shown if we take into account
the results of the two previous steps: By definition of the piecewise weight w0 , any
w1
w2
w0
0
term in φw
0 (x) also appears in φ0 (x) or φ0 (x) (or both), analogously for φ0 (y).
w2
w1
w0
w0
w0
Therefore we have φ0 (x) = αx and φ0 (y) = γy, hence φ0 = φ0 = φ0 and
0
φw
0 ∈ S({x}, {y}). This implies
w1
w2
w0
R0 = R1 = R2 ∈ E>d
∩ E>d
= E>d
.

Since φ(f ) = NF(T2 (v)) is piecewise quasihomogeneous of degree d w.r.t. w0 , we
0
finally get R0 = 0 and φ(f ) = φw
0 (f ). This proves the claim.
Exceptional cases. The normal forms of all the exceptional cases in Table 2 are
semi-quasihomogeneous polynomials, i.e., in these cases f = NF(T1 (u)) is of the
form f = f0 + f1 where f0 is quasihomogeneous of degree d ∈ N w.r.t. some weight
w = (wx , wy ), f1 has weighted degree d + δ > d, and the Milnor number µ(f0 ) of f0
is finite (for the definition of the Milnor number, see Marais and Steenpaß, 2015).
In all the cases, f1 consists of the term which contains the parameter and we have
w
w
w
φ(f ) = φw
δ (f0 ) + φ0 (f1 ) + (φ − φδ )(f0 ) + (φ − φ0 )(f1 )
w
= w-jet(φw
δ (f0 ), d + δ) + φ0 (f1 ) + R
w
with R ∈ E>d+δ
. As above, φ(f ) = NF(T2 (v)) implies R = 0. If we show

(∗)

φw
δ ∈ S({x}, {y}) ,

w
then it follows that φw
δ is equal to φ0 and therefore
w
φ(f ) = w-jet(φw
0 (f0 ), d + δ) + φ0 (f1 )
w
= φw
0 (f0 ) + φ0 (f1 )

= φw
δ (f ) .
This, together with (∗), proves the claim.
The statement (∗) can be shown separately for each of the eight cases by some
easy computations. We carry out the proof for W13 , the other cases follow similarly.
The normal forms of the subtypes of W13 are ±x4 +xy 4 +ay 6 , so in this case we have
w = (4, 3), d = 16, and δ = 2. The ±-sign does not matter for the computations
which follow, but we carry it along in order to prove all subcases at once. The
transformation φw
δ is generically of the form
2
φw
δ (x) = αx + βy + γy ,

φw
δ (y) = εx + ζy
with α, β, γ, ε, ζ ∈ C because any other term would raise the weighted degree by
more than δ. With these notations, we now successively compare the coefficients
4
4
6
4
w
of φw
δ (f ) and φ(f ) = NF(T2 (v)) = ±x + xy + vy . The coefficient of y in φδ (f )
4
4
2 3
is ±β , therefore we have β = 0. The remaining coefficients of xy , x y , and x3 y 2
are now αζ 4 , 4αεζ 3 , and ±4α3 γ + 6αε2 ζ 2 , respectively, which shows that (in this

10

MAGDALEEN S. MARAIS AND ANDREAS STEENPAß

w
order) αζ 6= 0, ε = 0, and γ = 0. Hence φw
δ is in fact of the form φδ (x) = αx,
+
−
w
φδ (y) = ζy which proves (∗) for T1 , T2 ∈ W13 , W13 .


5. On the Computation of the Results
Based on the previous section, the results presented in Section 6 can be computed using Singular for all those singularity types which are covered by Theorem 19. The main tools for these computations are elimination, Gröbner covers,
and primary decomposition. For details on these topics, we refer to Greuel and Pfister (2008). For each pair of singularity subtypes T1 , T2 , the computation follows
the same structure: One can first compute the set P1 (T1 , T2 ) using elimination and
factorization. The set P2 (T1 , T2 ) can then be derived from this as the intersection
of P1 (T1 , T2 ) with R × R. In order to determine P3 (T1 , T2 ), one finally has to check
for each point or branch in P2 (T1 , T2 ) whether or not there is a real transformation
which changes the parameter in such a way. Gröbner covers and primary decomposition are convenient tools to simplify the often complicated ideals which occur
in this last step.
Although our approach is almost algorithmic, we do not present it as an algorithm here because each case requires slightly different means depending on the
intermediate results. Especially the computation of P3 (T1 , T2 ) is rather straightforward in some cases whereas it requires careful considerations in other cases.
However, writing down every detail of the computations for each case is beyond
the scope of this section. Instead, we present the general framework and give explicit
Singular commands for T1 = T2 = X9++ which is one of the more complicated
cases (cf. Theorem 29).
The singularity type Yer does not appear in Table 2 and thus needs special care.
The structure of the equivalence classes of this type can be computed on the basis
of the data for the type Yr,s , cf. Section 5.4.
5.1. How to Compute P1 (T1 , T2 ). We denote the parameter occurring in
NF(T1 ) by a and the one in NF(T2 ) by b. The computation is done in four steps:
Step 1. Set up a generic transformation using Theorem 19:
Let S = S(Mx , My ) ⊂ AutC (C[[x, y]]) be the sufficient set of C[[x, y]]-automorphisms for (NF(T1 (a)), NF(T2 (a))) given in Theorem 19. Let t1 , . . . , tr be coefficients for the monomials in Mx and My and let φ be a generic element of S with
these coefficients, i.e. let φ be of the form φ(x) = t1 · x + (other terms) (or of the
form φ(x) = t1 · y + (other terms) in case T1 and T2 are subtypes of Yr,s with r = s).
Step 2. Set up a system of equations for the parameters:
By comparing the coefficients in φ(NF(T1 (a))) and NF(T2 (b)), we get a set of
equations in a, b, t1 , . . . , tr which is equivalent to φ(NF(T1 (a))) = NF(T2 (b)). Let
I ⊂ C[a, b, t1 , . . . , tr ] be the ideal generated by these equations. Then the vanishing
set V (I) describes completely which transformations take NF(T1 (a)) to NF(T2 (b))
for which values of a and b.
Step 3. Use elimination to obtain an equation in a and b only:
We can now eliminate the variables t1 , . . . , tr from I and thus obtain an ideal
I 0 ⊂ C[a, b] which is in all cases generated by one polynomial g. This elimination
geometrically corresponds to the projection A2+r
⊃ V (I) 7→ V (I 0 ) ⊂ A2C .
C
Step 4. Compute the zeros of this equation:
After factorizing g ∈ C[a, b] into irreducible factors g1 , . . . , gs , we compute the roots
in b of each factor (over C(a) or suitable extensions thereof if necessary). We thus
get roots of the form b − f (a) where f (a) can be considered as a function in a.

THE CLASSIFICATION OF REAL SINGULARITIES USING SINGULAR, PART II

11

These functions explicitly determine the possible values of b for each given a and
their joint graph is exactly P1 (T1 , T2 ).

Example 20. We compute P1 X9++ , X9++ with Singular, following the steps
above.
Step 1. Set up a generic transformation using Theorem 19:
For convenience we work over Q(a, b, t1 , t2 , t3 , t4 )[x, y]:
> ring R = (0,a,b,t1,t2,t3,t4), (x,y), dp;
> poly f = x^4+a*x^2*y^2+y^4;
According to Theorem 19,

S = φ ∈ AutC (C[[x, y]]) | φ(x) = t1 x + t2 y, φ(y) = t3 x + t4 y, t1 , . . . , t4 ∈ C
is a sufficient set of automorphisms for X9 :
> map phi = R, t1*x+t2*y, t3*x+t4*y;
Step 2. Set up a system of equations for the parameters:
> matrix C = coef(phi(f), xy);
> print(C);
x^4,
x^3*y, x^2*y^2,x*y^3, y^4,
C[2,1],C[2,2],C[2,3], C[2,4],C[2,5]
> C[2,1];
(a*t1^2*t3^2+t1^4+t3^4)

Now the second row of the matrix C contains the coefficients of phi X9++ (a) ,
C[2, 1] for instance is the one belonging to x4 . Using the corresponding coefficients
of X9++ (b) = x4 + b · x2 y 2 + y 4 , we can define the ideal I as above:
> matrix D[1][5] = 1, 0, b, 0, 1;
> ideal I = C[2,1..5]-D[1,1..5];
Step 3. Use elimination to obtain an equation in a and b only:
As the next step, we map this ideal to Q(a)[b, t1 , t2 , t3 , t4 ] and eliminate the variables ti :
> ring S = (0,a), (b,t1,t2,t3,t4), dp;
> ideal I = imap(R, I);
> ideal g = eliminate(I, t1*t2*t3*t4);
> g;
g[1]=(a^4-8*a^2+16)*b^6+(-a^6-720*a^2-1152)*b^4
+(8*a^6+720*a^4+20736)*b^2+(-16*a^6+1152*a^4-20736*a^2)
Step 4. Compute the zeros of this equation:
Factorizing the single generator of this ideal finally yields the functions f11,1 , . . . , f61,1
defined in Theorem 29. Note that a2 6= 4.
> factorize(g[1]);
[1]:
_[1]=1
_[2]=b+(-a)
_[3]=b+(a)
_[4]=(a-2)*b+(-2*a-12)
_[5]=(a+2)*b+(-2*a+12)
_[6]=(a+2)*b+(2*a-12)
_[7]=(a-2)*b+(2*a+12)
[2]:
1,1,1,1,1,1,1

12

MAGDALEEN S. MARAIS AND ANDREAS STEENPAß

5.2. How to Compute P2 (T1 , T2 ). Given P1 (T1 , T2 ), it is easy to compute
P2 (T1 , T2 ) even “by hand” because we have
P2 (T1 , T2 ) = P1 (T1 , T2 ) ∩ (R × R) .
1,1
Example 21. Continuing the example above, the values of f11,1
 (a), . . . , f6 (a)
++
++
are clearly real for a ∈ R, cf. Theorem 29. The set P2 X9 , X9
is thus the joint
graph of these functions over R \{−2, 2}.
To give another example, for T1 = T2 = X9+− the set P1 (T1 , T2 ) is the joint
graph of f1i,i , . . . , f6i,i over C \{−2i, 2i}. The values of f1i,i (a) and f2i,i (a) are clearly
real for a ∈ R, but those of f3i,i (a), . . . , f6i,i (a) are not except at some exceptional
points which are already covered by f1i,i and f2i,i . So in this case we have





P2 X9+− , X9+− = ΓR f1i,i , f2i,i = ΓR f11,1 , f21,1 .

5.3. How to Compute P3 (T1 , T2 ). We do the computation in two steps:
Step 1. Reduce the problem to a finite number of branches and exceptional
points:
Since P3 (T1 , T2 ) ⊂ P2 (T1 , T2 ) by definition, we can determine P3 (T1 , T2 ) by checking for each pair (a, b) ∈ P2 (T1 , T2 ) whether or not there is a real coordinate transformation φ ∈ AutR (R[[x, y]]) which takes NF(T1 (a)) to NF(T2 (b)). This can be
reduced to a finite problem as follows: Let gj , j ∈ {1, . . . , s}, be the irreducible
factors of the polynomial g as in Section 5.1. Then in all the cases, P2 (T1 , T2 ) is a
finite union of “branches” of the form V (gj ) and some exceptional points. We can
check whether a branch V (gj ) or an exceptional point (qa , qb ) in P2 (T1 , T2 ) belongs
P3 (T1 , T2 ) by simply adding appropriate relations to the ideal I and looking at the
real solutions of the resulting ideal. In other words, we define J := I + hgj i or
J := I + ha − qa , b − qb i, respectively, and investigate VR (J). Note that we have
I ⊂ R[a, b, t1 , . . . , tr ] and gj ∈ R[a, b] and thus J ⊂ R[a, b, t1 , . . . , tr ] in all the cases.
Step 2. For each branch and each exceptional point, check if a real transformation exists:
P3 (T1 , T2 ) is the image of VR (J) ⊂ A2+r
under the projection A2+r
→ A2R , i.e.
R
R
we have (pa , pb ) ∈ P3 (T1 , T2 ) if and only if there is a coordinate transformation
with real coefficients (pt1 , . . . , ptr ) such that (pa , pb , pt1 , . . . , ptr ) is an element of
VR (J) ⊂ A2+r
R .
It turns out that the ideal J is quite complicated in some cases and that it can
be difficult to determine VR (J) by just computing a Gröbner basis of J. One way
out is then to consider J as a parametric ideal J ⊂ R(a)[b, t1 , . . . , tr ] and to compute
a Gröbner cover thereof by using the Singular library grobcov.lib (Montes and
Schönemann, 2015). A Gröbner cover completely describes the possible shapes of
Gröbner bases of J for different values of a. It contains a generic Gröbner basis of
J, i.e. one which is a Gröbner basis except for finitely many exceptional values of
a, and additionally Gröbner bases of J for each of these exceptional values. The
ideals in a Gröbner cover of J typically have a much easier structure than J itself.
We can thus treat them one by one and determine their real solutions. We will
often find generators such as (tj )4 + 1, indicating that the vanishing set over R of
this ideal is empty.
If any of the ideals in the Gröbner cover of J are still to complicated and if
their vanishing set over R cannot be easily read off, another trick is to compute
a primary decomposition of these ideals with the Singular library primdec.lib
(Decker et al., 2015b). Typically, it is then easy to see that some of the primary
components have no solutions over R whereas the real solutions of the remaining
components can be easily determined.

THE CLASSIFICATION OF REAL SINGULARITIES USING SINGULAR, PART II

13

Example 22.
Step 1. Reduce the problem to a finite number of branches and exceptional
points:

We have already seen in Example 21 that P2 X9++ , X9++ is the joint graph of
f11,1 , . . . , f61,1 over R \{−2, 2}. We now have to check for each of these functions
whether their graph is also contained in P3 X9++ , X9++ .
Step 2a. Check if a real transformation exists for f31,1 :
This is clearly the case for f11,1 = id. To check this for f31,1 , we continue the
Singular session from Example 20, add the corresponding relation to the ideal I
and compute a Gröbner cover of the resulting ideal J:
> ideal J = I, (a-2)*b+(-2*a-12);
> LIB "grobcov.lib";
> grobcov(J);
The output of the last command is too long to be printed here. We will find
that the Gröbner basis of J for generic a contains the generators (t2 )2 + (t4 )2 and
(t3 )2 + (t4 )2 which imply t2 = t3 = t4 = 0 for any real solution of this ideal.
But this is a contradiction to phi ∈ AutR (R[[x, y]]). The exceptional cases for the
parameter a are a + 2 = 0, a − 2 = 0, a2 + 12 = 0, a + 6 = 0, a − 6 = 0, and
a = 0. The first two cases are excluded by the definition of the singularity type
X9++ , a2 + 12 = 0 would imply a 6∈ R, for a + 6 = 0 and a = 0 the corresponding
Gröbner bases of J contain generators similar to those mentioned above, and finally
a − 6 = 0 implies b − 6 = 0 such that this case is already covered by the graph of
f11,1 .
Step 2b. Check if a real transformation exists for f51,1 :
To give one more example, let us consider f51,1 :
> J = I, (a+2)*b+(2*a-12);
> grobcov(J);
The crucial generator of the Gröbner basis of J for generic a is now the polynomial
(a + 2)(t4 )4 − 1 which has a real root if and only if a > −2. Considering the other
generators, it is easy to see that given t4 ∈ R, t1 = t2 = t3 = −t4 is a real solution.
The exceptional values of a in this case are the same as above and again, we do
not have to consider a + 2 = 0, a − 2 = 0, and a2 + 12 = 0. The relation a + 6 = 0
1
implies b + 6 = 0 which is already covered by f11,1 . Finally, t1 = t2 = t3 = √
4 ,
2
1
t4 = − √
and t1 = t2 = t3 =
4
2

1
√
4 ,
8

1
t4 = − √
are real solutions for the cases a = 0
4
8

and a − 6 = 0, respectively. To sum up, the graph of f51,1 over R>−2 belongs to
P3 X9++ , X9++ , but not the part over R<−2 .
Step 2c. Check if a real transformation exists for the other branches:
Continuing in this manner, one can show that f21,1 , f41,1 and f61,1 do not contribute
any additional points, so we get





P3 X9++ , X9++ = ΓR0 f11,1 ∪ ΓR>−2 f51,1
where R0 := R \{−2, 2}.
Remark 23. With the above notations, the irreducible factors gj , j = 1, . . . , s,
of the polynomial g are luckily of degree 1 in b in almost all cases. If one of those
factors, say g1 , has degree in b greater than 1, and if additionally the corresponding
ideal J = I + hg1 i has both real and complex solutions, then an extra calculation
is needed: Let f1 (a), . . . , fk (a) be the roots of g1 in b as above, i.e. g1 = (b −
f1 (a)) . . . (b − fk (a)) (over C(a) or over a suitable extension thereof if necessary).
Then we have to check which of these roots f1 (a), . . . , fk (a) belong to the real
solutions of J and which of them can only reached via complex transformations.

14

MAGDALEEN S. MARAIS AND ANDREAS STEENPAß

This is especially crucial for the singularities of type J10 in order to distinguish
between f3σ,ρ , f4σ,ρ , f5σ,ρ , and f6σ,ρ , cf. Theorem 30.
Remark 24. The hyperbolic singularity types listed in Table 1 are actually
infinite series of types. One might argue that the computations described in Sections 5.1 to 5.3 must be carried out for each single k > 0 (for J10+k and X9+k )
and for each pair r, s > 4 (for Yr,s ) in order to check the results presented in Theorems 32 to 34. This is, of course, impossible in practice. But it turns out that
the results are periodic in k and r, s, respectively. Hence it suffices to carry these
computations out for sufficiently many values of k and r, s. If we closely examine
the intermediate steps, then we can easily check that the results are indeed periodic.
5.4. The Special Type Yer . Theorem 19 does not give any sufficient set for
subtypes of Yer and indeed it turns out that there is no degree-bounded sufficient
set for this case, cf. Remark 28.
But since Yer is C-equivalent to Yr,r , we can use the structure of the equivalence
classes of Yr,r (cf. Theorem 34) to determine P1 (T1 , T2 ), P2 (T1 , T2 ), and P3 (T1 , T2 )

for T1 , T2 ∈ Yer+ , Yer− . To do so, let us first define the principal part of a power
series.
Definition 25. Let f ∈ K[[x1 , . . . , xn ]] be a power series, let Γf be its Newton
polygon, and let f0 be the sum of those terms of f which lie on Γf . Then we call
f0 the principal part of f .
The following result is due to Arnold (1974, Corollary 9.9).
Lemma 26. Let f ∈ C[[x, y]] be a power series whose principal part is of the
form f0 = xa + λx2 y 2 + y b , where 0 6= λ ∈ C, a ≥ 4, and b ≥ 5. Then f and its
C
principal part f0 are C-equivalent, i.e. f ∼ f0 .
Based upon this lemma, we can now specify an explicit equivalence between
the normal forms of Yer and Yr,r .
Lemma 27. For any r > 4 and any a ∈ C \{0}, we have




r 
++
−+
a, 41 a2 ∈ P1 Yer+ , Yr,r
∩ P1 Yer− , Yr,r
.
Proof. Let φ ∈ AutC (C[[x, y]]) be the coordinate transformation defined by

φ(x) := 12 (x + y) and φ(y) := 12 i(x − y). Then the principal parts of φ NF Yer+ (a)

r
r
and φ NF Yer− (a) are of the form 12 a · xr + λx2 y 2 + 21 a · y r with λ = 1 and
λ = −1, respectively, so the result follows from Lemma 26.

++
−+
Section 5.1 tells us how to compute P1 (T1 , T2 ) for T1 , T2 ∈ {Yr,r
, Yr,r
}, cf.
Theorem 34. We can use this data and the above lemma to compute P1 (T1 , T2 ) for


T1 , T2 ∈ Yer+ , Yer− . Let us consider the case P1 Yer+ , Yer+ , the other cases follow


++
similarly. According to Lemma 27, NF Yer+ (a) is C-equivalent to NF Yr,r
ca2
r
with c := 41 for any r > 4 and any a ∈ C \{0}. This in turn is C-equivalent to
++
NF Yr,r
ζca2 for any ζ satisfying ζ l − 1 = 0 where l = gcd(2, r + 1), cf. Theo C
√ 
++
rem 34. Applying Lemma 27 again leads to NF Yr,r
ζca2 ∼ NF Yer+ ± ζa ,
and we thus get the diagram
1.
 Cshown in Figure
√ 
This proves NF Yer+ (a) ∼ NF Yer+ ± ζa for ζ as above, and since the diagram is commutative, there are no equivalences for other values of the parameters
than these. Hence



P1 Yer+ , Yer+ = C X 2l − 1

THE CLASSIFICATION OF REAL SINGULARITIES USING SINGULAR, PART II



++
Figure 1. Equivalences between NF Yer+ and NF Yr,r



√ 
NF Yer+ (a)
NF Yer+ ± ζa

++
NF Yr,r
ca2



++
NF Yr,r
ζca2

c :=

15

 
1 r
4




with l as above. The set P2 Yer+ , Yer+ can now be determined as in Section 5.2. In
fact it is easy to see that



P2 Yer+ , Yer+ = R X 2 − 1 .


We clearly have (a, a) ∈ P3 Yer+ , Yer+ for a ∈ R \{0}, and also (a, −a) ∈ P3 Yer+ , Yer+

if r is odd. For the case where r is even, let us consider NF Yer+ (a) as a function in x and y over R2 and let the parameter a be positive. In this case the

2
function NF Yer+ (a) = x2 + y 2 + axr takes only non-negative values whereas

2
NF Yer+ (−a) = x2 + y 2 − axr attains also negative values. Hence there is no


real coordinate transformation which takes NF Yer+ (a) to NF Yer+ (−a) . The argument is similar for a < 0. To sum up, we have
(


R(X 2 − 1), if r is odd,
+
+
P3 Yer , Yer =
R(X − 1), if r is even.
Remark 28. Let r ≥ 8 be a multiple of 4 and let φr ∈ AutC (C[[x, y]]) be a


coordinate transformation which takes f := NF Yer+ (a) to NF Yer+ (−a) . Assume
that the degree of both φr (x) and φr (y) is less than 4r and let f = f0 + f1 be
2
decomposed into its principal part f0 := x2 + y 2 and f1 = axr . Then we have
2
φ(f ) = φ(f0 ) + φ(f1 ) = x2 + y 2 − axr
2
where the degree of φ(f0 ) is less than r. Therefore φ(f0 ) = φ0 (f0 ) = x2 + y 2
and φ(f1 ) = φ0 (f1 ) = −axr . If φ0 is given by φ0 (x) = αx + βy, φ0 (y) = γx + δy
with α, β, γ, δ ∈ C, the second of these two equations implies β = 0 and αr = −1,
but the first one in turn implies γ = 0 and α4 = 1 which is a contradiction.
So the degree of either φr (x) or φr (y) must at least 4r . This shows that a degree

bounded sufficient set of coordinate transformations for NF Yer+ (a) , NF Yer+ (a)
and for arbitrarily high r does not exist.
6. Results
In this section we present the sets P1 , P2 , P3 in table form for every unimodal
real singularity type up to corank 2.
Theorem 29. The structure of the equivalence classes of the X9 singularities
is as shown in Table 3 where for j = 1, . . . , 6 and ρ, σ ∈ {1, i}, the function fjρ,σ is
defined as follows:
+2σa + 12ρσ
−2σa + 12ρσ
f1ρ,σ (a) := +ρσ · a , f3ρ,σ (a) :=
, f5ρ,σ (a) :=
,
a − 2ρ
a + 2ρ
+2σa − 12ρσ
−2σa − 12ρσ
f2ρ,σ (a) := −ρσ · a , f4ρ,σ (a) :=
, f6ρ,σ (a) :=
.
a + 2ρ
a − 2ρ

16

MAGDALEEN S. MARAIS AND ANDREAS STEENPAß

Furthermore, we use the following notations:
C0 := C \{−2, 2} ,

R0 := R \{−2, 2} ,

C00 := C \{−2i, 2i} .

Table 3. P1 , P2 and P3 for the X9 singularities
T1

T2

X9++

X9++

X9−−

X9−−

X9++

X9−−

X9−−

X9++

X9+−

X9+−

X9−+

X9−+

X9+−
X9−+
X9++
X9++
X9−−
X9−−
X9+−
X9−+
X9+−
X9−+

X9−+
X9+−
X9+−
X9−+
X9+−
X9−+
X9++
X9++
X9−−
X9−−

P1 (T1 , T2 )

P2 (T1 , T2 )

ΓC0 f11,1 , . . . , f61,1



P3 (T1 , T2 )

ΓR0 f11,1

ΓR0 f11,1 , . . . , f61,1



∪ ΓR0>−2 f51,1

ΓR0 f11,1



∪ ΓR0<+2 f31,1

ΓR<−2 f41,1

ΓR>+2 f61,1



ΓC00 f1i,i , . . . , f6i,i



ΓR f11,1 , f21,1

ΓC0 f11,i , . . . , f61,i



{(−6, 0), (0, 0), (6, 0)}

∅

{(0, −6), (0, 0), (0, 6)}

∅

ΓC00 f1i,1 , . . . , f6i,1





ΓR f11,1



Theorem 30. The structure of the equivalence classes of the J10 singularities
is as shown in Table 4 where for j = 1, . . . , 6 and ρ, σ ∈ {−1, +1}, the function
fjρ,σ is defined as follows:
√
f1ρ,σ (a) := + ρσ · a ,
√
f2ρ,σ (a) := − ρσ · a ,
s
p
−ρσ(a2 − ρ · 4)(a2 − ρ · 9) + a(a2 − ρ · 3) a2 − ρ · 4
ρ,σ
f3 (a) := +
,
2(a2 − ρ · 4)
s
p
−ρσ(a2 − ρ · 4)(a2 − ρ · 9) + a(a2 − ρ · 3) a2 − ρ · 4
ρ,σ
f4 (a) := −
,
2(a2 − ρ · 4)
s
p
−ρσ(a2 − ρ · 4)(a2 − ρ · 9) − a(a2 − ρ · 3) a2 − ρ · 4
ρ,σ
f5 (a) := +
,
2(a2 − ρ · 4)
s
p
−ρσ(a2 − ρ · 4)(a2 − ρ · 9) − a(a2 − ρ · 3) a2 − ρ · 4
ρ,σ
f6 (a) := −
.
2(a2 − ρ · 4)

THE CLASSIFICATION OF REAL SINGULARITIES USING SINGULAR, PART II

In each case, ρ and σ are given by
(
+
+1, if T1 = J10
,
ρ :=
−
−1, if T1 = J10 ,

(
σ :=

+1,
−1,

17

+
if T2 = J10
,
−
if T2 = J10 .

Furthermore, we use the following notations:
ξ :=

√3
2

I1 := ]−∞, −ξ[ ⊂ R ,

,

C0 := C \{−2, 2} ,

I2 := ]−ξ, −2[ ⊂ R ,

0

R := R \{−2, 2} ,

I3 := ]+2, +ξ[ ⊂ R ,

00

C := C \{−2i, 2i} ,

I4 := ]+ξ, +∞[ ⊂ R .

Table 4. P1 , P2 and P3 for the J10 singularities
T1

T2

P1 (T1 , T2 )

P2 (T1 , T2 )

P3 (T1 , T2 )

ΓR0 (f1ρ,σ , f2ρ,σ )
+
J10

+
J10

ΓC0 (f1ρ,σ , . . . , f6ρ,σ )

∪ ΓR>+2 (f3ρ,σ , f4ρ,σ )

ΓR0 (f1ρ,σ )

∪ ΓR<−2 (f5ρ,σ , f6ρ,σ )

∪ ΓR>+2 (f4ρ,σ )

∪ {(0, −ξ), (0, +ξ)}

∪ ΓR<−2 (f5ρ,σ )

∪ {(−ξ, 0), (+ξ, 0)}
−
J10

−
J10

ΓC00 (f1ρ,σ , . . . , f6ρ,σ )

ΓR (f1ρ,σ , f2ρ,σ )

ΓI4 (f3ρ,σ ) ∪ ΓI3 (f4ρ,σ )

{(0, 0)}
+
J10

−
J10

−
J10

+
J10

ΓC0 (f1ρ,σ , . . . , f6ρ,σ )

ΓC00 (f1ρ,σ , . . . , f6ρ,σ )

ΓR (f1ρ,σ )

∪ ΓR>+2 (f3ρ,σ , f4ρ,σ )

∪ ΓI2 (f5ρ,σ ) ∪ ΓI1 (f6ρ,σ )

∪ ΓR<−2 (f5ρ,σ , f6ρ,σ )

∪ {(−ξ, 0), (+ξ, 0)}

{(0, 0)}
∪ ΓR (f3ρ,σ , . . . , f6ρ,σ )

ΓR (f3ρ,σ , f6ρ,σ )

Remark 31. In Theorem 30, the definitions of f1ρ,σ , . . . , f6ρ,σ involve square
roots of possibly complex values. These square roots are defined as follows: For
any complex number z = reiφ ∈ C with r, φ ∈ R, r > 0, and 0 ≤ φ < 2π, we set
√

z :=

√

φ

rei 2 .

√
√
In particular, Im( z) > 0 for all z ∈ C \ R>0 and z ≥ 0 for all z ∈ R>0 .
Theorem 32. The structure of the equivalence classes of the J10+k singularities
is as shown in Table 5 where in each case, l and s are given by
6
, and
gcd(6, k)
(
+1, if k ≡ 2
s :=
−1, else.
l :=

(mod 4),

18

MAGDALEEN S. MARAIS AND ANDREAS STEENPAß

Table 5. P1 , P2 and P3 for the J10+k singularities
T1

T2

+
J10+k
−
J10+k
+
J10+k
−
J10+k

+
J10+k
−
J10+k
−
J10+k
+
J10+k

P1 (T1 , T2 )

P2 (T1 , T2 )

P3 (T1 , T2 )

C(X l − 1) R(X l − 1)

R(X l − 1)

C(X l − s)

R(X l − s)

∅

Theorem 33. The structure of the equivalence classes of the X9+k singularities
is as shown in Table 6 where in each case, l and s are given by
4
, and
gcd(4, k)
(
+1, if k ≡ 4
s :=
−1, else.
l :=

(mod 8),

Table 6. P1 , P2 and P3 for the X9+k singularities
T1

T2

++
X9+k

++
X9+k

+−
X9+k

+−
X9+k

−+
X9+k

−+
X9+k

−−
X9+k

−−
X9+k

++
X9+k

+−
X9+k

+−
X9+k

++
X9+k

−+
X9+k

−−
X9+k

−−
X9+k

−+
X9+k

++
X9+k

−+
X9+k

+−
X9+k

−−
X9+k

−+
X9+k

++
X9+k

−−
X9+k

+−
X9+k

++
X9+k

−−
X9+k

+−
X9+k

−+
X9+k

−+
X9+k
−−
X9+k

+−
X9+k

P1 (T1 , T2 )

P2 (T1 , T2 )

P3 (T1 , T2 )

C(X l − 1) R(X l − 1) R(X k+1 − 1)

C(X l − 1) R(X l − 1)

∅

C(X l − s)

R(X l − s)

∅

C(X l − s)

R(X l − s)

∅

++
X9+k

Theorem 34. The structure of the equivalence classes of the Yr,s singularities
is as shown in Table 7 where in each case, l, s1 and s2 are given by
r
l :=
· gcd(2, r + 1, s + 1) ,
gcd(r, s)
(
+1, if r ≡ 0 (mod 4) or s ≡ 0 (mod 4),
s1 :=
−1, else,

THE CLASSIFICATION OF REAL SINGULARITIES USING SINGULAR, PART II

s2 :=

(
+1,
−1,

if r 6≡ 0

(mod 2) or

s
gcd(r,s)

≡0

19

(mod 2),

else.

In the special case where r = s, additional equivalences occur. They are listed
in Table 8.
Table 7. P1 , P2 and P3 for the Yr,s singularities
T1

T2

++
Yr,s
−+
Yr,s
+−
Yr,s
−−
Yr,s
++
Yr,s
−+
Yr,s
+−
Yr,s
−−
Yr,s
++
Yr,s
−+
Yr,s
+−
Yr,s
−−
Yr,s
++
Yr,s
−+
Yr,s
+−
Yr,s
−−
Yr,s

++
Yr,s
−+
Yr,s
+−
Yr,s
−−
Yr,s
−+
Yr,s
++
Yr,s
−−
Yr,s
+−
Yr,s
+−
Yr,s
−−
Yr,s
++
Yr,s
−+
Yr,s
−−
Yr,s
+−
Yr,s
−+
Yr,s
++
Yr,s

P1 (T1 , T2 )

P2 (T1 , T2 )

P3 (T1 , T2 )

C(X l − 1)

R(X l − 1)

R(X s+1 − 1)

C(X l − s1 )

R(X l − s1 )

∅

(
l

C(X − s2 )

l

R(X − s2 )

C(X l − s1 s2 ) R(X l − s1 s2 )

R(X l − s2 ),
∅,

if r 6≡ 0 (mod 2)
if r ≡ 0 (mod 2)

∅

Table 8. Additional equivalences for the Yr,s singularities in the
special case r = s
T1

T2

++
Yr,s

+−
Yr,s

−+
Yr,s
+−
Yr,s
−−
Yr,s

−−
Yr,s
++
Yr,s
−+
Yr,s

Additional elements of P3 (T1 , T2 )
(

R(X + 1), if r ≡ 0 (mod 2) and a < 0
∅,
else
(
R(X + 1), if r ≡ 0 (mod 2) and a > 0
∅,
else

Remark 35. Note that there are also equivalences between subtypes of Yr,s
and subtypes of Ys,r which can be obtained by just swapping the variables x and y.
For r = s these are exactly the additional equivalences listed in Table 8. But equiv++
++
alences of this kind also occur for r 6= s, e.g. we have R(X − 1) ⊂ P1 (Y5,7
, Y7,5
),
but we do not consider those cases in Theorem 34.

20

MAGDALEEN S. MARAIS AND ANDREAS STEENPAß

Theorem 36. The structure of the equivalence classes of the Yer singularities
is as shown in Table 9 where in each case, l and s are given by
l := 2 · gcd(2, r + 1), and
(
+1, if r ≡ 0 (mod 4),
s :=
−1, else.
Table 9. P1 , P2 and P3 for the Yer singularities
T1

T2

Yer+
Yer−

Yer+
Yer−

P1 (T1 , T2 )

P2 (T1 , T2 )

C(X l − 1)

R(X 2 − 1)

Yer+
Yer−

Yer−
Yer+

C(X l − s)

R(X 2 − s)

P3 (T1 , T2 )
(

2

R(X − 1),
R(X − 1),

if r ≡ 1 (mod 2)
if r ≡ 0 (mod 2)
∅

Theorem 37. The structure of the equivalence classes of the exceptional unimodal singularities is as shown in Table 10.
Table 10. P1 , P2 and P3 for the exceptional unimodal singularities
T1

T2

P1 (T1 , T2 )

P2 (T1 , T2 )

P3 (T1 , T2 )

E12

E12

C0 (X 21 − 1)

R0 (X − 1)

R0 (X − 1)

E13

E13

C0 (X

15

R0 (X − 1)

R0 (X − 1)

+
E14
−
E14
+
E14
−
E14

+
E14
−
E14
−
E14
+
E14

C0 (X

12

− 1) R0 (X − 1) R0 (X − 1)

C0 (X

12

− 1) R0 (X 2 − 1) R0 (X − 1)

Z11

Z11

Z12

Z12

+
Z13
−
Z13
+
Z13
−
Z13
+
W12
−
W12
+
W12
−
W12
+
W13
−
W13
+
W13
−
W13

+
Z13
−
Z13
−
Z13
+
Z13
+
W12
−
W12
−
W12
+
W12
+
W13
−
W13
−
W13
+
W13

− 1)

2

C0 (X 12 + 1)
C0 (X

12

C0 (X

15

C0 (X

11

∅

∅

+ 1)

∅

∅

− 1)

R0 (X − 1)

R0 (X − 1)

− 1)

R0 (X − 1)

R0 (X − 1)

9

C0 (X − 1)

R0 (X − 1)

R0 (X − 1)

9

C0 (X − 1)

R0 (X − 1)

R0 (X − 1)

9

C0 (X + 1)

R0 (X + 1)

∅

9

C0 (X + 1)

R0 (X + 1)

∅

C0 (X

10

2

− 1) R0 (X − 1) R0 (X − 1)

C0 (X

10

− 1) R0 (X 2 − 1) R0 (X − 1)

C0 (X 10 + 1)
C0 (X

10

∅

∅

+ 1)

∅

∅

2

8

C0 (X − 1)

R0 (X − 1) R0 (X − 1)

8

R0 (X 2 − 1) R0 (X − 1)

C0 (X − 1)
C0 (X 8 + 1)
8

C0 (X + 1)

∅

∅

∅

∅

THE CLASSIFICATION OF REAL SINGULARITIES USING SINGULAR, PART II

21

7. Interpretation of the Results
Looking more closely at Theorem 19 and Section 6, it turns out that the structure of the equivalence classes is quite simple for some singularity types whereas it
is very involved for others. To describe this in more detail, let us first consider the
sufficient sets given in Theorem 19:
• It suffices to work with scalings of the form φ(x) = αx, φ(y) = βy as
coordinate transformations to figure out the structure of the equivalence
classes of the hyperbolic and exceptional unimodal singularities. (To be
precise, for Yr,s with r = s we also have to take into account transformations of the form φ(x) = βy, φ(y) = αx where the variables are swapped,
cf. Table 2.)
• For the two parabolic types X9 and J10 , scalings are not sufficient. Instead, we have to consider more complicated transformations which involve more terms.
• One can see from the proof of Theorem 19 that these differences reflect the
different shapes of the normal forms: The normal forms of the hyperbolic
singularity types listed in Table 2 are weighted quasihomogeneous, those
of the exceptional singularity types are semi-quasihomogeneous. Both
shapes turn out to be very restrictive w.r.t. possible coordinate transformations. In contrast to this, the normal forms of the parabolic types are
quasihomogeneous and thus allow for more freedom in this regard.
• The singularity type Yer is an exception. It is complex equivalent to Yr,r ,
but it appears as a separate singularity type over R. There is no degreebounded sufficient set for the normal form of this type (cf. Remark 28),
so the computational methods described in Sections 5.1 and 5.3 do not
work. Instead, we have to use other methods, cf. Section 5.4.
As a consequence of the differences w.r.t. sufficient sets described above, there
are two general forms of equivalences as presented in Section 6:
• For the hyperbolic and the exceptional singularities, the equivalences between different subtypes can be described by constant factors. More precisely, if T1 and T2 are subtypes of the same hyperbolic or exceptional main
singularity type, then there exists a finite set of constants r1 , . . . , rm ∈ C
such that the equivalences between the normal forms of T1 and T2 are
exactly those of the form NF(T1 (a)) ∼ NF(T2 (ri a)) with a ∈ C or a ∈ R
as appropriate. Therefore we use the notations C(p(X)), R(p(X)) and
C0 (p(X)), R0 (p(X)) with p(X) ∈ C[X] (see Definition 9) for the hyperbolic and the exceptional cases, respectively, cf. Theorems 32 to 37.
• The equivalences which occur among subtypes of the two parabolic singularity types X9 and J10 are much more involved and cannot be written
down in terms of constant factors. We describe them as joint graphs of
certain functions, cf. Theorems 29 and 30.
The results presented in Section 6 have consequences for the algorithmic classification of the unimodal singularities of corank 2 over R. They are indeed intended
to be the first step in this direction. Once again, we can distinguish between different cases. Note that the following remarks apply to the classification over R
and therefore only deal with real coordinate transformations and real values of the
involved parameters:
• In the exceptional cases, there are no equivalences between different subtypes of the same main type and the value of the parameter is uniquely
determined, cf. Theorem 37.

22

MAGDALEEN S. MARAIS AND ANDREAS STEENPAß

• For the singularity types J10+k , X9+k , and Yer , there are no equivalences
between different subtypes of the same main type, but the parameter can
in some cases change its sign within the same subtype, cf. Theorems 32,
33, and 36.
• For Yr,s , there are equivalences even between different subtypes. Therefore
the question which real subtype a given singularity of main type Yr,s
belongs to is not always well-posed, e.g., a singularity can be both of
++
+−
type Y5,7
and of type Y5,7
. However, the first of the two signs is always
uniquely determined. The parameter can change its sign, but its absolute
value is uniquely determined, cf. Theorem 34.
• The structures of the equivalence classes of the two parabolic cases X9
and J10 are the most complicated among all the cases discussed here.
There are equivalences between different subtypes and the parameter may
change in non-trivial ways. For X9 , the possible values which a given
parameter can be transformed to can be expressed as rational functions
of this parameter (cf. Theorem 29), whereas the corresponding functions
for J10 involve radical expressions (cf. Theorem 30). Note that there are,
however, no equivalences between the subtypes X9++ , X9−− on the one
hand and X9+− , X9−+ on the other hand, i.e. the product of the two signs
which occur in the subtypes of X9 is uniquely determined.
• It is a remarkable result that for any value of a ∈ R, the normal form of
−
+
J10
(a) is R-equivalent to the normal form of J10
(a0 ) for some a0 ∈ R while
the converse is not true, cf. Theorem 30. In other words, the real subtype
−
+
J10
is redundant whereas J10
is not.
To sum up, the normal forms which are listed in the classifications of the unimodal singularities over C and over R by Arnold et al. (1985) cover the whole
space of unimodal singularities, but some of them are equivalent. There are equivalences between normal forms for different values of the parameter and also between
−
different subtypes, to an extend that the subtype J10
is even redundant.
8. Acknowledgements
We would like to thank Claus Fieker, Gert-Martin Greuel, and Gerhard Pfister
for many fruitful discussions.

REFERENCES

23

References
Arnold, V.I., 1974. Normal forms of functions in neighbourhoods of degenerate
critical points. Russ. Math. Surv. 29(2), 10-50.
Arnold, V.I., 1976. Local Normal Forms of Functions. Invent. Math. 35, 87-109.
Arnold, V.I., Gusein-Zade, S.M., Varchenko, A.N., 1985. Singularities of Differential
Maps, Vol. I. Birkhäuser, Boston.
Bruce, J.W., Gaffney, T.J., 1982. Simple Singularities of Mappings C, 0 → C2 , 0.
J. London Math. Soc. 26(3), 465-474.
Decker, W., Greuel, G.-M., Pfister, G., Schönemann, H., 2015. Singular 4-0-2 – A
computer algebra system for polynomial computations. http://www.singular.
uni-kl.de.
Decker, W., Laplagne, S., Pfister, G., Schönemann, H., 2015. primdec.lib. A
Singular 4-0-2 library for primary decomposition and radicals of ideals.
Frühbis-Krüger, A., 1999. Classification of Simple Space Curve Singularities. Commun. Algebra 27(8), 3993-4013.
Frühbis-Krüger, A., Neumer, A., 2010. Simple Cohen-Macaulay Codimension 2
Singularities. Commun. Algebra 38(2), 454-495.
Gibson, C.G., Hobbs, C.A., 1993. Simple Singularities of Space Curves. Proc. Camb.
Philos. Soc. 113(2), 297-310.
Greuel, G.-M., Lossen, C., Shustin, E., 2007. Introduction to Singularities and
Deformations. Springer, Berlin.
Greuel, G.-M., Pfister, G., 2008. A Singular Introduction to Commutative Algebra,
second ed. Springer, Berlin.
Marais, M.S., Steenpaß, A., 2015. realclassify.lib. A Singular 4-0-2 library
for classifying isolated hypersurface singularities over the reals w.r.t. right equivalence.
Marais, M.S., Steenpaß, A., 2015. The Classification of Real Singularities Using
Singular. Part I: Splitting Lemma and Simple Singularities. J. Symb. Comput.
68, 61-71.
Montes, A., Schönemann, H., 2015. grobcov.lib. A Singular 4-0-2 library for
Gröbner covers of parametric ideals.
Siersma, D., 1974. Classification and Deformation of Singularities. Dissertation,
University of Amsterdam.
Magdaleen S. Marais, University of Pretoria and African Institute for Mathematical Sciences, Department of Mathematics and Applied Mathematics, Private bag
X20, Hatfield 0028, South Africa
E-mail address: magdaleen.marais@up.ac.za
Andreas Steenpaß, Department of Mathematics, University of Kaiserslautern,
Erwin-Schrödinger-Str., 67663 Kaiserslautern, Germany
E-mail address: steenpass@mathematik.uni-kl.de

