--Copyright The Numerical Algorithms Group Limited 1991.

-- This file demonstrates the capabilities of the interpreter to
-- perform coercions among different polynomial types.
)clear all
u : UP(x,COMPLEX INT)
u := (2+3*%i)*x**5 - 7*x**4 +x**2 + 89
m : MPOLY([x,y,z],COMPLEX INT)
m := u
m := m*y - z**2
m1 : MPOLY([r,z,t,x,s,y],COMPLEX INT)
m1 := m
v : DMP([x,y,z],COMPLEX INT)
v := u
u := v
v1 : DMP([r,z,t,x,s,y],COMPLEX INT)
v1 := v
v := m
v1 := m1
)clear all
u : DMP([x,y],INT)
f : UP(x,UP(y,INT))
u := x + y
f := u
u := x**2*y**9 - x**2*y**2
f := u
)clear all
u : DMP([z,x,y],INT)
f : UP(x,DMP([y,z],INT))
u := x + y + z
f := u
u := x**2*y - z*x**2 + y*z - x**3*y*z + 3
f := x**2*y - z*x**2 + y*z - x**3*y*z + 3
f := u
)clear all
u : DMP([x,y,z,w],INT)
f : UP(w,DMP([y,z],INT))
u := y**2 - w**5*y**2 - z*w + 3
f := y**2 - w**5*y**2 - z*w + 3
f := u
)clear all
(x1,x2,x3) : DMP([a,b,c,d,e,f],Fraction INT)
x1 := 2*a + 3*b - c
x2 := 3 - 3*e + f
x3 := a + b + c + d + e + f
l1 : List DMP([a,b,c,d,e,f],Fraction INT)
l2 : List UP(f,DMP([a,b,c,d,e],Fraction INT))
l1 := [x1,x2,x3]
l2 := l1
