p; q;
subst(Y/X,X,x)
substvec(x+y,[x,y],[1,x])
substvec([x,y],[x,y],[[1,2],3])
substvec([x,y],[x,y],[[1,2],[3]])
substvec([x,y],[x,y],[[1,2],[3,4]])
substvec([x,y,z],[x,y,z],[[1,2],[3,4],[5,6]])
substvec([x,y],[x,y],[[x+y,x],[y,x+y]])

\\ #1321
v = [p + w*q, w*p + q] * Mod(1, w + 1);
substvec(x+y, [x, y], v)
\\ #1447
subst(O(x^2),x,0*x)
subst(x+O(x^2),x,Mod(1,3))
subst(x+O(x^2),x,Mod(0,3))
subst(1/x+O(x^2),x,Mod(0,3))
subst(2+x+O(x^2),x,Mod(0,3))
subst(Pol(0),x,Mod(1,3))
subst(Pol(0),x,Mod(1,3)*matid(2))
subst(Pol(1),x,Mod(1,3))
subst(Pol(1),x,Mod(1,3)*matid(2))
subst(y+1,x,Mod(1,3)*matid(2))
subst(1+y+O(y^2),x,Mod(1,3)*matid(2))
subst(1,x,Mod(1,3)*matid(2))
subst(0,x,Mod(1,3)*matid(2))
subst(Pol(0),x,Mat(Mod(1,3)))
subst(Pol(1),x,Mat(Mod(1,3)))
subst(1,x,Mat(Mod(1,3)))
subst(0,x,Mat(Mod(1,3)))

type(subst(Pol(0),'y,1))
type(subst(Pol(0),'x,1))
type(subst(Pol(0),'y,Mod(1,3)))
type(subst('u^0,u,x))
type(subst('x^0,'y,1))
type(subst('x*'y,'y,0))

subst(x+1, x, [2,3])
subst(x+1, x, [2,3]~)
substpol(x,1/x,y)
substpol(Mod(x*y^2, y^3*x^2+1), y^2,y)
substpol(x*y^2/(y^3*x^2+1), y^2,y)
substpol(List(), y^2,y)
substpol(List(x^2*y^2), y^2,y)
substpol(x^2+y^3*x^3+O(x^4),y^2, y)
variables(substpol(x,1/x,t))
variables(substpol(x+1+1/x,x+1/x,t))

subst(1,x,[;])
subst(1,x,Mat([1,2]))
subst(x^2+x^3+O(x^4),x, 2*y+O(y^2))

substpol(1+O(x^2),x^2,x)
substpol(x^2+O(x^4),x^2,x)
substpol(x+O(x^4),x^2,x)
substpol(1,x^2,x)

\\#1727
substvec(1+x+y+x*y+O(x^2), [x,y],[x,y])

subst(Mod(1/z,y),z,x)
\\#1988
subst(Mod(-a,a^2-2),z,0)

subst(((-6*t^2-t)*u^4+(t^2)*u^3+(P)*t^3*u)/u^2,t,0)

\\#2264
p=s1*x+s1*x^2+(1/2*s1^2+s1+s2)*x^3+(1/6*s1^3+3/2*s1^2+(s2+1)*s1+(s2+s3))*x^4+(1/24*s1^4+7/6*s1^3+(1/2*s2+3)*s1^2+(3*s2+(s3+1))*s1+(1/2*s2^2+2*s2+(s3+s4)))*x^5+(1/120*s1^5+5/8*s1^4+(1/6*s2+25/6)*s1^3+(7/2*s2+(1/2*s3+5))*s1^2+(1/2*s2^2+7*s2+(3*s3+(s4+1)))*s1+(3/2*s2^2+(s3+2)*s2+(s3+(s4+s5))))*x^6+(1/720*s1^6+31/120*s1^5+(1/24*s2+15/4)*s1^4+(5/2*s2+(1/6*s3+65/6))*s1^3+(1/4*s2^2+13*s2+(7/2*s3+(1/2*s4+15/2)))*s1^2+(7/2*s2^2+(s3+13)*s2+(6*s3+(3*s4+(s5+1))))*s1+(1/6*s2^3+9/2*s2^2+(3*s3+(s4+3))*s2+(1/2*s3^2+2*s3+(2*s4+(s5+s6)))))*x^7+(1/5040*s1^7+7/80*s1^6+(1/120*s2+301/120)*s1^5+(31/24*s2+(1/24*s3+175/12))*s1^4+(1/12*s2^2+91/6*s2+(5/2*s3+(1/6*s4+70/3)))*s1^3+(15/4*s2^2+(1/2*s3+36)*s2+(25/2*s3+(7/2*s4+(1/2*s5+21/2))))*s1^2+(1/6*s2^3+14*s2^2+(7*s3+(s4+22))*s2+(1/2*s3^2+11*s3+(7*s4+(3*s5+s6))))*s1+(7/6*s2^3+(1/2*s3+17/2)*s2^2+(7*s3+(3*s4+(s5+3)))*s2+(3/2*s3^2+(s4+2)*s3+(2*s4+(s5+(s6+s7))))))*x^8+O(x^9);
subst(p, x, x); \\ takes oo time if content(p) is computed

\\#2267
subst(O(y) + x + O(x^2), x, (1 - y + O(y^2))*x + O(x^2))

\\#2364
subst(Mod(y^4+y/t^3+1/t^6+1/t^12,2),y,t^-1+t^-3+O(t^100))

\\#2565
{
x1=
Mod(21664460/9330057*t^15 - 191313205/18660114*t^14 -
111678844/9330057*t^13 + 1216843451/18660114*t^12 +
461984720/9330057*t^11 - 921914329/9330057*t^10 -
240563560/3110019*t^9 - 2711591027/18660114*t^8 -
2861932214/9330057*t^7 + 3340545232/9330057*t^6 + 4362074636/3110019*t^5 +
11468434639/9330057*t^4 + 90614081/848187*t^3 - 1043498858/3110019*t^2 -
882894976/9330057*t + 4744475/1036673,
t^16 - 4*t^15 - 7*t^14 + 26*t^13 + 33*t^12 - 34*t^11 - 51*t^10 -
76*t^9 - 158*t^8 + 100*t^7 + 669*t^6 + 778*t^5 + 261*t^4 - 128*t^3 -
100*t^2 - 14*t + 1);
y1=
Mod(9436330/9330057*t^15 - 13837621/3110019*t^14 -
99537241/18660114*t^13 + 266729318/9330057*t^12 +
22779814/1036673*t^11 - 45584945/1036673*t^10 -
35257972/1036673*t^9 - 193768309/3110019*t^8 -
837865087/6220038*t^7 + 488484232/3110019*t^6 + 1277859469/2073346*t^5 +
1663486070/3110019*t^4 + 703904849/18660114*t^3 - 158423625/1036673*t^2 -
749625223/18660114*t + 56335111/18660114,
t^16 - 4*t^15 - 7*t^14 + 26*t^13 + 33*t^12 - 34*t^11 - 51*t^10 -
76*t^9 - 158*t^8 + 100*t^7 + 669*t^6 + 778*t^5 + 261*t^4 - 128*t^3 -
100*t^2 - 14*t + 1);
}
substvec((-20*y^2 + 9)*x^2/(x^2 - y^2), ['x,'y], [x1,y1])
