Procedure from library sing.lib (see sing_lib).
sing.lib
milnor(i); i ideal or poly
Milnor number of i, if i is ICIS (isolated complete intersection singularity) in generic form, resp. -1 if not
use proc nf_icis to put generators in generic form printlevel >=0: display comments (default)
Example:
LIB "sing.lib"; int p = printlevel; printlevel = 1; ring r = 32003,(x,y,z),ds; ideal j = x5+y6+z6,x2+2y2+3z2,xyz+yx; milnor(j); → //sequence of discriminant numbers: 100,149,70 → 21 poly f = x7+y7+(x-y)^2*x2y2+z2; milnor(f); → 28 printlevel = p;