# [Maxima] Using assume() with simplification functions.

Constantine Frangos cfrangos at telkomsa.net
Thu Dec 17 07:42:07 CST 2009

```Dear List,

I am having difficulty using the assume() function with simplification
commands. Any assistance with the following would be much appreciated:

(1) If a = 2*sin(delta3)*Lo1+cos(delta3)*Lc > 0, then the expression
s = a*sqrt(1 + Lc^2*sin(delta3)^2/a^2) should simplify to
sqrt(a^2 +  Lc^2*sin(delta3)^2), otherwise not.

I am trying to implement this with assume() but this does not seem to work
(see below).

radcan() does perform the simplification (incorrectly) before the assume()
command is given.

(2) There are also other constraints: delta3 in the interval (-%pi/2,%pi/2).
How is this indicated with assume() ??

(3) How are previously specified constraints with assume() revoked ?

Thanks very much.

C. Frangos.

(%i5) a;

(%o5) 2*sin(delta3)*Lo1+cos(delta3)*Lc
(%i6) s;

(%o6) (2*sin(delta3)*Lo1+cos(delta3)*Lc)
*sqrt(sin(delta3)^2*Lc^2/(2*sin(delta3)*Lo1+cos(delta3)*Lc)^2+1)
(%i7) ratsimp(s);

(%o7) (2*sin(delta3)*Lo1+cos(delta3)*Lc)
*sqrt(4*sin(delta3)^2*Lo1^2+4*cos(delta3)*sin(delta3)*Lc*Lo1
+(sin(delta3)^2+cos(delta3)^2)*Lc^2)
/sqrt(4*sin(delta3)^2*Lo1^2+4*cos(delta3)*sin(delta3)*Lc*Lo1
+cos(delta3)^2*Lc^2)

(%o8) sqrt(4*sin(delta3)^2*Lo1^2+4*cos(delta3)*sin(delta3)*Lc*Lo1
+(sin(delta3)^2+cos(delta3)^2)*Lc^2)
(%i9)

(%i9) assume( 2*sin(delta3)*Lo1+cos(delta3)*Lc>0);

(%o9) [2*sin(delta3)*Lo1+cos(delta3)*Lc > 0]
(%i10) ratsimp(s);

(%o10) (2*sin(delta3)*Lo1+cos(delta3)*Lc)
*sqrt(4*sin(delta3)^2*Lo1^2+4*cos(delta3)*sin(delta3)*Lc*Lo1
+(sin(delta3)^2+cos(delta3)^2)*Lc^2)
/sqrt(4*sin(delta3)^2*Lo1^2+4*cos(delta3)*sin(delta3)*Lc*Lo1
+cos(delta3)^2*Lc^2)

```