rtoy / maxima

A Clone of Maxima's repo
Other
0 stars 0 forks source link

rootscontract anomaly #548

Open rtoy opened 2 months ago

rtoy commented 2 months ago

Imported from SourceForge on 2024-07-03 01:03:05 Created by macrakis on 2012-02-06 17:28:23 Original: https://sourceforge.net/p/maxima/bugs/2353


ex: (sqrt(2)+1)^(2/3)$

rootscontract(ex)=> (sqrt(2)+1)^(2/3) <<< does nothing rootscontract(2*ex) => 2*(2^(3/2)+3)^(1/3) <<< squares the inner expression

Though the documentation is not explicit about what it should do in this case (it only talks about products of roots, not about powers of roots), the second behavior is more useful -- if it isn't provided by rootscontract, it should be provided by *some* function.

Practical result of this anomaly:

rootscontract( (2^(3/2)+3)^(1/3)-(sqrt(2)+1)^(2/3) ) => 0 (I don't know any other way to do this simplification in Maxima) but rootscontract( -( (2^(3/2)+3)^(1/3)-(sqrt(2)+1)^(2/3) )) => remains unsimplified

rtoy commented 2 months ago

Imported from SourceForge on 2024-07-03 01:03:06 Created by aleksasd on 2012-02-07 06:38:07 Original: https://sourceforge.net/p/maxima/bugs/2353/#418a


(%i1) r:(sqrt(2)+1)^(2/3)$

(%i2) r=expand(r^3)^(1/3); (%o2) (sqrt(2)+1)^(2/3)=(2^(3/2)+3)^(1/3)

(%i3) 2*r=expand((2*r)^3)^(1/3); (%o3) 2*(sqrt(2)+1)^(2/3)=(2^(9/2)+24)^(1/3)

Aleksas

rtoy commented 2 months ago

Imported from SourceForge on 2024-07-03 01:03:10 Created by aleksasd on 2012-02-07 07:38:52 Original: https://sourceforge.net/p/maxima/bugs/2353/#c00a


How simplify (%i1) ex:(sqrt(2)+1)^(2/3); (%o1) (sqrt(2)+1)^(2/3)

(%i2) ex^3=expand(ex^3); (%o2) (sqrt(2)+1)^2=2^(3/2)+3 (%i3) %^(1/3); (%o3) (sqrt(2)+1)^(2/3)=(2^(3/2)+3)^(1/3)

Other example. How simplify (%i4) ex:4*atan(1/5)-atan(1/239); (%o4) 4*atan(1/5)-atan(1/239)

(%i5) tan(ex)=trigexpand(trigexpand(tan(ex))); (%o5) tan(4*atan(1/5)-atan(1/239))=1 (%i6) atan(%); (%o6) 4*atan(1/5)-atan(1/239)=%pi/4

Aleksas D

rtoy commented 2 months ago

Imported from SourceForge on 2024-07-03 01:03:13 Created by aleksasd on 2012-02-07 11:04:25 Original: https://sourceforge.net/p/maxima/bugs/2353/#bce2


Next example. see http://www.math.utexas.edu/pipermail/maxima/2012/027666.html How simplify (%i7) ex:sqrt(1-x^2)/(2-2*x^2)$

(%i8) assume(abs(x)<1)$ We define transformation funkcion f(t) and its inverse g(t): (%i9) f(t):=(2*t)^2$ g(t):=sqrt(t)/2$ (%i11) assume(t>0)$ (%i12) f(g(t)); g(f(t)); (%o12) t (%o13) t

(%i14) f(ex)=ratsimp(f(ex)); (%o14) (4*(1-x^2))/(2-2*x^2)^2=-1/(x^2-1) (%i15) g(%); (%o15) sqrt(1-x^2)/(2-2*x^2)=1/(2*sqrt(1-x^2))

Aleksas D