* Данный текст распознан в автоматическом режиме, поэтому может содержать ошибки
Символьные преобразования выражений
Ниже даны примеры применения функции simplify:
> simplify(4^(1/2)+3);
239
5
> simplify((x^y)^z+3^(3),power);
(xy)z + 27
> simplify(sin(x)^2+cos(x)^2,trig);
1
> e:=cos(x)^5+sin(x)^4+2*cos(x)^2-2*sin(x)^2-cos(2*x);;
e := cos(x)5 + sin(x)4 + 2cos(x)2 – 2sin(x)2 – cos(2x)
> simplify(e);
cos(x)5 + cos(x)4
> simplify(GAMMA(n+4)/GAMMA(n),GAMMA);
n(n + 1)(n + 2)(n + 3)
> r:=RootOf(x^2-2=0,x): > simplify(r^2,RootOf);
2
> simplify(ln(x*y),power,symbolic);
ln(x) + ln(y)
> e:=(-5*b^2*a)^(1/2); > simplify(e,radical,symbolic);
Действие функции simplify существенно зависит от областей определения переменных. В следующем примере упрощение выражения не произошло, по скольку результат этой операции неоднозначен:
> restart; > simplify(sqrt(x^4*y^2));
Однако, определив переменные как реальные или положительные, можно лег ко добиться желаемого упрощения:
> simplify(sqrt(x^4*y^2),assume=positive);
x2 y
> simplify(sqrt(x^4*y^2),assume=real);
x2|y| С помощью равенств можно задать свои правила преобразования, например:
> eq:=x^2+2*x*y+y^2;
eq := x2 + 2xy + y2
> simplify(eq,{x=1});
y2 + 2y + 1
> simplify(eq,{x^2=x*y,y^2=1});
3xy + 1
> simplify(eq,{x,y});
0