# combine 2 terms; combine(a_*(b_+c_)):=a*combine(b+c); combine(a_+c_/d_):=(a*d+c)/d; combine(a_*b_+a_*c_):=a*combine(b+c); combine(a_/b_+c_/d_):=if(b==d, (a+c)/d, (a*d+b*c)/(b*d)); combine(log(a_)+log(b_)):=log(a*b); combine(c_*log(a_)+log(b_)):=log(a^c*b); combine(log(a_)+d_*log(b_)):=log(a*b^d); combine(c_*log(a_)+d_*log(b_)):=log(a^c*b^d); combine(cos(x_)+sin(x_)):=sqrt(2)*sin(x+pi/4); combine(sin(a_)+sin(b_)):=2sin(a/2+b/2)*cos(a/2-b/2); combine(sin(a_)-sin(b_)):=2cos(a/2+b/2)*sin(a/2-b/2); combine(cos(a_)+cos(b_)):=2cos(a/2+b/2)*cos(a/2-b/2); combine(cos(a_)-cos(b_)):= -2sin(a/2+b/2)*sin(a/2-b/2); combine(tan(a_)+tan(b_)):=sin(a+b)/cos(a)/cos(b); combine(tan(a_)-tan(b_)):=sin(a-b)/cos(a)/cos(b); combine(cot(a_)+cot(b_)):=sin(a+b)/sin(a)/sin(b); combine(cot(a_)-cot(b_)):= -sin(a-b)/sin(a)/sin(b); combine(3*sin(2x_)-sin(3x_)):= 4* sin(x)^3; combine(-4*cos(2x_)+cos(4x_)):=8sin(x)^4-3; combine(3*cos(x_)+ cos(3x_)):= 4 *cos(x)^3 ; combine(4*cos(2x_)+cos(4x_)):= 8cos(x)^4-3;