|
D.6.1.26 secondary_no_molien
Procedure from library finvar.lib (see finvar_lib).
- Usage:
secondary_no_molien(P,REY[,deg_vec,v]);
P: a 1xn <matrix> with primary invariants, REY: a gxn <matrix>
representing the Reynolds operator, deg_vec: an optional <intvec>
listing some degrees where no non-trivial homogeneous invariants can
be found, v: an optional <int>
- Assume:
n is the number of variables of the basering, g the size of the group,
REY is the 1st return value of group_reynolds(), reynolds_molien() or
the second one of primary_invariants(), deg_vec is the second return
value of primary_char0_no_molien(), primary_charp_no_molien(),
primary_char0_no_molien_random() or primary_charp_no_molien_random()
- Return:
secondary invariants of the invariant ring (type <matrix>)
- Display:
information if v does not equal 0
- Theory:
Secondary invariants are calculated by finding a basis (in terms of
monomials) of the basering modulo primary invariants, mapping those to
invariants with the Reynolds operator and using these images as
candidates for secondary invariants.
Example:
| LIB "finvar.lib";
ring R=0,(x,y,z),dp;
matrix A[3][3]=0,1,0,-1,0,0,0,0,-1;
list L=primary_invariants(A,intvec(1,1,0));
matrix S=secondary_no_molien(L[1..3]);
print(S);
→ 1,xyz,x2z-y2z,x3y-xy3
|
|