# d(y,x,n,a) is fractional differentiation of y with x in n order at x = a; d(a_ and b_,x_,n_):=d(a,x,n) and d(b,x,n); d(a_ and b_,x_):=d(a,x) and d(b,x); d(x_=>a_ and b_,x_,n_):=d(x=>a,x,n) and d(x=>b,x,n); d(x_=>a_ and b_,x_):=d(x=>a,x) and d(x=>b,x); d(a_=b_,x_,n_):=d(a,x,n)=d(b,x,n); d(a_+b_,x_,n_):=d(a,x,n)+d(b,x,n); d(a_*b_,x_,n_):= if(n>0 and n<=1, if(hasnot(a,x), a*d(b,x,n), a*d(b,x,n)+b*d(a,x,n) )); d(1/b_,x_,n_):= if(n>0 and n<=1, -d(b,x,n)/b^2 ); d(a_/b_,x_,n_):= if(n>0 and n<=1, d(a,x,n)/b-d(b,x,n)*a/b^2 ); d(b_/a_,x_,n_):= if(n>0 and n<=1, d(b,x,n)/a-d(a,x,n)*b/a^2 ); d(-y_,x_,n_):= -d(y,x,n); d(a_=b_,x_):=d(a,x)=d(b,x); d(a_+b_,x_):=d(a,x)+d(b,x); d(a_*b_,x_):=If(isfree(a,x), a*d(b,x) ); d(gsolution(b_,m_,d_,y_,x_,n_),x_,m_):= -d/b*gsolution(b_,m_,d_,y_,x_,n_); d(gsolution(b_,m_,d_,y_,x_,n_),x_,n_):=0; d(gsolution(b_,1,d_,y_,x_,n_),x_):= -d/b*gsolution(b_,1,d_,y_,x_,n_); d(gsolution(b_,d_,y_,x_,n_),x_,n_):=0; d(gsolution(b_,d_,y_,x_,n_),x_):= -d/b*gsolution(b_,d_,y_,x_,n_); d(psolution(c_,d_,y_,x_,n_),x_,n_):= d+c*psolution(c,d,y,x,n); d(psolution(b_,1,c_,n_,y_,x_,p_),x_):= -c/b*psolution(b,1,c,n,y,x,p); d(psolution(b_,1,c_,n_,y_,x_,p_),x_,p_):= n; d(nsolve(y_),x_,n_):=0; d(nsolve(y_),x_):=0; d(ds(y_,x_,n_),x_,m_) := ds(y,x,n+m); d(d(y_,x_,n_),x_,m_) := d(y,x,n+m); d(d(y_,x_),x_,n_) := d(y,x,n+1); d(d(y_,x_,n_),x_) := d(y,x,n+1); d(d(y_,x_),x_) := d(y,x,2); d(integrate(y_,x_),x_, p_) := d(y,x,p-1); d(integrate(y_,x_,n_),x_) := d(y,x,1-n); d(a_*integrate(y_,x_,n_),x_) := if(hasnot(a,x), a*d(y,x,1-n) ); d(a_*integrate(y_,x_,n_),x_,p_) := if(hasnot(a,x), a*d(y,x,p-n) ); d(integrate(y_,x_,n_),x_,p_) := d(y,x,p-n); d(vector(a_,b_),x_,n_):=vector(d(a,x,n),d(b,x,n)); d(vector(a_,b_,c_),x_,n_):=vector(d(a,x,n),d(b,x,n),d(c,x,n)); d(x_*y_,x_,n_):=If(isfree(y,x),If(n>1,0), if(abs(n)<1,x*d(y,x,n)+n*d(y,x,n-1) )); d(a_*x_,x_,n_):=If(isfree(a,x),If(n>1,0), if(abs(n)<1,x*d(a,x,n)+n*d(a,x,n-1) )); d((tx_)^m_,x_,n_) := If(isfree(m,x) and d(tx,x,2)==0, if(isinteger(m) and m>0 and re(n)>m, 0, If(n<0 and n==m, 1/(-1-n)!*(-1)^(1+n)*log(tx)*d(tx,x)^n, if(n<0 and m== -1, ln(1+n,tx), if(n>0, fallingfactorial(m,n)*tx^(m-n)*d(tx,x)^n ))))); #d(y_^a_,x_,n_):= If(n>0 and isfree(a,x), a*d(y,x,n)*y^(a-n)/n! ); d(a_^x_,x_,n_):= If(n>0 and isfree(a,x), log(a)^n*a^x ); d((a_+x_^m_)^b_,x_,n_):= if(hasnot(a,b,x) and n>0 and n<=1, fallingfactorial(b,n)*(a+x^m)^(b-n)*m^n*x^(m*n-n)); d((a_+c_*x_^m_)^b_,x_,n_):= if(hasnot(a,b,c,x) and n>0 and n<=1, fallingfactorial(b,n)*(a+c*x^m)^(b-n)*c^n*m^n*x^(m*n-n)); d(c_^(a_*x_),x_,n_) := If(isfree(c,a,x),(a*log(c))^n*c^(a*x)); d(c_^(x_+b_),x_,n_) := If(isfree(c,b,x), log(c)^n*c^(x+b)); d(c_^(b_+a_*x_),x_,n_) := If(isfree(c,b,a,x), (a*log(c))^n*c^(a*x+b)); #d(exp(x_)*y_,x_,p_):= If(p>=0 and p<=1, exp(x)*(p*d(y,x,p)+y)); #d(exp(a_+x_)*y_,x_,p_):= If(isfree(a,x), e^a*d(e^x*y,x,p)); #d(exp(a_+x_)*y_,x_,p_):= If(isfree(a,x), exp(a)*d(e^x*y,x,p)); d(a_*sinh(x_),x_,p_):= d(a*e^x/2-a*exp(-x)/2,x,p); d(a_*cosh(x_),x_,p_):= d(a*e^x/2+a*exp(-x)/2,x,p); #d(sinh(x_)*f_^(x_),x_,n_):= If(isfree(f,x), exp((log(f)+1)*x)*(log(f)+1)^n/2-d(exp((log(f)-1)*x),x,n)/2 ); #d(cosh(x_)*f_^(x_),x_,n_):= If(isfree(f,x), exp((log(f)+1)*x)*(log(f)+1)^n/2+d(exp((log(f)-1)*x),x,n)/2 ); #d(sinh(x_)*f_^(-x_),x_,n_):= If(isfree(f,x), d(exp((1-log(f))*x),x,n)/2-exp((-log(f)-1)*x)*(-log(f)-1)^n/2 ); #d(cosh(x_)*f_^(-x_),x_,n_):= If(isfree(f,x), d(exp((1-log(f))*x),x,n)/2+exp((-log(f)-1)*x)*(-log(f)-1)^n/2 ); d(sinh(x_)*exp(x_),x_,n_):= exp(2x)*2^n/2; d(cosh(x_)*exp(x_),x_,n_):= exp(2x)*2^n/2; d(sinh(x_)*exp(b_*x_),x_,n_):= if(hasnot(b,x),exp((1+b)*x)*(1+b)^n/2-exp((b-1)*x)*(b-1)^n/2 ); d(cosh(x_)*exp(b_*x_),x_,n_):= if(hasnot(b,x),exp((1+b)*x)*(1+b)^n/2+exp((b-1)*x)*(b-1)^n/2 ); d(sinh(a_*x_)*exp(b_*x_),x_,n_):= if(hasnot(a,b,x),exp((a+b)*x)*(a+b)^n/2-exp((b-a)*x)*(b-a)^n/2 ); d(cosh(a_*x_)*exp(b_*x_),x_,n_):= if(hasnot(a,b,x),exp((a+b)*x)*(a+b)^n/2+exp((b-a)*x)*(b-a)^n/2 ); d(mittag(a_,a_,c_*x_^a2_),x_,a_) := If(isfree(c,x) and a2== -a, c*x^(-2a)*mittag(a,a,c*x^a2) ); d(mittag(a_,a_,x_^a2_),x_,a_) := If( a2== -a, x^(-2a)*mittag(a,a,x^a2) ); d(mittag(a_,b_,x_^a_),x_,a_) := 1/x^a/Gamma(b-a)+mittag(a,b,x^a); d(mittag(a_,b_,c_*x_^a_),x_,a_) := If(isfree(c,x), 1/x^a/Gamma(b-a)+c*mittag(a,b,c*x^a) ); d(mittag(a_,b_,x_^a_)*x_^d_,x_,a2_) := If(d==b-1, If(a2==a,x^(b-a-1)/Gamma(b-a)+x^d*mittag(a,b,x^a),If(a2== -a,x^(a+b-1)*mittag(a,a+b,x^a),x^(d-a)*mittag(a,b-a,x^a) ))); d(mittag(a_,b_,c_*x_^a_)*x_^d_,x_,a2_) := If(isfree(c,x) and d==b-1, If(a2==a,x^(b-a-1)/Gamma(b-a)+c*x^d*mittag(a,b,c*x^a), If(a2== -a,x^(a+b-1)*mittag(a,a+b,c*x^a),c*x^(d-a)*mittag(a,b-a,c*x^a) ))); d(mittag(0.5,f_)*y_,x_, -0.5):= block(c:=d(f,x,0.5)/y, if(isconstant(c), 0.5!*mittag(0.5,f)/c ) ); #d(mittag(p_,f_)*y_,x_, p2_):= If(p2<0 and p2> -1 and isfree(d(f,x,p)/y,x), mittag(p,f)/d(f,x,p)*y*p!, if(p2==p, y*d(f,x,p)*mittag(p,f)/(p!)+d(y,x,p2)*mittag(p,f) )); #d(c_*mittag(p_,f_),x_, p2_):= If(p2<0 and p2> -1 and isfree(d(f,x,p)/c,x), mittag(p,f)/d(f,x,p)*c*p!,if(p2==p, c*p^(-p)*d(f^(1/p-1),x)^p*mittag(p,f)+d(c,x,p2)*mittag(p,f) )); d(c_*mittag(p_,f_),x_, p2_):= If(p2<0 and p2> -1 and isfree(d(f,x,p)/c,x), mittag(p,f)/d(f,x,p)*c*p!,if(p2==p, c*d(f,x,p)*mittag(p,f)/(p!)+d(c,x,p2)*mittag(p,f) )); d(exp(x_)/mittag(p_,x_^p_)/x_,x_, p2_):= If(p==p2, ln(p,x)*exp(x)/mittag(p,x^p), if(p+p2==0, ln(p,x)*exp(x)/mittag(p,x^p) )); d(exp(x_)/mittag(p_,x_^p_),x_, p2_):= If(p==p2, 2*exp(x)/mittag(p,x^p), if(p+p2==0, 1/2*exp(x)/mittag(p,x^p) )); d(exp(x_)/mittag(p_,b_*x_^p_),x_, p2_):= If(p==p2, 2b*exp(x)/mittag(p,b*x^p), if(p+p2==0, 1/2/b*exp(x)/mittag(p,b*x^p) )); d(exp(x_)*mittag(p_,b_*x_^p_),x_, p2_):= If(p==p2, 2b*exp(x)*mittag(p,b*x^p), if(p+p2==0, 1/2/b*exp(x)*mittag(p,b*x^p) )); d(exp(x_)*mittag(p_,x_^p_),x_, p2_):= If(p==p2, 2*exp(x)*mittag(p,x^p), if(p+p2==0, 1/2*exp(x)*mittag(p,x^p) )); d(exp(x_)*mittag(a_,-x_^a_)/x_,x_,a2_) := If(a+a2==0, exp(x)*ln(a,x)*mittag(a,-x^a) ); d(1/mittag(a_,x_^a_)*x_^n_, x_,q_) := If(re(n)>0,if(re(q-n)>0,-x^n, if(q==n,-x^n-n!, if(isinteger(2*(n-q)) and a+q==0,-sum(n!/(n-k)!*x^(n-k),k,0,n,q)/mittag(a,x^a) )))); #d(x_/mittag(a_,x_^a_),x_,n_):= if(n==1,-x-1, if(n== -0.5,1+x^(1+n)/(1+n)!, if(n==0.5,-x/c-x^n/n!-1, if(re(n)>1,-x ))))/mittag(a,x^a); #d(1/mittag(a_,x_^a_)*x_^a_,x_,a2_) := If(a2== -a, -1/E(a,x^a)*(x^a+a!),If(a2==a, 1/E(a,x^a)*(-x^a+a!) )); #d(1/mittag(a_,-x_^a_)*x_^a_,x_,a2_) := If(a2== -a, 1/E(a,-x^a)*(x^a-a!),If(a2==a, 1/E(a,-x^a)*(x^a+a!) )); #d(1/mittag(a_,x_^a_)*x_,x_,a2_) := If(a2== -a, -1/E(a,x^a)*(x+x^a/a!+1),If(a2==a, 1/E(a,x^a)*(-x+x^a/a!) )); #d(1/mittag(a_,-x_^a_)*x_,x_,a2_) := If(a2== -a, 1/E(a,-x^a)*(x-x^a/a!+1),If(a2==a, 1/E(a,-x^a)*(x+x^a/a!) )); d(1/mittag(a_,x_^a_)*x_^a_,x_,a2_) := if(a+a2==0, -1/E(a,x^a)*(x^a+a!) ); d(1/mittag(a_,b_*x_^a_)*x_^a_,x_,a2_) := if(a+a2==0, -1/E(a,b*x^a)*(x^a/b+a!/b^2) ); d(1/mittag(a_,x_^a_)*x_,x_,a2_) := if(a+a2==0, -1/E(a,x^a)*(1+x+x^a/a!) ); d(1/mittag(a_,b_*x_^a_)*x_,x_,a2_) := if(a+a2==0, -1/E(a,b*x^a)*(1/b^3+x/b+x^a/b^2/a!) ); d(1/mittag(a_,c_*x_^a_),x_,a3_) := If(hasnot(c,x), if(a+a3==0, -1/c/mittag(a,c*x^a), if(a==a3, -c/mittag(a,c*x^a) ))); #d(1/mittag(a_,-x_^a_),x_,a2_) := If(a==a2 or -a==a2, 1/mittag(a,-x^a)); d(1/mittag(a_,x_^a_),x_,a1_) := If(a==a1 or -a==a1, -1/mittag(a,x^a)); #d(mittag(n_,f_),x_,n_):= if(n>0 and n<1, d(f,x,n)*mittag(n,f)/(abs(n))!); #d(mittag(n_,f_),x_,n_):= if(n>0 and n<1, n^(-n)*d(f^(1/n-1),x)^n*mittag(n,f)); #d(mittag(n_,x_),x_,n_):= if(n>0 and n<1, n^(-n)*x^(1-n)*mittag(n,x)); #d(mittag(a_,c_*x_^a_*y_),x_,a2_) := If(isfree(c,y,x) and a==a2, c*mittag(a,c*x^a)*y, c^sgn(a2)*mittag(a,c*x^a)*y^sgn(a2) ); d(mittag(a_,b_+x_^a_)*x_,x_,a1_) := If(abs(a)==abs(a1) and hasnot(b,x), a1*mittag(a,b+x^a)+mittag(a,b+x^a)*x ); d(mittag(a_,b_+c_*x_^a_)*x_,x_,a1_) := If(abs(a)==abs(a1) and hasnot(b,c,x), sgn(a1)*c^sgn(a1)*mittag(a,b+c*x^a)+c^sgn(a1)*mittag(a,b+c*x^a)*x ); d(mittag(a_,f_),x_,n_):= if(n>0 and n<1, (d(f,x,n)/(n)!)^sgn(n)*mittag(a,f) ); d(mittag(a_,c_*x_^a_),x_,a1_) := If(abs(a)==abs(a1) and hasnot(c,x), c^sgn(a1)*mittag(a,c*x^a) ); d(mittag(a_,b_+x_^a_),x_,a1_) := If(abs(a)==abs(a1) and hasnot(b,x), mittag(a,b+x^a) ); d(mittag(a_,b_+c_*x_^a_),x_,a1_) := If(abs(a)==abs(a1) and hasnot(b,c,x), c^sgn(a1)*mittag(a,b+c*x^a) ); d(mittag(a_,x_^a_),x_,a1_) := If(abs(a)==abs(a1), mittag(a,x^a) ); #d(Gamma(a_,f_), x_,n_) := if(n>0 and n<=1,-d(exp(-f)*f^(a-1),x,n-1)*d(f,x,n)/n! ); d(Gamma(a_,x_), x_,n_) := if(n>0 and n<=1,exp(-x)*x^(a-n),-d(exp(-x)*x^(a-1),x,n-1) ); #d(Gamma(a_,b_*x_), x_,n_) := if(hasnot(b,x), -b^a*d(exp(-b*x)*(x)^(a-1),x,n-1) ); d(Gamma(k_,a_*x_),x_,n_) := If(n>= -1 and n<0, d(x^k/k+exp(-n*x)*Gamma(k, a*x),x,1+n), If(n>0 and n<=1, (-a)^(k-n)*exp(-a*x)*x^(k-n) )); #d(Gamma(a_,x_), x_,n_) := if(n>0 and (n)<1,(-1)^n* x^(-n)* sum(binomial(n, k) *Gamma(a - k + n, x)* risingfactorial(a,k),k,0,n)); #d(Gamma(a_,x_), x_,n_) := if(abs(n)<1, Gamma(n,a,x)); #d(Gamma(x_), x_,n_) := if(n>0 and n<1, Gamma(x)*sum(binomial(n-1,k)*psi(x)^(n-1)*psi(k,x)^(k),k,0,n)); #d(Gamma(x_), x_,n_) := Gamma(n,x,0); #d(Gamma(n_,a_*log(x_)),x_,p_) := If(a+p<>0 and ((p> -1 and p<=0) or k==p), Gamma(k-p, (a+p)*log(x)) ); #d(Gamma(n_,a_*log(c_+x_)),x_,p_) := If(a+p<>0 and ((p> -1 and p<=0) or k==p), Gamma(k-p, (a+p)*log(c+x)) ); #d(Gamma(n_,log(x_)),x_,p_) := If(p> -1 and p<=0, Gamma(n-p, (1+p)*log(x)), If(p>=0 and p<=1, (-1)^(n-p)*x^(-1-p)*log(x)^(n-p) )); d(Gamma(k_,a_*log(x_)),x_,n_) := If(n>= -1 and n<0, d(log(x)^k/k+x^(-n)*Gamma(k, a*log(x)),x,1+n), If(n>0 and n<=1, (-1)^(a+k)*x^(-n-a)*log(x)^(k-n) )); #d(Gamma(k_,a_*log(x_)),x_,p_) := If(abs(p)<=1, d(log(x)^k/k+x^(-p)*Gamma(k, a*log(x)),x,1+p) ); d(Gamma(k_,log(x_)),x_,p_) := If(p>= -1 and p<0, d(log(x)^k/k+x^(-p)*Gamma(k, log(x)),x,1+p), If(p>0 and p<=1, -x^(-2p)*log(x)^(k-p) )); #d(Gamma(k_,a_*x_^m_),x_,p_):= If(p>= -1 and p<0, a^(-1/m)*(-m)^p*Gamma(k+p-p/m,a*x^m), If(p>0 and p<=1 and isfree(a,x) and k+p-p/m==1, (a)^(p/m-p)*(-a*m)^p*exp(-a*x^m) )); #d(Gamma(k_,a_*x_^m_),x_,p_):= If(p>= -1 and p<0, 1/a*(-m)^p*Gamma(k+p-p/m,a*x^m) ); d(Gamma(k_,x_^m_),x_,p_):= If(p>= -1 and p<0, (-m)^p*Gamma(k+p-p/m,x^m) ); d(Gamma(x_), x_,n_) := Gamma(x)*R(n,x); d(factorial(x_), x_,n_) := factorial(x)*R(n,x); #d(factorial(x_), x_,n_) := infints(exp((-t))*t^x*log(x)^n,t); d(inverseli(q_,f_), x_,n_) := if(n>0 and not(isinteger(n)),log(inverseli(q,f))^(n+q)*d(f,x,n)/n! ); d(inverseli(q_,f_), x_) := if(n>0 and n<=1,log(inverseli(q,f))*d(f,x) ); d(inverseli(n_,f_), x_,n_) := if(n>0 and not(isinteger(n)),log(inverseli(n,f))*d(f,x,n)/n! ); d(inverseEi(n_,f_), x_,n_) := if(n>0 and not(isinteger(n)),exp(-inverseEi(n,f))*inverseEi(n,f)*d(f,x,n)/n! ); d(inverseerfi(n_,f_), x_,n_) := if(n>0 and not(isinteger(n)),1/2*sqrt(pi)*exp(-inverseerfi(n,f)^2)*d(f,x,n)/n! ); d(inverseerf(n_,f_), x_,n_) := if(n>0 and not(isinteger(n)),1/2*sqrt(pi)*exp(inverseerf(n,f)^2)*d(f,x,n)/n! ); d(inverseli(xx_), x_,n_) := if(n>0 and n<1, log(inverseli(xx))*d(xx,x,n) ); d(inverseEi(xx_), x_,n_) :=if(n>0 and n<1, exp(-inverseEi(xx))*inverseEi(xx)*d(xx,x,n) ); d(inverseerf(xx_), x_,n_) := if(n>0 and n<1, 1/2*sqrt(pi)*exp(inverseerf(xx)^2)*d(xx,x,n) ); d(inverseerfi(xx_), x_,n_) :=if(n>0 and n<1, 1/2*sqrt(pi)*exp(-inverseerfi(xx)^2)*d(xx,x,n) ); d(Dawson(p_,b_*f_),x_,p_) := if(p>0, b-2b^2*Dawson(p,b*f)*f ); d(Dawsonm(p_,b_*f_),x_,p_):= if(p>0, b+2b^2*Dawsonm(p,b*f)*f ); d(Dawson(p_,x_),x_,p_) := if(p>0, 1-2Dawson(p,x)*x ); d(Dawsonm(p_,x_),x_,p_):= if(p>0, 1+2Dawsonm(p,x)*x ); d(Ai(n_,f_),x_,n_) := if(abs(n)<1, d(f,x,n)*AiPrime(n,f)/n! ); d(AiPrime(n_,f_),x_,n_) := if(abs(n)<1, d(f,x,n)*Ai(n,f)*f/n! ); d(ln(n_,f_),x_,n_):= if(abs(n)<1, exp(ln(n,f))*d(f,x,n)/n! ); d(sin(x_)*exp(x_),x_,n_):=sin(x+n*pi/4)*exp(x)*2^(n/2); d(cos(x_)*exp(x_),x_,n_):=cos(x+n*pi/4)*exp(x)*2^(n/2); d(sin(a_*x_)*exp(x_),x_,n_):=If(isfree(a,x), sin(a*x+n*atan(a))*exp(x)*(a^2+1)^(n/2)); d(cos(a_*x_)*exp(x_),x_,n_):=If(isfree(a,x), cos(a*x+n*atan(a))*exp(x)*(a^2+1)^(n/2)); d(sin(x_)*exp(b_*x_),x_,n_):=If(isfree(b,x), sin(x+n*atan(1/b))*exp(b*x)*(1+b^2)^(n/2)); d(cos(x_)*exp(b_*x_),x_,n_):=If(isfree(b,x), cos(x+n*atan(1/b))*exp(b*x)*(1+b^2)^(n/2)); d(sin(a_*x_)*exp(b_*x_),x_,n_):=If(isfree(a,b,x), sin(a*x+n*atan(a/b))*exp(b*x)*(a^2+b^2)^(n/2)); d(cos(a_*x_)*exp(b_*x_),x_,n_):=If(isfree(a,b,x), cos(a*x+n*atan(a/b))*exp(b*x)*(a^2+b^2)^(n/2)); d(sin(x_+b_)*exp(x_),x_,n_):=If(isfree(b,x), sin(x+n*pi/4+b)*exp(x)*2^(n/2)); d(cos(x_+b_)*exp(x_),x_,n_):=If(isfree(b,x), cos(x+n*pi/4+b)*exp(x)*2^(n/2)); d(sin(x_+c_)*exp(b_*x_),x_,n_):=If(isfree(c,b,x), sin(c+x+n*atan(1/b))*exp(b*x)*(1+b^2)^(n/2)); d(cos(x_+c_)*exp(b_*x_),x_,n_):=If(isfree(c,b,x), cos(c+x+n*atan(1/b))*exp(b*x)*(1+b^2)^(n/2)); d(exp(x_)*sin(a_*x_+b_),x_,n_):=If(isfree(a,b,x), sin(a*x+n*atan(a)+b)*exp(x)*(a^2+1)^(n/2) ); d(exp(x_)*cos(a_*x_+b_),x_,n_):=If(isfree(a,b,x), cos(a*x+n*atan(a)+b)*exp(x)*(a^2+1)^(n/2) ); d(exp(c_*x_)*sin(a_*x_+b_),x_,n_):=If(isfree(a,b,c,x), sin(a*x+b+n*atan(a/c))*exp(c*x)*(a^2+c^2)^(n/2) ); d(exp(c_*x_)*cos(a_*x_+b_),x_,n_):=If(isfree(a,b,c,x), cos(a*x+b+n*atan(a/c))*exp(c*x)*(a^2+c^2)^(n/2) ); d((x_+b_)^k_*(x_+d_)^m_,x_,n_):= If(isfree(b,k,d,m,x), sum(fallingfactorial(k,n-r)*fallingfactorial(m,r)*binomial(n,r)*(x+b)^(k-n+r)*(x+d)^(m-r),r,0,ceil(abs(m)))); d((a_*x_+b_)^k_*(c_*x_+d_)^m_,x_,n_):= If(isfree(a,b,k,c,d,m,x), sum(binomial(n,r)*a^(r-n)*c^r*fallingfactorial(k,n-r)*fallingfactorial(m,r)*(a*x+b)^(k-n+r)*(c*x+d)^(m-r),r,0,ceil(abs(m)))); d((x_+b_)^k_*(c_*x_+d_)^m_,x_,n_):= If(isfree(b,k,c,d,m,x), sum(binomial(n,r)*c^r*fallingfactorial(k,n-r)*fallingfactorial(m,r)*(x+b)^(k-n+r)*(c*x+d)^(m-r),r,0,ceil(abs(m)))); d(x_^k_*(x_+d_)^m_,x_,n_):= If(isfree(k,d,m,x), sum(binomial(n,r)*fallingfactorial(k,n-r)*fallingfactorial(m,r)*x^(k-n+r)*(x+d)^(m-r),r,0,ceil(abs(m)))); d(x_^k_*(c_*x_+d_)^m_,x_,n_):= If(isfree(k,c,d,m,x), sum(binomial(n,r)*c^r*fallingfactorial(k,n-r)*fallingfactorial(m,r)*x^(k-n+r)*(c*x+d)^(m-r),r,0,ceil(abs(m)))); #d((c_+x_^2)^k_,x_,n_) := If(isfree(c,x), d((sqrt(-c)+x)^k*(-sqrt(-c)+x)^k,x,n)); #d((c_-x_^2)^k_,x_,n_) := If(isfree(c,x), d((sqrt(c)+x)^k*(sqrt(c)-x)^k,x,n)); d((k_+x_^2)^(-0.5),x_,n_) := If(isfree(k,x), asinh(n+1,x/sqrt(k)) ); d((k_-x_^2)^(-0.5),x_,n_) := If(isfree(k,x), asin(n+1,x/sqrt(k)) ); d(1/(k_+x_^2),x_,n_) := If(isfree(k,x), If(k<0, -atanh(1+n,x/sqrt(-k))/sqrt(-k), atan(1+n,x/sqrt(k))/sqrt(k) )); d(1/(k_+b_*x_^2),x_,n_) := If(isfree(k,b,x), If(b*k<0, sgn(k)*atanh(1+n,x/sqrt(abs(k/b)))/sqrt(abs(k*b)), sgn(k)*atan(1+n,x/sqrt(abs(k/b)))/sqrt(abs(k*b)) )); d(1/(c_+b_*x_+x_^2), x_,n_) := If(isfree(b,c,x), If(4c==b*b, -d(1/(x+b/2),x,1+n), if(4c>b*b, 2atan(1+n,(2*x+b)/sqrt(4c-b*b))/sqrt(4c-b*b), -2*atanh(1+n,(2x+b)/sqrt(-4c+b*b))/sqrt(-4c+b*b) ))); d(1/(c_+b_*x_+a_*x_^2), x_,n_) := If(isfree(a,b,c,x), If(4a*c==b*b, -d(1/(x+b/2/a),x,1+n)/a, if(4a*c>b*b,2*atan(1+n,(2a*x+b)/sqrt(4a*c-b*b))/sqrt(4a*c-b*b), -2*atanh(1+n,(2a*x+b)/sqrt(-4a*c+b*b))/sqrt(-4a*c+b*b) ))); d(log(x_)^m_*x_^k_,x_,n_):= If(n> -1 and n<0, (-1)^(m-k)*Gamma(m-n,(n-k)*log(x)), If(abs(m)==abs(n), (-1)^(-m)*d(Gamma(m+1,-log(x)),x,1+n) )); #d(log(x_)^m_*x_^k_,x_,n_):= if(k== -1 and m==n, log(log(x))^(-n), if(k==-1 and m==-1,ln(1+n,log(x)), If(n>= -1 and n<=0, If(k== -1, 1/(m+1)*d(log(x)^(m+1),x,n+1), If(k==n, (-1)^(m-n)*(-k-1)^(-m)/(k+1)*log(x)^(m-n), (-k-1)^(-m)/(k+1)*Gamma(m-n, (-k+n)*log(x)) )), (-k-1)^(-m)/(k+1)*d(Gamma(m+1, (-k-1)*log(x)),x,1+n) ))); #d(x_^k_*log(x_)^m_,x_,n_):= If(n>= -1 and n<=0, If(k==-1, 1/(m+1)*d(log(x)^(m+1),x,n+1), If(k==n, (-1)^(-m)*(-k-1)^(-m)/(k+1)*log(x)^(m-n), 1/(1+k)*d(Gamma(m+1, (-k-1)*log(x)),x,n+1) ))); #d(log(x_)*x_^m_,x_,n_) := If(n>= -1 and n<=0, If(n==m,log(x)^(1-m), If(m== -1, 1/2*d(log(x)^2,x,n+1), -(m+1)^(-2)*Gamma(1-n, (-m+n)*log(x)) )), If(isinteger(n-m) and n>m, -(-1)^(n-m)*(n-m-1)!*Gamma(1+m)*x^(m-n), If(m> -1, fallingfactorial(m,n)*(psi(1+m)-psi(1+m-n)+log(x))*x^(m-n), If(m< -1, fallingfactorial(m,n)*(psi(abs(m))-psi(abs(m-n))+log(x))*x^(m-n) )))); d(log(x_)*x_^k_,x_,n_) := if(n>0,if(k==n, gamma(1 + n)*(gamma + log(x) + psi(1 + n)), If(isinteger(n-k) and n>k, (-1)^(n-k-1)*(n-k-1)!*(k)!*x^(k-n), (-1)^n*x^(k - n)* risingfactorial(-k,n)* (log(x) + psi(1 + k) - psi(1 + k - n)) ))); d(log(x_)*x_,x_,n_) := If(n>1, (-1)^n*(n-2)!*x^(1-n), (psi(2)-psi(2-n)+log(x))/Gamma(2-n)*x^(1-n)); #d(log(x_)*x_^m_,x_,n_) := If(n>= -1 and n<=0, If(n==m, -(-1)^n*(m+1)^(-2)*log(x)^(1-m), If(m== -1, 1/2*d(log(x)^2,x,n+1), -(m+1)^(-2)*Gamma(1-n, (-m+n)*log(x)) )), -(m+1)^(-2)*d(Gamma(2, -(m+1)*log(x)),x,1+n)); d(log(x_)/x_,x_,n_):=If(n<0,1/2*d(log(x)^2,x,n+1)); #d(x_^m_*log(x_),x_,n_) := If(m== -1, 1/2*d(log(x)^2,x,n+1), If(n>= -1 and n<=0, If(n==m, -(-1)^n*(m+1)^(-2)*log(x)^(1-m), -(m+1)^(-2)*Gamma(1-n, (-m+n)*log(x)) )), -(m+1)^(-2)*d(Gamma(2, -(m+1)*log(x)),x,1+n)); d(exp(x_)*log(x_),x_,n_):= If(n>1, exp(x)*log(x)+exp(x)*sum((-1)^(1+k)*binomial(n,k)*Gamma(k)*x^(-k), k,1,n), if(n>0, exp(x)*log(x)+exp(x)*d(log(x),x,n))); d(exp(-x_)*log(x_),x_,n_):= if(n>1, (-1)^n*exp(-x)*(log(x)-sum(binomial(n,k)*Gamma(k)*x^(-k), k,1,n)) ); d(exp(x_)*x_^m_,x_,n_):= If(m== -1, Ei(1+n,x), If(m== -n and abs(n)<=1, exp(x)*x^m-m!*exp(x), If(m==n,if(abs(n)<=1, exp(x)*x^m+m!*exp(x),n!*exp(x)*laguerreplus(n,x)), If(n>0 and isinteger(m), exp(x)*sum(binomial(n,k)*fallingfactorial(m,k)*x^(m-k), k,0,abs(m)), (-1)^(-m)*gamma(m-n,(-x)) )))); #d(exp(a_*x_)*x_^m_,x_,n_):= If(isfree(m,a,x), If(n>0 and isinteger(n), exp(a*x)*sum(a^(n-k)*binomial(n,k)*fallingfactorial(m,k)*x^(m-k), k,0,n), If(m>0 and n> -1 and isinteger(m), exp(a*x)*sum(a^(n-k)*binomial(n,k)*fallingfactorial(m,k)*x^(m-k), k,0,abs(m)), If(m== -1, Ei(1+n,a*x), (-a)^(-m)*Gamma(n+1,m+1, -a*x) )))); d(exp(a_*x_)*x_^m_,x_,n_):= If(isfree(m,a,x), If(m== -1, Ei(1+n,a*x), If(n>0 and isinteger(m), exp(a*x)*sum(a^(n-k)*binomial(n,k)*fallingfactorial(m,k)*x^(m-k), k,0,abs(m)), (-1)^m*(a)^(n-m)*gamma(m-n,(-a)*x) ))); d(exp(-x_)*x_^n_,x_,n_):=exp(-x)*laguerre(n,x); #d(exp(c_+x_)*x_^m_,x_,n_):= If(m== -1, exp(c)*Ei(1+n,x), If((n>0 or m>0) and isinteger(m), exp(c+x)*sum(binomial(n,k)*fallingfactorial(m,k)*x^(m-k), k,0,abs(m)), If(isfree(m,c,x), If(n>0 and isinteger(n), exp(c+x)*sum(binomial(n,k)*fallingfactorial(m,k)*x^(m-k), k,0,n) )))); d(exp(c_+a_*x_)*x_^m_,x_,n_):= If(isfree(m,c,a,x), If(m== -1, exp(c)*Ei(1+n,a*x), If((n>0 or m>0) and isinteger(m), exp(c+a*x)*sum(a^(n-k)*binomial(n,k)*fallingfactorial(m,k)*x^(m-k), k,0,abs(m)), If(n>0 and isinteger(n), exp(c+a*x)*sum(a^(n-k)*binomial(n,k)*fallingfactorial(m,k)*x^(m-k), k,0,n) )))); d(exp(x_)*(c_+x_)^m_,x_,n_):= If(isfree(c,m,x), If((n>0 or m>0) and isinteger(m), exp(x)*sum(binomial(n,k)*fallingfactorial(m,k)*(c+x)^(m-k), k,0,abs(m)), if(n>0 and isinteger(n), exp(x)*sum(binomial(n,k)*fallingfactorial(m,k)*(c+x)^(m-k), k,0,n) ))); d(exp(x_)*(c_+b_*x_)^m_,x_,n_):= If(isfree(b,c,m,x), If((n>0 or m>0) and isinteger(m), b^m*exp(x)*sum(binomial(n,k)*fallingfactorial(m,k)*(c/b+x)^(m-k), k,0,abs(m)), if(n>0 and isinteger(n), b^m*exp(x)*sum(binomial(n,k)*fallingfactorial(m,k)*(c/b+x)^(m-k), k,0,n) ))); d(exp(a_*x_)*x_,x_,n_) := if(hasnot(a,x) and abs(n)<1,a^n*exp(a*x)*x+n/a*a^n*exp(a*x) ); d(exp(-x_)*x_,x_,n_) := (-1)^n*exp(-x)*x-n*(-1)^n*exp(-x); d(exp(x_+c_)*x_,x_,n_) := if(hasnot(c,x),exp(x+c)*x+n*exp(c+x) ); d(exp(a_*x_+c_)*x_,x_,n_) := if(hasnot(a,c,x) and abs(n)<1,a^n*exp(a*x+c)*x+n/a*a^n*exp(a*x+c) ); d(exp(x_)*x_,x_,n_) := exp(x)*x+n*exp(x); d(exp(x_)/x_,x_,n_) := Ei(1+n,x); d(exp(a_*x_)/x_,x_,n_) := Ei(1+n,a*x); d(exp(x_)/(c_+x_),x_,n_) := if(hasnot(c,x), exp(-c)*Ei(1+n,c+x) ); d(exp(x_)/(c_+b_*x_),x_,n_) := if(hasnot(b,c,x), exp(-c/b)/b*Ei(1+n,c/b+x) ); d(sin(a_*x_)*x_^m_,x_,n_):= if(isconstant(a) and isinteger(m),sum(a^(n-k)*binomial(n,k)*fallingfactorial(m,k)*x^(m-k)*sin(a*x+(n-k)*pi/2), k,0,abs(m)), If(n>-1 and n<0, -(-i)^(-m)* d(Gamma(1 + m, (-a*i)* x),x,1+n)/2 - d(Gamma(1 + m, a*i* x),x,n+1)*i^(-m)/2 )); d(cos(a_*x_)*x_^m_,x_,n_):= if(isconstant(a) and isinteger(m),sum(a^(n-k)*binomial(n,k)*fallingfactorial(m,k)*x^(m-k)*cos(a*x+(n-k)*pi/2), k,0,abs(m)), If(n>-1 and n<0, -(-i)^(-m)* d(Gamma(1 + m, (-a*i)* x),x,1+n)/2 + d(Gamma(1 + m, a*i* x),x,n+1)*i^(-m)/2 )); d(sin(x_)*x_^m_,x_,n_):= if(isinteger(m),sum(binomial(n,k)*fallingfactorial(m,k)*x^(m-k)*sin(x+(n-k)*pi/2), k,0,abs(m)), If(n>-1 and n<0, -(-i)^(-m)* d(Gamma(1 + m, (-i)* x),x,1+n)/2 - d(Gamma(1 + m, i* x),x,n+1)*i^(-m)/2 )); d(cos(x_)*x_^m_,x_,n_):= if(isinteger(m),sum(binomial(n,k)*fallingfactorial(m,k)*x^(m-k)*cos(x+(n-k)*pi/2), k,0,abs(m)), If(n>-1 and n<0, -(-i)^(-m)* d(Gamma(1 + m, (-i)* x),x,1+n)/2 + d(Gamma(1 + m, i* x),x,n+1)*i^(-m)/2 )); d(sinh(x_)*x_^m_,x_,n_):= if(isinteger(m),sum(binomial(n,k)*fallingfactorial(m,k)*x^(m-k)*sinh(x+(n-k)*pi*i/2), k,0,abs(m)), If(n>-1 and n<0, (-1)^(-m)* d(Gamma(1 + m, -x),x,1+n)/2 + d(Gamma(1 + m, x),x,n+1)/2 )); #d(cosh(x_)*x_^m_,x_,n_):= If(m<0, (-1)^(-m)* d(Gamma(1 + m, -x),x,1+n)/2 - d(Gamma(1 + m, x),x,n+1)/2, sum(binomial(n,k)*fallingfactorial(m,k)*x^(m-k)*cosh(x+(n-k)*pi*i/2), k,0,m)); d(cosh(x_)*x_^m_,x_,n_):= if(isinteger(m),sum(binomial(n,k)*fallingfactorial(m,k)*x^(m-k)*cosh(x+(n-k)*pi*i/2), k,0,abs(m)), If(n>-1 and n<0, (-1)^(-m)*d(Gamma(1 + m, -x),x,1+n)/2 - d(Gamma(1 + m, x),x,n+1)/2 )); #d(cosh(x_)*x_^m_,x_,n_):= if(n>0, if(isinteger(n), sum(binomial(n,k)*fallingfactorial(m,k)*x^(m-k)*cosh(x+(n-k)*pi*i/2), k,0,n), If(isinteger(m),sum(binomial(n,k)*fallingfactorial(m,k)*x^(m-k)*cosh(x+(n-k)*pi*i/2), k,0,abs(m)) ))); d(exp(x_^m_)*x_,x_,n_):=If(n>= -1 and n<0 and m*n==(n-1), exp(x^m)*m^n); d(exp(-x_^m_)*x_,x_,n_):=If(n>= -1 and n<0 and m*n==(n-1), exp(-x^m)*(-m)^n); #d(exp(x_^m_)*x_^k_,x_,n_):= If(n>= -1 and n<0, If(k==n*(1-m), exp(x^m)*m^n )); d(exp(x_^m_)*x_^k_,x_,n_):= If(n>= -1 and n<0, If(k==n*(1-m), exp(x^m)*m^n, -(-1)^((k-n)/(n*m))*m^n*Gamma((k-n)/(-n*m),-x^m) )); #d(exp(x_^m_)*x_^k_,x_,n_):= If(n>= -1 and n<0 and k==n*(1-m), exp(x^m)*m^n, -(-1)^((-1-k)/m)/m*Gamma(n+1,(k+1)/m,-x^m) ); #d(exp(a_*x_^m_)*x_^k_,x_,n_):= If(isfree(a,x), If(n>= -1 and n<0 and k==n*(1-m), exp(a*x^m)*(a*m)^n, -(-a)^((-1-k)/m)/m*Gamma(n+1,(1+k)/m, -a*x^m) )); d(exp(a_*x_^m_)*x_^k_,x_,n_):= If(isfree(a,x), If(n>= -1 and n<0, if(k==n*(1-m), exp(a*x^m)*(a*m)^n, -(-a)^((k-n)/(n*m))*m^n*Gamma((k-n)/(-n*m),-a*x^m) ))); #d(exp(a_*x_^m_)*x_^k_,x_,n_):= If(isfree(a,x), If(n>= -1 and n<0, if(k==n*(1-m), exp(a*x^m)*(a*m)^n ))); d(x_/log(a_*x_),x_,n_):=if(isfree(a,x),li(1+n,a*x^(1-n))/a); d(x_/log(x_),x_,n_):= li(1+n,x^(1-n)); d(x_^k_/log(x_),x_,n_):= li(1+n,x^(k-n)); d(x_^2/log(x_),x_,n_):= 4/3li(1+n,x^(2-n)); d(log(x_)^m_,x_,n_):= If(n> -1 and n<0, (-1)^(-m)*Gamma(m-n,n*log(x)), If(abs(m)==abs(n), (-1)^(-m)*d(Gamma(m+1,-log(x)),x,1+n) )); d(log(y)^m_,x_,n_):= If(n> -1 and n<0, (-1)^(m)*Gamma(m-n,n*log(x)), If(abs(m)==abs(n), (-1)^(m)*d(Gamma(m+1,-log(x)),x,1+n) )); d(log(x_+c_)^m_,x_,n_):= If(isfree(c,x),If(n> -1 and n<0, (-1)^m*Gamma(m-n,n*log(x+c)), If(m== -1, li(n+1,x), If(abs(m)==abs(n), (-1)^(-m)*d(Gamma(m+1,-log(x)),x,1+n) )))); d(1/(a_+log(x_)),x_,n_):=exp(-a)*li(1+n,exp(a)*x); #d(1/log(a_*x_),x_,n_):=if(isfree(a,x),li(1+n,a*x)/a); #d(1/log(a_*x_+b_),x_,n_):=if(isfree(a,b,x),li(1+n,a*x+b)/a); #d(1/log(x_),x_,n_):=If(n> -1 and n<0, li(n+1,x^n) ); d(sin(x_)/x_,x_,n_):=si(1+n,x); d(cos(x_)/x_,x_,n_):=ci(1+n,x); d(sin(a_*x_)/x_,x_,n_):=if(isfree(a,x),si(1+n,a*x)); d(cos(a_*x_)/x_,x_,n_):=if(isfree(a,x),ci(1+n,a*x)); d(sinh(x_)/x_,x_,n_):=shi(1+n,x); d(cosh(x_)/x_,x_,n_):=chi(1+n,x); d(sinh(a_*x_)/x_,x_,n_):=if(isfree(a,x),shi(1+n,a*x)); d(cosh(a_*x_)/x_,x_,n_):=if(isfree(a,x),chi(1+n,a*x)); d(psi(x_),x_,n_):= psi(n,x); d(Sophomore(a_,x_),x_,n_):=Sophomore(n,a,x); d(Sophomore(x_),x_,n_):=Sophomore(n,1,x); d(zeta(x_),x_,n_):= If(n>0,(-1)^n*sum(log(k)^n/k^x,k,2,oo)); d(zeta(x_,a_),x_,n_):= If(n>0,(-1)^n*sum(log(a+k)^n/(a+k)^x,k,2,oo)); #d(zeta(m_,x_),x_,n_):= (-1)^n*risingfactorial(m,n)*zeta(m+n,x); d(zeta(m_,x_),x_,n_):= psi(m+n-1,x); d(H(m_,x_),x_,n_):= fallingfactorial(-m,n)*H(m+n,x); d(li(n_,f_),x_,n_):= 1/log(f)*d(f,x,n)/n!; d(li(x_),x_,n_):= If(abs(n)<= 1,(-1)^n*Gamma(-n, (n-1)*log(x)) ); d(En(x_),x_,n_):= (-1)^n*En(1-n, x); d(En(m_, x_), x_,n_) := (-1)^n*En(m-n,x); d(erf(x_),x_,n_):= If(abs(n)<= 1, -(-2)^n*Gamma((n+1)/2,x^2)/sqrt(pi), -2*(-1)^n/sqrt(pi)*hermite(n-1,x)*exp(-x^2) ); d(erfi(x_),x_,n_):= If(abs(n)<= 1, (-2)^n*Gamma((n+1)/2,-x^2)/sqrt(pi), 2*(-1)^n/sqrt(pi)*hermite(n-1,x)*exp(x^2) ); d(logGamma(x_),x_,n_) := psi(n-1,x); d(abs(y_),x_,n_) := d(y,x,n)/sgn(y); d(abs(x_),x_,n_) := If(n>1,0, If(n<0, 1/sgn(x)/(-n)!*x^(1-n), 1/sgn(x)*(1-n)!*x^(1-n) )); d(sgn(y_),x_,n_) := If(n>0,0, If(n<0, 1/Gamma(1-n)*sgn(y)*x^(-n) )); d(csgn(y_),x_,n_) := If(n>0,0, If(n<0, csgn(y)*x^(-n)/(-n)! )); #d(delta(y_),x_,n_):=If(n>0,0, If(n<0, theta(y)*x^(-n)/(-n)! )); d(theta(y_),x_,n_):= delta(n-1,y); d(log(xx_),x_,n_):= If(n>0 and n<1, d(xx,x,n)/xx ); #d(log(y_),x_,n_):= If(n>0 and n<1, -(-1)^n*(n-1)!/y*d(y,x,n)/n! ); d(log(c_+x_^2),x_,n_):= if(hasnot(c,x),If(n>0, -(-1)^n*(n-1)!/(sqrt(-c)+x)^n-(-1)^n*(n-1)!/(sqrt(-c)-x)^n )); #d(log(c_+x_),x_,n_):= if(hasnot(c,x),If(n>0, -(-1)^n*(n-1)!/(c+x)^n, If(abs(n)<1,expand((log(c+x)+psi(1)-psi(1-n))/Gamma(1-n)/(c+x)^n) ))); #d(log(x_),x_,n_):= If(n>0, -(-1)^n*(n-1)!/x^n, If(abs(n)<1,expand((log(x)+psi(1)-psi(1-n))/Gamma(1-n)/x^n),ln(n,x) )); #d(ln(m_,x_),x_,n_):= If(n>1, -(-1)^n*(n-1)!/x^n, If(abs(n)<1,expand((log(x)+psi(1)-psi(1-n))/Gamma(1-n)/x^n),ln(n,x) )); #d(log(x_),x_,n_):= If(n>0, -(-1)^n*(n-1)!/x^n, If(n>= -1 and n<0, -Gamma(1-n, n*log(x)) )); #d(log(x_),x_,n_):= If(n>0 and isinteger(n), (-1)^(n+1)*(n-1)!/x^n, If(n>= -1 and n<0, -Gamma(1-n, n*log(x)) )); #d(log(x_+b_),x_,n_):= If(isfree(b,x),If(n>0, -(-1)^n*(n-1)!/(x+b)^n,If(abs(n)<=1,(log(x+b)+psi(1)-psi(1-n))/Gamma(1-n)/(x+b)^n ) )); d(gauss(x_),x_,n_) := If(n>=0 and n<=1,(-x)^n*gauss(x)); d(log(x_),x_,n_):= If(n> -1 and n<=0, (-1)*Gamma(1-n,n*log(x)), If(n>0, -(-1)^n*(n-1)!/x^n )); d(sinh(q_,f_),x_,n_) := if(abs(n)<1,(d(f,x,(n))/abs(n)!)^sgn(n)*cosh(q,f), d(f,x,n)*sinh(q+n,f) ); d(cosh(q_,f_),x_,n_) := if(abs(n)<1,(d(f,x,(n))/n!)^sgn(n)*sinh(q,f), d(f,x,n)*cosh(q+n,f) ); d(tanh(q_,f_),x_,n_) := if(abs(n)<1,(d(f,x,(n))/n!)^sgn(n)*(1-tanh(q,f)^2), d(f,x,n)*tanh(q+n,f) ); d(coth(q_,f_),x_,n_) := if(abs(n)<1,(d(f,x,(n))/n!)^sgn(n)*(1-coth(q,f)^2), d(f,x,n)*coth(q+n,f) ); d(sinh(0.5,f_),x_,-0.5) := 0.5!/d(f,x,0.5)*cosh(0.5,f) ; d(cosh(0.5,f_),x_,-0.5) := 0.5!/d(f,x,0.5)*sinh(0.5,f) ; d(sinh(inversechi(q_,f_)),x_,n_) := if(n>0 and n<=1, d(f,x,n)*inversechi(q,f)/n! ); d(cosh(inverseshi(q_,f_)),x_,n_) := if(n>0 and n<=1, d(f,x,n)*inverseshi(q,f)/n! ); d(tanh(f_),x_,n_):= if(n>0 and n<=1,d(f,x,n)*sech(f)^2 ); d(sech(xx_),x_,n_) := if(n>0 and n<=1,-tanh(xx)*sech(xx)*d(xx,x,n) ); d(csch(xx_),x_,n_) := if(n>0 and n<=1, (-coth(xx))*csch(xx)*d(xx,x,n) ); d(tanh(xx_)^2,x_,n_) := if(n>0 and n<=1, 2tanh(xx)*sech(xx)^2*d(xx,x,n) ); d(sech(xx_)^2,x_,n_) := if(n>0 and n<=1,-2tanh(xx)*sech(xx)^2*d(xx,x,n) ); d(tanh(x_),x_,n_):= tanh(n,x) ; d(cosh(x_),x_,n_) :=If(isodd(n), sinh(x),If(iseven(n), cosh(x), cosh(x+pi*i/2*n) )); d(sinh(x_),x_,n_) :=If(isodd(n), cosh(x),If(iseven(n), sinh(x), sinh(x+pi*i/2*n) )); d(coth(x_),x_,n_):= coth(n,x) ; d(1/asinh(x_),x_,n_):=chi(1+n,asinh(x)); d(1/acosh(x_),x_,n_):=shi(1+n,acosh(x)); d(inversesi(0.5,f_),x_,0.5):=csc(inversesi(0.5,f))*inversesi(0.5,f); d(inverseci(0.5,f_),x_,0.5):=sec(inverseci(0.5,f))*inverseci(0.5,f); d(inverseshi(0.5,f_),x_,0.5):=csch(inverseshi(0.5,f))*inverseshi(0.5,f); d(inversechi(0.5,f_),x_,0.5):=sech(inversechi(0.5,f))*inversechi(0.5,f); d(inversesinh(q_,f_),x_,n_) := if(n>0, d(f,x,n)*sech(inversesinh(q,f))/n! ); d(inversecosh(q_,f_),x_,n_) := if(n>0, d(f,x,n)*csch(inversecosh(q,f))/n! ); d(inversetanh(q_,f_),x_,n_) := if(n>0, d(f,x,n)*(coth(inversetanh(q,f)))/n! ); d(inversecoth(q_,f_),x_,n_) := if(n>0, d(f,x,n)*(tanh(inversecoth(q,f)))/n! ); d(inversecsch(q_,f_),x_,n_) := if(n>0, d(f,x,n)*(sinh(inversecsch(q,f)))/n! ); d(inversesech(q_,f_),x_,n_) := if(n>0, d(f,x,n)*(cosh(inversesech(q,f)))/n! ); d(inversesin(q_,f_),x_,n_) := if(n>0, d(f,x,n)*sec(inversesin(q,f))/n! ); d(inversecos(q_,f_),x_,n_) := if(n>0, d(f,x,n)*csc(inversecos(q,f))/n! ); d(inversetan(q_,f_),x_,n_) := if(n>0, d(f,x,n)*cot(inversetan(q,f))/n! ); d(inversecot(q_,f_),x_,n_) := if(n>0, d(f,x,n)*tan(inversecot(q,f))/n! ); d(inversecsc(q_,f_),x_,n_) := if(n>0, d(f,x,n)*sin(inversecsc(q,f))/n! ); d(inversesec(q_,f_),x_,n_) := if(n>0, d(f,x,n)*cos(inversesec(q,f))/n! ); d(atan(f_),x_,n_):= if(n>0 and n<=1,d(f,x,n)/(1+x^2) ); d(sin(q_,f_),x_,n_) := if(abs(n)<1, d(f,x,n)*sqrt(1-sin(q,f)^2)/n!, sin(q+n,f) ); d(cos(q_,f_),x_,n_) := if(abs(n)<1, -d(f,x,n)*sqrt(1-cos(q,f)^2)/n!, cos(q+n,f) ); d(tan(q_,f_),x_,n_) := if(abs(n)<1, d(f,x,n)*(1+tan(q,f)^2)/n!, tan(q+n,f) ); d(cot(q_,f_),x_,n_) := if(abs(n)<=1, d(f,x,n)*(1+cot(q,f)^2)/n!, cot(q+n,f) ); d(sin(0.5,f_),x_,-0.5) := 0.5!/d(f,x,0.5)*cos(0.5,f) ; d(cos(0.5,f_),x_,-0.5) := 0.5!/d(f,x,0.5)*sin(0.5,f) ; d(sin(inverseci(q_,f_)),x_,n_) := if(n>0, d(f,x,n)*inverseci(q,f)/n! ); d(cos(inversesi(q_,f_)),x_,n_) := if(n>0, d(f,x,n)*inversesi(q,f)/n! ); d(sec(xx_),x_,n_) := if(n>0 and n<=1, tan(xx)*sec(xx)*d(xx,x,n) ); d(csc(xx_),x_,n_) := if(n>0 and n<=1, (-cot(xx))*csc(xx)*d(xx,x,n) ); d(tan(f_),x_,n_):= if(n>0 and n<=1,d(f,x,n)*sec(f)^2 ); d(cot(x_),x_,n_):= if(not(isinteger(n)), cot(n,x) ); d(tan(x_),x_,n_):= if(not(isinteger(n)), tan(n,x) ); d(cos(x_),x_,n_) :=If(iseven(n/2), cos(x),If(iseven(n), -cos(x), cos(x+pi/2*n) )); d(sin(x_),x_,n_) :=If(iseven(n/2), sin(x),If(iseven(n), -sin(x), sin(x+pi/2*n) )); d(tan(xx_)^2,x_,n_) := if(n>0 and n<=1, 2tan(xx)*sec(xx)^2*d(xx,x,n) ); d(sec(xx_)^2,x_,n_) := if(n>0 and n<=1, 2tan(xx)*sec(xx)^2*d(xx,x,n) ); d(1/asin(x_),x_,n_):=ci(1+n,asin(x)); d(1/acos(x_),x_,n_):=si(1+n,acos(x)); d(exp(xx_),x_,n_):=if(n>0 and n<=1, exp(xx)*d(xx,x)^n ); d(exp(x_^m_),x_,n_):= If(n>= -1 and n<=0, (-1)^(n/m-n)*m^n*Gamma(1+n-n/m, -x^m), If(n>=0 and n<=1, (m*x^(m-1))^n*exp(x^m) )); d(exp(a_*x_^m_),x_,n_):= If(n>= -1 and n<=0, (-a)^(n/m-n)*(a*m)^n*Gamma(1+n-n/m, -a*x^m), If(n>=0 and n<=1, (a*m*x^(m-1))^n*exp(a*x^m) )); #d(exp(-x_^2),x_,n_):= if(n>0,(-1)^n*hermite(n,x)*exp(-x^2)); #d(exp(x_^2),x_,n_):= if(n>0,hermite(n,x)*exp(x^2)); d(exp(x_^2),x_,n_):=if(n<0,1/2*sqrt(pi)*erfi(1+n,x) ); d(exp(-x_^2),x_,n_):=if(n<0,1/2*sqrt(pi)*erf(1+n,x) ); d(exp(a_*x_),x_,n_) := If(isfree(a,x), a^n*exp(a*x)); d(exp(x_+b_),b_,n_) := If(isfree(x,b), exp(x+b)); d(exp(x_+b_),x_,n_) := If(isfree(b,x), exp(x+b)); d(exp(b_+a_*x_),x_,n_) := If(isfree(b,a,x), a^n*exp(a*x+b)); d(exp(b_*inversegamma(a_,xx_)),x_,n_):= if(abs(n)<1, d(xx,x,n)/n!*(-b*inversegamma(a_,xx_))^(n-a) ); d(exp(x_),x_,n_):=exp(x); #d(x_^m_,x_,n_) := If(isfree(m,x), If(m<0 and isinteger(m) and (m>=n or n0 and re(n)>m,0, If(isinteger(n-m) and m<0 and n<0,(-1)^(1+m)*a^m*ln(n-m,x), fallingfactorial(m,n)*x^(m-n)*a^m ))); #d((c_+x_)^m_,x_,n_) := If(isfree(c,m,x), if(isinteger(m) and m>0 and re(n)>m,0, If(isinteger(n-m) and m<0 and n<0,(-1)^(1+m)*ln(n-m,c+x), fallingfactorial(m,n)*(c+x)^(m-n) ))); #d((c_+a_*x_)^m_,x_,n_) := If(isfree(c,a,m,x), if(isinteger(m) and m>0 and re(n)>m,0, If(isinteger(n-m) and m<0 and n<0,(-1)^(1+m)*a^n*ln(n-m,c+a*x), fallingfactorial(m,n)*(c+a*x)^(m-n)*a^n ))); #d(x_^m_,x_,n_) := If(isfree(m,x), If(m== -1 and n<=0, ln(1+n,x), If(m<0 and (m>=n or n0 and re(n)>m,0, If(m== -1 and n<0,(-1)^(1+m)*ln(n-m,x), If(m<0 and m==n,(-1)^(1+n)/(-1-n)!*log(x), fallingfactorial(m,n)*x^(m-n) )))); #d((c_+x_)^m_,x_,n_) := If(isfree(c,m,x), if(isinteger(m) and m>0 and re(n)>m,0, If(isinteger(n-m) and m<0 and n<0,if(m-n>=1,(-1)^(1+m)*ln(n-m,c+x), (-1)^(1+n)/(-1-n)!*ln(n-m,c+x)), fallingfactorial(m,n)*(c+x)^(m-n) ))); #d((c_-x_)^m_,x_,n_) := If(isfree(c,m,x), if(isinteger(m) and m>0 and re(n)>m,0, If(isinteger(n-m) and m<0 and n<0,if(m-n>=1,(-1)^(1+m)*ln(n-m,c-x), 1/(-1-n)!*ln(n-m,c-x)), (-1)^n*fallingfactorial(m,n)*(c-x)^(m-n) ))); #d((x_+z_)^m_,x_,n_) := If(isfree(m,z,x), if(isinteger(m) and m>0 and re(n)>m,0, If(isinteger(n-m) and m<0 and n<0,if(m-n>=1,(-1)^(1+m)*ln(n-m,x+z), (-1)^(1+n)/(-1-n)!*ln(n-m,x+z)), fallingfactorial(m,n)*(x+z)^(m-n) ))); #d((c_+x_+z_)^m_,x_,n_) := If(isfree(c,m,z,x), if(isinteger(m) and m>0 and re(n)>m,0, If(isinteger(n-m) and m<0 and n<0,if(m-n>=1,(-1)^(1+m)*ln(n-m,c+x+z), (-1)^(1+n)/(-1-n)!*ln(n-m,c+x+z)), fallingfactorial(m,n)*(c+x+z)^(m-n) ))); #d(x_^m_,x_,n_) := If(isfree(m,x), if(isinteger(m) and m>0 and re(n)>m,0, If(n==m and n<0,if(n==-1,log(x),1/(-1-n)!*(-1)^(1+n)*log(x)), fallingfactorial(m,n)*x^(m-n) ))); d(x_^m_,x_,n_) := If(isfree(m,x), if(isinteger(m) and m>0 and re(n)>m, 0, if(n<0 and m== -1, ln(1+n,x), if(n>0, fallingfactorial(m,n)*x^(m-n) )))); d(x_^n_,x_,n_) := If(n>0, n!, if(n<0, 1/(-1-n)!*(-1)^(1+n)*log(x) )); d(x_^x_,x_,n_) := Sophomore(n+1,1,x); d(x_^(a_*x_),x_,n_) := Sophomore(n+1,a,x); d(sqrt(x_),x_, n_):= sqrt(pi)/2/(1/2-n)!*x^(1/2-n); d(x_,x_,n_) := If(re(n)>1,0, x^(1-n)/(1-n)!); d(y_, x_=x0_, n_) := d(y,x,x0,n); d(a_*b_*c_,x_,n_):=If(isfree(a,x), a*d(b*c,x,n), If(isfree(b,x), b*d(a*c,x,n) )); d(weierstrassP(xx_, g2_, g3_ ),x_,n_):= if(n>0 and n<=1, weierstrassPPrime(xx,g2,g3)*d(xx,x,n) ); d(weierstrassP(xx_, g2_, g3_ ),x_,2):= (weierstrassP(xx,g2,g3)^2-g2/2); d(am(a_,c_),x_,2):= if(d(a,x,2)==0,-c/2*sin(2am(a,c))*d(a,x)^2 ); d(Ai(x_),x_,2):=Ai(x)*x; d(Bi(x_),x_,2):=Bi(x)*x; d(Ai(c_*x_),x_,2):=if(hasnot(x), c^3*Ai(c*x)*x); d(Bi(c_*x_),x_,2):=if(hasnot(x), c^3*Bi(c*x)*x); d(y_,x_,1) := d(y,x); d(y_,x_,0) := y; d(y_,x_=a_) := d(y,x,a,1); d(integrate(y_,x_),x_) := y; d(integrates(y_,x_),x_) := y; #d(integrates(y_,t_,a_,b_),x_) := block(f(t)=y,replace(f(t),t,b)*d(b,x)-replace(f(t),t,a)*d(a,x)+integrate(d(f(t),x),t,a,b)); d(integrates(y_,t_,a_,b_),x_) := replace(y,t,b)*d(b,x)-replace(y,t,a)*d(a,x)+integrate(d(y,x),t,a,b); d(integrate(y_,t_,a_,b_),x_) := replace(y,t,b)*d(b,x)-replace(y,t,a)*d(a,x)+integrate(d(y,x),t,a,b); d(integrate(y(t_-x_),t_,a_,b_),x_) := y(b-x)*(d(b,x)-1)-y(a-x)*(d(a,x)-1); d(integrate(y(x_-t_),t_,a_,b_),x_) := y(x-a)*(1-d(a,x))-y(x-b)*(1-d(b,x)); d(infsums(x_^k_/k_!,k_),x_,n_) := infsums(x^k/k!,k); d(infsums(x_^k_/k_!,k_),x_) := infsums(x^k/k!,k); d(infsums(x_^(2k_)/(2k_)!,k_),x_) := infsums(x^(2k+1)/(2k+1)!,k); d(infsums(1/(1+2k_)!*x_^(1+2k_),k_),x_) := infsums(x^(2k)/(2k)!,k); d(infsums((-1)^k_/(2k_)!*x_^(2k_),k_),x_) := -infsums((-1)^k*x^(2k+1)/(2k+1)!,k); d(infsums((-1)^k_/(1+2k_)!*x_^(1+2k_),k_),x_) := infsums((-1)^k*x^(2k)/(2k)!,k); d(Sophomore(x_,xx_),x_):=x^(xx); d(Sophomore(x_),x_):=x^x; d(laguerre(n_,x_),x_):= n*(laguerre(n,x)-laguerre(n-1,x))/x; d(hermite(n_,x_),x_):= 2n*hermite(n-1,x); d(besselK(m_,x_),x_):= -besselK(m-1,x)/2-besselK(m+1,x)/2; d(besselI(m_,x_),x_):= besselI(m-1,x)/2+besselI(m+1,x)/2; d(besselJ(m_,x_),x_):= besselJ(m-1,x)/2-besselJ(m+1,x)/2; d(besselY(m_,x_),x_):= besselY(m-1,x)/2-besselY(m+1,x)/2; d(weierstrassP(xx_, g2_, g3_ ),x_):= weierstrassPPrime(xx,g2,g3)*d(xx,x); d(weierstrassPPrime(xx_,g2_,g3_),x_):=(weierstrassP(xx,g2,g3)^2-g2/2)*d(xx,x); d(Ai(x_),x_):=AiPrime(x); d(AiPrime(x_),x_):=Ai(x)*x; d(Bi(x_),x_):=BiPrime(x); d(BiPrime(x_),x_):=Bi(x)*x; d(mittag(a_,b_,x_), x_) := (mittag(a,b-1,x)-(b-1)*mittag(a,b,x))/(a*x); d(mittag(a_,x_), x_) := mittag(a,a,x)/a; d(mittag(0.5,x_^0.5),x_):=mittag(0.5,x^0.5)+pi^(-1/2)*x^(-0.5); d(Gamma(n_,0, x_), x_) := exp(-x)*x^(n-1); d(Gamma(n_, x_), x_) := -exp(-x)*x^(n-1); d(zeta(x_), x_) := -sum(log(k)/k^x,k,2,oo); d(zeta(x_,a_), x_) := -sum(log(a+k)/(a+k)^x,k,0,oo); #d(zeta(n_,x_), x_) := -n*zeta(1+n,x); d(zeta(n_,x_), x_) := psi(n,x); d(zeta(n_,b_,x_), x_) := exp((1-b)*x)*x^(n-1)/(e^x-1)/Gamma(n); d(eta(x_), x_) := -sum((-1)^k*log(k)/k^x,k,2,oo); d(eta(n_,b_,x_), x_) := exp((1-b)*x)*x^(n-1)/(e^x+1)/Gamma(n); d(eta(n_,x_), x_) := -n*eta(1+n,x); d(En(n_,x_), x_) := -En(n-1,x); #d(En(n_,x_), x_) := exp(-x)/(-x)^n; #d(erf(n_,x_), x_) := n!/sqrt(pi)*exp(-x^n); d(polylog(n_,x_), x_) := polylog(n-1,x)/x; d(polylog(a_,n_,x_), x_) := -n*x^(a-1)/(e^x-n)/Gamma(a); d(L(a_,b_,c_,x_), x_) := exp((1-c)*x)/(-a+exp(x))*x^(b-1)/Gamma(b); d(when(a_,y_),x_):=when(a,d(y,x)); d(beta(a_,b_,x_),x_):=x^(a-1)*(1-x)^(b-1); d(beta(x_,y_),x_):=beta(x,y)*(psi(x)-psi(x+y)); d(beta(x_,y_),y_):=beta(x,y)*(psi(y)-psi(x+y)); d(beta(s_,x_),x_):=x^(s-1)/(exp(-x)+e^x)/Gamma(s); d(harmonic(n_,1,x_),x_):=(1-x^n)/(1-x); d(harmonic(n_,x_),x_):= -n*H(1+n,x); d(Cl(a_,x_),x_):= (-1)^a*Cl(a-1,x); d(tan(a_,x_),x_):=tan(1+a,x); d(tanh(a_,x_),x_):=tanh(1+a,x); d(inversegamma(n_,x_),x_):= -exp(inversegamma(n,x))*inversegamma(n,x)^(1-n); d(inversesinh(q_,f_),x_) := d(f,x)*d(asinh(q,f)) ; d(inversecosh(q_,f_),x_) := d(f,x)*d(acosh(q,f)) ; d(inversetanh(q_,f_),x_) := d(f,x)*d(atanh(q,f)) ; d(inversecoth(q_,f_),x_) := d(f,x)*d(acoth(q,f)) ; d(inversecsch(q_,f_),x_) := d(f,x)*d(acsch(q,f)) ; d(inversesech(q_,f_),x_) := d(f,x)*d(asech(q,f)) ; d(inversesin(q_,f_),x_) := d(f,x)*d(asin(q,f)) ; d(inversecos(q_,f_),x_) := d(f,x)*d(acos(q,f)) ; d(inversetan(q_,f_),x_) := d(f,x)*d(atan(q,f)) ; d(inversecot(q_,f_),x_) := d(f,x)*d(acot(q,f)) ; d(inversecsc(q_,f_),x_) := d(f,x)*d(acsc(q,f)) ; d(inversesec(q_,f_),x_) := d(f,x)*d(asec(q,f)) ; d(inversechi(q_,x_), x_) := inversechi(q,x)/cosh(inversechi(q,x)); d(inverseshi(q_,x_), x_) := inverseshi(q,x)/sinh(inverseshi(q,x)); d(inversecothi(q_,x_), x_) := inversecothi(q,x)/coth(inversecothi(q,x)); d(inversetanhi(q_,x_), x_) := inversetanhi(q,x)/tanh(inversetanhi(q,x)); d(inversecschi(q_,x_), x_) := inversecschi(q,x)/csch(inversecschi(q,x)); d(inversesechi(q_,x_), x_) := inversesechi(q,x)/sech(inversesechi(q,x)); d(inverseci(q_,x_), x_) := inverseci(q,x)/cos(inverseci(q,x)); d(inversesi(q_,x_), x_) := inversesi(q,x)/sin(inversesi(q,x)); d(inversecoti(q_,x_), x_) := inversecoti(q,x)/cot(inversecoti(q,x)); d(inversetani(q_,x_), x_) := inversetani(q,x)/tan(inversetani(q,x)); d(inversecsci(q_,x_), x_) := inversecsci(q,x)/csc(inversecsci(q,x)); d(inverseseci(q_,x_), x_) := inverseseci(q,x)/sec(inverseseci(q,x)); d(inversef(x_), x_) := 1/d(f(x),x=inversef(x)); d(inversechi(x_), x_) := inversechi(x)/cosh(inversechi(x)); d(inverseshi(x_), x_) := inverseshi(x)/sinh(inverseshi(x)); d(inversecothi(x_), x_) := inversecothi(x)/coth(inversecothi(x)); d(inversetanhi(x_), x_) := inversetanhi(x)/tanh(inversetanhi(x)); d(inversecschi(x_), x_) := inversecschi(x)/csch(inversecschi(x)); d(inversesechi(x_), x_) := inversesechi(x)/sech(inversesechi(x)); d(inverseci(x_), x_) := inverseci(x)/cos(inverseci(x)); d(inversesi(x_), x_) := inversesi(x)/sin(inversesi(x)); d(inversecoti(x_), x_) := inversecoti(x)/cot(inversecoti(x)); d(inversetani(x_), x_) := inversetani(x)/tan(inversetani(x)); d(inversecsci(x_), x_) := inversecsci(x)/csc(inversecsci(x)); d(inverseseci(x_), x_) := inverseseci(x)/sec(inverseseci(x)); d(inverseEi(x_), x_) := exp(-inverseEi(x))*inverseEi(x); d(inverseli(x_), x_) := log(inverseli(x)); d(inverseerf(x_), x_) := 1/2*sqrt(pi)*exp(inverseerf(x)^2); d(inverseerfi(x_), x_) := 1/2*sqrt(pi)*exp(-inverseerfi(x)^2); d(Dawson(n_,x_),x_):= Dawson(n+1,x); d(Dawsonm(n_,x_),x_):= Dawsonm(n+1,x); d(Dawson(x_),x_):= 1-2Dawson(x)*x; d(Dawsonm(x_),x_):= 1+2Dawsonm(x)*x; d(F(x_),x_):=f(x); d(W(x_),x_):=W(x)/(1+W(x))/x; d(harmonic(x_),x_):= psi(1,x+1); d(fresnelS(x_),x_):=sin(pi/2*x^2); d(fresnelC(x_),x_):=cos(pi/2*x^2); d(theta(y_),x_) := delta(x); d(gauss(x_), x_) := -x*gauss(x); d(Phi(x_),x_):=gauss(x); d(erf(x_), x_) := 2/sqrt(pi)*exp(-x^2); d(erfi(x_), x_) := 2/sqrt(pi)*exp(x^2); d(Gamma(x_), x_) := Gamma(x)*psi(x); d((x_)!, x_) := x!*psi(x+1); d(logGamma(x_), x_) := psi(x); d(li(x_),x_) := 1/log(x); d(Ei(x_),x_) := exp(x)/x; d(Ein(x_),x_) := 1/x-exp(-x)/x; d(asinhi(x_),x_) := asinh(x)/x; d(acoshi(x_),x_) := acosh(x)/x; d(atanhi(x_),x_) := atanh(x)/x; d(acothi(x_),x_) := acoth(x)/x; d(acschi(x_),x_) := acsch(x)/x; d(asechi(x_),x_) := asech(x)/x; d(shi(x_),x_) := sinh(x)/x; d(chi(x_),x_) := cosh(x)/x; d(tanhi(x_),x_) := tanh(x)/x; d(cothi(x_),x_) := coth(x)/x; d(cschi(x_),x_) := csch(x)/x; d(sechi(x_),x_) := sech(x)/x; d(sinc(x_),x_) :=(-sin(x))*x^(-2)+cos(x)*1/x; d(si(x_),x_) := sinc(x); d(ci(x_),x_) := cos(x)/x; d(tani(x_),x_) := tan(x)/x; d(coti(x_),x_) := cot(x)/x; d(csci(x_),x_) := csc(x)/x; d(seci(x_),x_) := sec(x)/x; d(asini(x_),x_) := asin(x)/x; d(acosi(x_),x_) := acos(x)/x; d(atani(x_),x_) := atan(x)/x; d(acoti(x_),x_) := acot(x)/x; d(acsci(x_),x_) := acsc(x)/x; d(aseci(x_),x_) := asec(x)/x; d(sqrt(x_),x_):= 1/2*x^(-1/2); d(cbrt(x_),x_):= 1/3*x^(-2/3); d(ln(x_),x_):=1/x; d(log(y_),x_):=d(y,x)/y; d(log(x_),x_):=1/x; d(log(abs(y_)),x_):=d(y,x)/y; d(abs(x_),x_):=1/sgn(x); d(exp(x_),x_):=exp(x); d(pow(x_,n_),x_):=if(hasnot(n,x),pow(x,n-1)*n); d(root(x_,n_),x_):=if(hasnot(n,x),root(x,n-1)*n); d(nthRoot(x_,n_),x_):=if(hasnot(n,x),nthRoot(x,n-1)*n); d(sin(x_),x_):= cos(x); d(cos(x_),x_):= -sin(x); d(tan(x_),x_):= sec(x)^2; d(cot(x_),x_):= -csc(x)^2; d(sec(x_),x_) := tan(x)*sec(x); d(csc(x_),x_) := -cot(x)*csc(x); d(asin(x_),x_) := (1-x^2)^(-1/2); d(acos(x_),x_) := -(1-x^2)^(-1/2); d(atan(x_),x_):= 1/(x^2+1); d(atan2(x_,y_),y_) := -x/(x^2+y^2); d(atan2(x_,y_),x_) := y/(x^2+y^2); d(acot(x_),x_) := -1/(x^2+1); d(asec(x_),x_) := 1/(x*sqrt(x^2-1)); d(acsc(x_),x_) := -1/(x*sqrt(x^2-1)); d(sinh(x_),x_):= cosh(x); d(cosh(x_),x_):= sinh(x); d(tanh(x_),x_) := sech(x)^2; d(coth(x_),x_) := -csch(x)^2; d(sech(x_),x_) := -tanh(x)*sech(x); d(csch(x_),x_) := -coth(x)*csch(x); d(asinh(x_),x_) := (x^2+1)^(-1/2); d(acosh(x_),x_) := (x^2-1)^(-1/2); d(atanh(x_),x_) := 1/(1-x^2); d(acoth(x_),x_) := 1/(1-x^2); d(asech(x_),x_) := -1/(x*sqrt(1-x^2)); d(acsch(x_),x_) := -1/(x*sqrt(1+x^2)); d(sgn(y_),x_) := 0; d(csgn(y_),x_) := 0; d(step(x_),x_):=0; d(x_,x_):=1; d(y_):=d(y,x);