up previous next
ring of invariants of a finite group action
NmzFiniteDiagInvariants(M: MAT, M: Ring): LIST of RINGELEM |
This function computes the ring of invariants of a finite abelian
group
G acting diagonally on the surrounding polynomial
ring
K[X_1,...,X_n].
The group is the direct product of cyclic groups generated by finitely many
elements
g_1,...,g_w.
The element
g_i acts on the indeterminate
X_j
by
g_i(X_j)= l_i^{u_{ij}} X_j where
l_i
is a primitive root of unity of order equal to
ord(g_i).
The ring of invariants is generated by all monomials satisfying the
system
u_{i1} a_1+...+u_{in} and congruent
to
0 mod ord(g_i) i=1,...,w.
The input to the function is the w times (n+1) matrix
U
with rows
u_{i1} ...u_{in} ord(g_i), i=1,...,w.
The output is the monomial subalgebra of invariants
R^G = {f in R : g_i f = f for all i=1,...,w}.
/**/ Use R::=QQ[x,y,z,w];
/**/ U := matrix([[1,1,1,1,5],[1,0,2,0,7]]);
/**/ NmzFiniteDiagInvariants(U,R);
|