Date: Mar 24, 2013 10:28 AM Author: Richard Fateman Subject: Re: Handling branch cuts in trig functions They are all wrong.

(and I guess you are wrong, also :) )

Choosing the sign of x in sqrt( x^2 ) does not tell a

mathematician which branch of the sqrt to choose.

Sqrt(4) has two values, -2 and 2. Corresponding to the

roots of z^-4=0

Knowing the history of that 4 --- whether it was originally created

by 2^2 or (-2)^2 -- does not tell you what branch of the square root

to take.

Now some may say that the sqrt() notation applied to a positive

real number "means" the positive real square root. Well, who can

tell what someone who writes that down, really means. But if a

computer program produces sqrt as the result of some algebraic

computation, what does it mean then?

And whatever decision you make should generalize to cube roots (etc),

as well as complex numbers.

|x| is just another, occasionally convenient but

generally incorrect, hack for sqrt(x^2).

To show that it is wrong, just draw a graph and see it

is not differentiable. Or consider the meaning of sqrt given

by a quadratic equation...

(z^2-y)=0 has (two) solutions z=sqrt(y) and z=-sqrt(y). Note that

EITHER sqrt(y) works because we carry both solutions along with the

answer.

How about (z^2-x^2)=0 then? z=|x| and z=-|x| are not the same

solutions.

Furthermore |x| violates some really fundamental algebra. Like

we all know that a*b=0 means either a=0 or b=0. We use it for

solving equations. What do we do if it is false, sometimes?

Now draw a graph of y=x-|x|. Is it zero? No, because for negative x,

y=-2x, although for x>=0, it looks like y=0. Similarly, draw a draw

of y=x+|x|. It too is non-zero. Yet (x-|x|)*(x+|x|) =

x^2 - |x|^2 = 0.

(And no,that last statement is not flawed by branch cut interpretations

or anything else). So we have a*b=0 .

Now it is possible to choose SOME root for radical expressions and

try to do it in a consistent manner, but that doesn't mean the answer

is the desired one. RADCAN in Maxima does this. Computations with

RootOf( ) expressions can solve some problems, but clumsily.

Using assumptions on the domain of the argument to determine a

branch cut of the sqrt may sometimes be useful in "steering" the

course of questionable transformations, but you should not be

under the illusion that it is mathematically complete or even

generally correct.

RJF

On 3/24/2013 4:39 AM, Nasser M. Abbasi wrote:

> On 3/24/2013 5:26 AM, G. A. Edgar wrote:

>> In article <kimdsn$lj3$1@speranza.aioe.org>, Nasser M. Abbasi

>> <nma@12000.org> wrote:

>>

>>

>>>

>>> I think now that answer to sqrt(sec(x)^2) should be

>>> |sec(x)| without need to give the branch.

>>

>> That answer is incorrect for complex x ... so to get that answer in

>> Maple, you must assume x is real.

>>

>> simplify(%) assuming x::real;

>>

>

> But I am using Maple 17?

>

> -----------------------------------

> ans:=simplify(sqrt(sec(x)^2)) assuming x::positive;

>

> 1

> --------

> |cos(x)|

>

> simplify(abs(sec(x))- ans);

> 0

>

> -------------------------------------

>

> Unless x::positive implies x::real (since positive does

> not apply to complex numbers). Is this what you meant?

> I get same result using x::positive or x::real.

>

> So Maxima was wrong then:

>

> sqrt(sec(x)^2);

> |sec(x)|

>

> No assumptions!

>

> thanks,

> --Nasser