# Singular

#### D.6.12.1 ArnoldAction

Procedure from library `qhmoduli.lib` (see qhmoduli_lib).

Usage:
ArnoldAction(f, [Gf, B]); poly f; list Gf, B;
'Gf' is a list of two rings (coming from 'StabEqn')

Purpose:
compute the induced action of the stabilizer G of f on T_, where T_ is given by the upper monomials B of the Milnor algebra of f.

Assume:
f is quasihomogeneous

Return:
polynomial ring over the same ground field, containing the ideals 'actionid' and 'stabid'.
- 'actionid' is the ideal defining the induced action of Gf on T_
- 'stabid' is the ideal of the stabilizer Gf in the new ring

Example:
 ```LIB "qhmoduli.lib"; ring B = 0,(x,y,z), ls; poly f = -z5+y5+x2z+x2y; def R = ArnoldAction(f); setring R; actionid; ==> actionid[1]=-s(2)*t(1)+s(3)*t(1) ==> actionid[2]=-s(2)^2*t(2)+2*s(2)^2*t(3)^2+s(3)^2*t(2) ==> actionid[3]=s(2)*t(3)+s(3)*t(3) stabid; ==> stabid[1]=s(2)*s(3) ==> stabid[2]=s(1)^2*s(2)+s(1)^2*s(3)-1 ==> stabid[3]=s(1)^2*s(3)^2-s(3) ==> stabid[4]=s(1)^2+s(2)^4-s(3)^4 ==> stabid[5]=s(1)^4+s(2)^3-s(3)^3 ==> stabid[6]=-s(1)^2*s(3)+s(3)^5 ```