(x+y)^2;
2
(x + y)
と、この形のままで処理しようとしますが、expand を使うと、
次のように展開してくれます。
expand((x+y)^2);
2 2
2 x y + x + y
expand が有効なのは文字式だけではありません。
例えば、
x:(1+sqrt(5))/2; y:(1-sqrt(5))/2;としたあと、
x*y;
(1 - SQRT(5)) (SQRT(5) + 1)
---------------------------
4
という具合になり、歯がゆい思いをすることになります。 こういうときは、expand を用いてやればいいのです。
expand(x*y);
-1
ああすっきり。