### D.1.2 par2varRing

Procedure from library `standard.lib` (see standard_lib).

Usage:
  par2varRing([l]); l list of ideals/modules [default:l=empty list]

Return:
  list, say L, with L[1] a ring where the parameters of the basering have been converted to an additional last block of variables, all of weight 1, and ordering dp.
  If a list l with l[i] an ideal/module is given, then
  l[i] + minpoly*freemodule(nrows(l[i])) is mapped to an ideal/module in L[1] with name Id[i].
  If the basering has no parameters then L[1] is the basering.

Example:

       ring R = (0,x),(y,z,u,v),lp;
    minpoly = x2+1;
    ideal i = x3,x2+y+z+u+v,xyzuv-1; i;
    ==> i[1]=(-x)
    ==> i[2]=y+z+u+v-1
    ==> i[3]=(x)*yzuv-1
    def P = par2varRing(i)[1]; P;
    ==> // coefficients: QQ considered as a field
    ==> // number of vars : 5
    ==> //        block   1 : ordering lp
    ==> //                  : names    y z u v
    ==> //        block   2 : ordering dp
    ==> //                  : names    x
    ==> //        block   3 : ordering C
    setring(P);
    Id[1];
    ==> _[1]=-x
    ==> _[2]=y+z+u+v-1
    ==> _[3]=yzuvx-1
    ==> _[4]=x2+1
    setring R;
    module m = x3*[1,1,1], (xyzuv-1)*[1,0,1];
    def Q = par2varRing(m)[1]; Q;
    ==> // coefficients: QQ considered as a field
    ==> // number of vars : 5
    ==> //        block   1 : ordering lp
    ==> //                  : names    y z u v
    ==> //        block   2 : ordering dp
    ==> //                  : names    x
    ==> //        block   3 : ordering C
    setring(Q);
    print(Id[1]);
    ==> -x,yzuvx-1,x2+1,0,   0,
    ==> -x,0,      0,   x2+1,0,
    ==> -x,yzuvx-1,0,   0,   x2+1

User manual for Singular version 4.4.1, 2025, generated by texi2html.