# Singular

#### D.15.8.21 ParToVar

Procedure from library `finitediff.lib` (see finitediff_lib).

Usage:
ParToVar(f); f a poly in the basering;

Return:
type poly; gives back the poly obtained by substituting par(i) by var(i), for the first nvars(basering parameters. Does only make sence, if setinitials is executed before -> nvars <= npars. Is the opposite action to VarToPar, see example ParToVar;

Example:
 ```LIB "finitediff.lib"; list D="Ut","Ux","Uy","U"; list V="t","x","y"; list P="a","b"; setinitials(V,D,P);////does not show the ring, as there is no output basering;///does show the ring ==> // characteristic : 0 ==> // 13 parameter : I T Px Py Cx Cy Sx Sy a b dt dx dy ==> // minpoly : 0 ==> // number of vars : 8 ==> // block 1 : ordering c ==> // block 2 : ordering lp ==> // : names i t x y cx cy sx sy ==> // quotient ring from ideal ==> _[1]=cy^2+sy^2-1 ==> _[2]=cx^2+sx^2-1 ==> _[3]=i^2+1 poly f=t**3*cx**2-cy**2*dt+i**3*sx/dt*dx; f; ==> (dx)/(dt)*i^3*sx+t^3*cx^2+(-dt)*cy^2 def g=VarToPar(f); g; ==> (I^3*Sx*dx+T^3*Cx^2*dt-Cy^2*dt^2)/(dt) def h=ParToVar(g); h==f; ==> 1 ```