# Singular

#### D.6.4.10 plainInvariants

Procedure from library curvepar.lib (see curvepar_lib).

Usage:
plainInvariants(i); i ideal

Assume:
i is the defining ideal of a (reducible) plane curve singularity.

Return:
list L of charts. L[j] is the invariants of the jth branch and the last entry of L is a list containing the intersection matrix,contact matrix,resolution graph of the curve.
L[j][1]: intvec (characteristic exponents of the jth branch) L[j][2]: intvec (generators of the semigroup of the jth branch) L[j][3]: intvec (first components of the puiseux pairs of the jth branch) L[j][4]: intvec (second components of the puiseux pairs of the jth branch) L[j][5]: int (degree of conductor of the jth branch) L[j][6]: intvec (multiplicity sequence of the jth branch. L[last][1]: intmat (intersection matrix of the branches) L[last][2]: intmat (contact matrix of the branches)
L[last][3]: intmat (resolution graph of the curve)

Example:
 LIB "curvepar.lib"; ring r=0,(x,y),ds; ideal i=x14-x4y7-y11; plainInvariants(i); ==> [1]: ==> [1]: ==> 7,10 ==> [2]: ==> 7,10 ==> [3]: ==> 10 ==> [4]: ==> 7 ==> [5]: ==> 54 ==> [6]: ==> 7,3,3,1,1,1 ==> [2]: ==> [1]: ==> 1 ==> [2]: ==> 1 ==> [3]: ==> 0 ==> [4]: ==> 0 ==> [5]: ==> 0 ==> [6]: ==> 1 ==> [3]: ==> [1]: ==> 1 ==> [2]: ==> 1 ==> [3]: ==> 0 ==> [4]: ==> 0 ==> [5]: ==> 0 ==> [6]: ==> 1 ==> [4]: ==> [1]: ==> 1 ==> [2]: ==> 1 ==> [3]: ==> 0 ==> [4]: ==> 0 ==> [5]: ==> 0 ==> [6]: ==> 1 ==> [5]: ==> [1]: ==> 1 ==> [2]: ==> 1 ==> [3]: ==> 0 ==> [4]: ==> 0 ==> [5]: ==> 0 ==> [6]: ==> 1 ==> [6]: ==> [1]: ==> 0,7,7,7,7, ==> 0,0,1,1,1, ==> 0,0,0,1,1, ==> 0,0,0,0,1, ==> 0,0,0,0,0 ==> [2]: ==> 0,1,1,1,1, ==> 1,0,1,1,1, ==> 1,1,0,1,1, ==> 1,1,1,0,1, ==> 1,1,1,1,0 ==> [3]: ==> 1,0,0,1,0,0,0,1,1,1,1, ==> 0,2,1,0,0,0,0,0,0,0,0, ==> 0,1,3,0,0,1,0,0,0,0,0, ==> 1,0,0,4,1,0,0,0,0,0,0, ==> 0,0,0,1,5,1,0,0,0,0,0, ==> 0,0,1,0,1,6,1,0,0,0,0, ==> 0,0,0,0,0,1,-1,0,0,0,0, ==> 1,0,0,0,0,0,0,-2,0,0,0, ==> 1,0,0,0,0,0,0,0,-3,0,0, ==> 1,0,0,0,0,0,0,0,0,-4,0, ==> 1,0,0,0,0,0,0,0,0,0,-5