For comparison with other CAS choose from: Axiom Derive Maple Mathematica Reduce
letsimp((cos(x)*cos(y), (cos(x+y) + cos(x-y))/2));
matchdeclare([x, y], true)$
cos(y + x) + cos(y - x) ----------------------- 2
letsimp((cos(x)*sin(y), (sin(x+y) - sin(x-y))/2));
sin(y + x) + sin(y - x) ----------------------- 2
letsimp((sin(x)*sin(y), (cos(x-y) - cos(x+y))/2));
cos(y - x) - cos(y + x) ----------------------- 2
letsimp((cos(x)^
2, (1 + cos(2*x))/2));
cos(2 x) + 1 ------------ 2
letsimp((sin(x)^
2, (1 - cos(2*x))/2));
1 - cos(2 x) ------------ 2
letsimp(expand((a1*cos(wt) + a3*cos(3*wt) + b1*sin(wt) + b3*sin(3*wt))^
3));
3 3 2 2 b3 sin (3 wt) + 3 a3 b3 cos(3 wt) sin (3 wt) 2 2 2 2 + 3 b1 b3 sin(wt) sin (3 wt) + 3 a1 b3 cos(wt) sin (3 wt) 2 2 + 3 a3 b3 cos (3 wt) sin(3 wt) + 6 a3 b1 b3 sin(wt) cos(3 wt) sin(3 wt) 2 2 + 6 a1 a3 b3 cos(wt) cos(3 wt) sin(3 wt) + 3 b1 b3 sin (wt) sin(3 wt) 2 2 + 6 a1 b1 b3 cos(wt) sin(wt) sin(3 wt) + 3 a1 b3 cos (wt) sin(3 wt) 3 3 2 2 2 2 + a3 cos (3 wt) + 3 a3 b1 sin(wt) cos (3 wt) + 3 a1 a3 cos(wt) cos (3 wt) 2 2 + 3 a3 b1 sin (wt) cos(3 wt) + 6 a1 a3 b1 cos(wt) sin(wt) cos(3 wt) 2 2 3 3 2 2 + 3 a1 a3 cos (wt) cos(3 wt) + b1 sin (wt) + 3 a1 b1 cos(wt) sin (wt) 2 2 3 3 + 3 a1 b1 cos (wt) sin(wt) + a1 cos (wt)
declare(int, linear)$
matchdeclare(p, is(diff(p, x) = 0))$
tellsimp(int(x
^
p, x), x^
(p+1)/(p+1));
[intrule1, simpargs1]
tellsimp(int(1, x), x);
[intrule2, intrule1, simpargs1]
int(a^
2*b+a^
b+3*a-5, a);
b + 1 3 2 a a b 3 a ------ + ---- + ---- - 5 a b + 1 3 2
int(a^
(a+1), a);
a + 2 a ------ a + 2