"Testing derivative"

clear

T = d(a,x)
check(T = 0)
T = d(x,x)
check(T = 1)
T = d(x^2,x)
check(T = 2*x)
T = d(log(x),x)
check(T = 1/x)
T = d(exp(x),x)
check(T = exp(x))
T = d(a^x,x)
check(T = a^x*log(a))
T = d(x^x,x)-(x^x+x^x*log(x))
check(T = 0)
T = d(log(x^2+5),x)-(2*x/(5+x^2))
check(T = 0)
T = d(d(f(x),x),y)
check(T = 0)
T = d(d(f(x),y),x)
check(T = 0)
T = d(d(f(y),x),y)
check(T = 0)
T = d(d(f(y),y),x)
check(T = 0)
x=quote(x)
y=quote(y)
z=quote(z)
T = d((x*y*z,y,x+z),(x,y,z))
check(T = ((y*z,x*z,x*y),(0,1,0),(1,0,1)))
T = d(x+z,(x,y,z))
check(T = (1,0,1))
T = d(f())
check(T = d(f(),x))
T = d(x^2)
check(T = 2*x)
T = d(t^2 x^2)
check(T = 2*t^2*x)
T = d(sin(x),x)-cos(x)
check(T = 0)
T = d(cos(x),x)+sin(x)
check(T = 0)
T = d(tan(x),x)-cos(x)^(-2)
check(T = 0)
T = d(arcsin(x),x)-1/sqrt(1-x^2)
check(T = 0)
T = d(arccos(x),x)+1/sqrt(1-x^2)
check(T = 0)
T = d(arctan(x),x)-1/(1+x^2)
check(T = 0)
T = d(arctan(y/x),x)
check(T = -y/(x^2+y^2))
T = d(arctan(y/x),y)
check(T = x/(x^2+y^2))
T = d(sinh(x),x)-cosh(x)
check(T = 0)
T = d(cosh(x),x)-sinh(x)
check(T = 0)
T = d(tanh(x),x)-cosh(x)^(-2)
check(T = 0)
T = d(arcsinh(x),x)-1/sqrt(x^2+1)
check(T = 0)
T = d(arccosh(x),x)-1/sqrt(x^2-1)
check(T = 0)
T = d(arctanh(x),x)-1/(1-x^2)
check(T = 0)
T = d(sin(cos(x)),x)+cos(cos(x))*sin(x)
check(T = 0)
T = d(sin(x)^2,x)-2*sin(x)*cos(x)
check(T = 0)
T = d(f(),x)
check(T = d(f(),x))
T = d(f(x),x)
check(T = d(f(x),x))
T = d(f(y),x)
check(T = 0)
T = d(g(f(x)),x)
check(T = d(g(f(x)),x))
T = d(erf(x))-2*exp(-x^2)/sqrt(pi)
check(T = 0)
f=x^5*y^7
T = d(f)
check(T = 5*x^4*y^7)
T = d(f,x)
check(T = 5*x^4*y^7)
T = d(f,x,0)
check(T = x^5*y^7)
T = d(f,x,1)
check(T = 5*x^4*y^7)
T = d(f,x,2)
check(T = 20*x^3*y^7)
T = d(f,2)
check(T = 20*x^3*y^7)
T = d(f,2,y)
check(T = 140*x^3*y^6)
T = d(f,x,x,y,y)
check(T = 840*x^3*y^5)

