simplify roots of exact powers of gaussian integers
Subject: simplify roots of exact powers of gaussian integers
From: Aleksas Domarkas
Date: Thu, 13 Sep 2012 19:35:47 +0300
http://www.math.utexas.edu/pipermail/maxima/2012/030041.html
Does Maxima have a way to simplify roots of gaussian integers that are
exact powers? Specifically,
is there a way to simplify (expand((5+%i)^3))^(1/3) ---> 5 + %i?
(%i18) e : (expand((5+%i)^3))^(1/3);
(%o18) (74*%i+110)^(1/3)
This doesn't work (but I think it's not incorrect):
(%i41) ratsimp(radcan(exponentialize(logarc(rectform(e))))), algebraic :
true;
(%o41)
((55-37*%i)^(5/6)*(37*%i+55)^(1/6)*(37*sqrt(2)*sqrt(13)*%i+55*sqrt(2)*sqrt(13)))/4394
--Barton
*************************************************************************************************************
We define function "root"
(%i1) root(r,n):=block([eq1,eq2],
eq1:realpart((x+%i*y)**n=r),
eq2:imagpart((x+%i*y)**n=r),
solve([eq1,eq2]),
subst(%%[1],x+%i*y)
)$
(%i2) root(74*%i+110,3);
(%o2) %i+5
(%i3) root(74*%i+110,4);
Maxima encountered a Lisp error:
Error in MACSYMA-TOP-LEVEL [or a callee]: ((MTIMES SIMP)
-3.5527136788005009E-15
$%I) is not of type NUMBER.
Automatically continuing.
To enable the Lisp debugger set *debugger-hook* to nil.
(%i4) root(74*%i+110,5);
(%o4)
(0.29865593350933*%i+0.097039195194005)*%i+2.509834993351185*%i+0.81549482363439
(%i5) expand(%);
(%o5) 2.60687418854519*%i+0.51683889012506
(%i6) root(74*%i+110,6);
algsys: tried and failed to reduce system to a polynomial in one variable;
give up.
#0: root(r=74*%i+110,n=6)
-- an error. To debug this try: debugmode(true);
(%i7) root(74*%i+110,7);
(%o7) 0.16984432394613*%i+2.002869440459111
(%i8) root(74*%i+110,8);
(%o8) 1.837031342961383*%i-0.13623210319777
Aleksas D