|  |  D.2.11.3 changevar Procedure from libraryring.lib(see  ring_lib).
 
Example:Usage:
changevar(vars[,r]); vars=string, r=ring/qring
Return:
ring R, obtained from the ring r [default: r=basering], by changing
varstr(r) according to the value of vars.
If, say, vars = "t()" and the ring r exists and has n
variables, the new basering will have name R and variables
t(1),...,t(n).
 If vars = "a,b,c,d", the new ring will have the variables a,b,c,d.
 
Note:
This procedure is useful in connection with the procedure ringtensor,
when a conflict between variable names must be avoided.
This proc uses 'execute' or calls a procedure using 'execute'.
 |  | LIB "ring.lib";
ring r=0,(x,y,u,v),(dp(2),ds);
ideal i = x^2,y^2-u^3,v;
qring Q = std(i);
setring(r);
def R=changevar("A()"); R; "";
==> // coefficients: QQ
==> // number of vars : 4
==> //        block   1 : ordering dp
==> //                  : names    A(1) A(2)
==> //        block   2 : ordering ds
==> //                  : names    A(3) A(4)
==> //        block   3 : ordering C
==> 
def Q'=changevar("a,b,c,d",Q); setring Q'; Q';
==> // coefficients: QQ
==> // number of vars : 4
==> //        block   1 : ordering dp
==> //                  : names    a b
==> //        block   2 : ordering ds
==> //                  : names    c d
==> //        block   3 : ordering C
==> // quotient ring from ideal
==> _[1]=d
==> _[2]=a2
==> _[3]=b2-c3
kill R,Q,Q';
 | 
 
 |