#integrates(a_,x_,c_,d_):=If(isfree(a,x), a*d-a*c); #integrates(a_*b_,x_,c_,d_):=If(isfree(a,x), a*integrates(b,x,c,d)); #integrates(a_+b_,x_,c_,d_):=If(isfree(a,x), a+integrates(b,x,c,d), integrates(a,x,c,d)+integrates(b,x,c,d)); #integrates(a_-b_,x_,c_,d_):=If(isfree(a,x), a-integrates(b,x,c,d), integrates(a,x,c,d)-integrates(b,x,c,d)); #integrates(-b_,x_,c_,d_):= -integrates(b,x,c,d); #integrate2(y_,x_,b_):=d(y,x,-b)*b!; integrate2(a_+b_,x_):=integrate2(a_,x_)+integrate2(b_,x_); #integrate2(y_):=ds(y,x,-1); #integrate2(a_*x_,x_):=y(-1,x); #integrate2(x_*y_,x_):=x*y-integrate(y,x); integrate2(a_*e^x_,x_):==e^x*a-integrate(d(a)*e^x,x); integrate2(e^x_*y_,x_):=e^x*y-integrate(d(y)*e^x,x);