|
D.6.3.7 LinearizeAction
Procedure from library rinvar.lib (see section rinvar_lib).
- Usage:
LinearizeAction(G,action,r); ideal G, action; int r
- Purpose:
linearize the group action ’action’ and find an equivariant embedding
of K^m where m = size(action).
- Assume:
G contains only variables var(1..r) (r = nrs)
basering = K[s(1..r),t(1..m)], K = Q or K = Q(a) and minpoly != 0.
- Return:
polynomial ring containing the ideals ’actionid’, ’embedid’, ’groupid’
- ’actionid’ is the ideal defining the linearized action of G
- ’embedid’ is a parameterization of an equivariant embedding (closed)
- ’groupid’ is the ideal of G in the new ring
- Note:
set printlevel > 0 to see a trace
Example:
LIB "rinvar.lib";
ring B = 0,(s(1..5), t(1..3)),dp;
ideal G = s(3)-s(4), s(2)-s(5), s(4)*s(5), s(1)^2*s(4)+s(1)^2*s(5)-1, s(1)^2*s(5)^2-s(5), s(4)^4-s(5)^4+s(1)^2, s(1)^4+s(4)^3-s(5)^3, s(5)^5-s(1)^2*s(5);
ideal action = -s(4)*t(1)+s(5)*t(1), -s(4)^2*t(2)+2*s(4)^2*t(3)^2+s(5)^2*t(2), s(4)*t(3)+s(5)*t(3);
LinearActionQ(action, 5);
→ 0
def R = LinearizeAction(G, action, 5);
setring R;
R;
→ // characteristic : 0
→ // number of vars : 9
→ // block 1 : ordering dp
→ // : names s(1) s(2) s(3) s(4) s(5) t(1) t(2) t(3) t(\
4)
→ // block 2 : ordering C
actionid;
→ actionid[1]=-s(4)*t(1)+s(5)*t(1)
→ actionid[2]=-s(4)^2*t(2)+s(5)^2*t(2)+2*s(4)^2*t(4)
→ actionid[3]=s(4)*t(3)+s(5)*t(3)
→ actionid[4]=s(4)^2*t(4)+s(5)^2*t(4)
embedid;
→ embedid[1]=t(1)
→ embedid[2]=t(2)
→ embedid[3]=t(3)
→ embedid[4]=t(3)^2
groupid;
→ groupid[1]=s(3)-s(4)
→ groupid[2]=s(2)-s(5)
→ groupid[3]=s(4)*s(5)
→ groupid[4]=s(1)^2*s(4)+s(1)^2*s(5)-1
→ groupid[5]=s(1)^2*s(5)^2-s(5)
→ groupid[6]=s(4)^4-s(5)^4+s(1)^2
→ groupid[7]=s(1)^4+s(4)^3-s(5)^3
→ groupid[8]=s(5)^5-s(1)^2*s(5)
LinearActionQ(actionid, 5);
→ 1
|