<<<>>>
export(Type, AnyType, ListOf):
<<<>>>
testtype([2/3, x, {I}], ListOf(AnyType));
<<<>>>
export(Type, ListOf, PosInt, ListProduct):
<<<>>>
testtype([1, -2, 3], ListOf(DOM_INT));
<<<>>>
testtype([1, -2, 3], ListOf(PosInt));
<<<>>>
testtype([1, x], ListProduct(PosInt, DOM_IDENT));
<<<>>>
testtype(diff(f(t),t,t)+cos(t)*f(t)=3,Type::ODE(f,t));
<<<>>>
testtype(diff(f(t),t)+f(t-1),Type::ODE(f,t));
<<<>>>
export(Type, PolyOf, Rational):
<<<>>>
testtype(poly(x*y^2 + x/3 + y), PolyOf(Rational, 2));
<<<>>>
testtype(poly(x*y^2 + x/3 + y), PolyOf(DOM_RAT));
<<<>>>
testtype(2/3, Type::RealNum);
<<<>>>
export(Type, RealNum): testtype(2*I, RealNum);
<<<>>>
export(Type, SequenceOf, PosInt, Product):
<<<>>>
testtype((1, -2, 3), SequenceOf(DOM_INT));
<<<>>>
testtype((1, -2, 3), SequenceOf(PosInt));
<<<>>>
testtype((1, x), Product(PosInt, DOM_IDENT));
<<<>>>
s:=series(1/sin(x),x): testtype(s, Type::Series(Taylor));
<<<>>>
s:=series(1/sin(x),x): testtype(s, Type::Series(Laurent));
<<<>>>
export(Type, SetOf, PosInt):
<<<>>>
testtype({ 1, -2, 3 }, SetOf(DOM_INT));
<<<>>>
testtype({ 1, -2, 3 }, SetOf(PosInt));
<<<>>>
export(Type, Union, PosInt):
<<<>>>
testtype(-2/3, Union(PosInt, DOM_RAT));
<<<>>>
