Home Online Manual
Top
Back: primary_charp_without
Forward: primary_charp_random
FastBack:
FastForward:
Up: finvar_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.7.1.20 primary_char0_random

Procedure from library finvar.lib (see finvar_lib).

Usage:
primary_char0_random(REY,M,r[,v]);
REY: a <matrix> representing the Reynolds operator, M: a 1x2 <matrix> representing the Molien series, r: an <int> where -|r| to |r| is the range of coefficients of the random combinations of bases elements, v: an optional <int>

Assume:
REY is the first return value of group_reynolds or reynolds_molien and M the one of molien or the second one of reynolds_molien

Display:
information about the various stages of the programme if v does not equal 0

Return:
primary invariants (type <matrix>) of the invariant ring

Theory:
Bases of homogeneous invariants are generated successively and random linear combinations are chosen as primary invariants that lower the dimension of the ideal generated by the previously found invariants (see "Generating a Noetherian Normalization of the Invariant Ring of a Finite Group" by Decker, Heydtmann, Schreyer (1998)).

Example:
 
LIB "finvar.lib";
ring R=0,(x,y,z),dp;
matrix A[3][3]=0,1,0,-1,0,0,0,0,-1;
matrix REY,M=reynolds_molien(A);
matrix P=primary_char0_random(REY,M,1);
print(P);
==> z2,x2+y2,x4+y4-z4