| #### D.7.1.16 primary_charp Procedure from library `finvar.lib` (see finvar_lib). Usage: primary_charp(REY,ringname[,v]); REY: a <matrix> representing the Reynolds operator, Finvar::newring: the ring where the Molien series is stored, v: an optional <int> Assume: REY is the first return value of group_reynolds or reynolds_molien and ringname gives the name of a ring of characteristic 0 that has been created by molien or 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 those are chosen as primary invariants that lower the dimension of the ideal generated by the previously found invariants (see paper "Generating a Noetherian Normalization of the Invariant Ring of a Finite Group" by Decker, Heydtmann, Schreyer (1998)). Example:
    LIB "finvar.lib";
    ring R=3,(x,y,z),dp;
    matrix A[3][3]=0,1,0,-1,0,0,0,0,-1;
    list L=group_reynolds(A);
    molien(L[2..size(L)],"");
    matrix P=primary_charp(L[1],"");
    kill Finvar::newring;
    print(P);
    ==> z2,x2+y2,x2y2

User manual for Singular version 4.3.2, 2023, generated by texi2html.