MathGroup Archive 2008

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Re: branch of (-1)^(1/3)

  • To: mathgroup at smc.vnet.net
  • Subject: [mg94561] Re: [mg94508] Re: branch of (-1)^(1/3)
  • From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
  • Date: Tue, 16 Dec 2008 02:35:39 -0500 (EST)
  • References: <1EC031E7-F28D-4084-BA94-07286A088783@site.pl>

On 15 Dec 2008, at 21:44, slawek wrote:

> U=BFytkownik "Carl Woll" <carlw at wolfram.com> napisa=B3 w wiadomo=B6ci
> news:gi2uug$a6m$1 at smc.vnet.net...
>> I assume you mean a simple way to choose the branch of a^(1/3), 
>> where a
>> is real. If so, you can use:
>>
>> Root[#^3-a&, 1]
>
>
> It doesn't work, because this appoach may be used in this way
>
> In[24]:= (-1)^(1/3) /. a_^(1/3) -> Root[#^3 - a &, 2]
> Out[24]= 1/2 (1 - I Sqrt[3])
>
> nevertheless is completly unusable in this example
>
> In[25]:= (-Sin[x])^(1/3) /. a_^(1/3) -> Root[#^3 - a &, 2]
> Out[25]= Root[Sin[x] + #1^3 &, 2]

Wwhat other answer could you possible expect here? Presumably you 
meant  (-Sin[x]^3)^(1/3)? In this case you should use:

Reduce[-Sin[x]^3 == y^3, y]
  -Sin[x] ||
    y == (1/2)*(Sin[x] - I*Sqrt[3]*Sin[x]) ||
    y == (1/2)*(Sin[x] + I*Sqrt[3]*Sin[x])

And you can choose whichever branch you want. If you want to assume 
that everything is real you can use:

Reduce[-Sin[x]^3 == y^3, y, Reals]
y == -Sin[x]

You should also understand that choosing a branch of an analytic 
function with parameters continuously is in general impossible. Even 
in the cases when it is possible (e.g. real root of a polynomial 
equation of odd degree with continuous coefficients) such a formula 
would be very complicated and impossible to use in any algebraic 
manipulation. Root objects are not continuous as functions of the 
parameters but they are vastly preferable for both algebraic 
transformations and numerical computations.

Your example with Abs below has the same problem. What answer do you 
expect Mathematica to evaluate Abs[a]^(1/3) to? You give it no 
assumption on a, so why should it make any? Did you again mean 
something like (Abs[a]^3)^(1/3) ? This can be handled in lots of ways, =

for example

FullSimplify[(-Abs[a]^3)^(1/3)]

(-1)^(1/3)*Abs[a]

and then you can use Root to choose whichever branch you want, or

Reduce[z^3 == -Abs[a]^3, z]

etc.

Andrzej Kozlowski





>
>
> You can see, that Root works only for "numbers" - whereas a simple 
> Sin[x] is
> enouch to stop evaluating Root[ ].
>
> Obviously, I still can make the calculation by the pencil... and 
> maybe my
> old log ruler. Is Mathematica suitable for?
>
> And there is no help if
>
> something /. a_^(1/3) -> Abs[a]^(1/3)
>
> because the ^(1/3) still will fail recognize that the Abs[a] is real =

> and
> that most obvious is a real result. (Because there are many things 
> that are
> really real - for example taxes - if in any country the tax will be =

> computed
> as (income/factor)^(-1/3) it would mean that the tax is 
> imaginary!!! :) )
>
> Regarding the numbering of roots: the system is arbitrary, it may be =

> any
> permutation and the mathematics will remain the same.
> The real - non-real is real: we are in R or in C, quite different 
> sets.
> The "branch number" is artifical similary as artifical are plate 
> numbers on
> cars.
>
> slawek
>
>
>



  • Prev by Date: Re: Recognising parameters in function
  • Next by Date: Re: contexts and functions
  • Previous by thread: Re: branch of (-1)^(1/3)
  • Next by thread: Re: Tooltip[] ListContourPlot[] 6.0 vs. 7.0