       Re: FindRoots?

• To: mathgroup at smc.vnet.net
• Subject: [mg112195] Re: FindRoots?
• From: ADL <alberto.dilullo at tiscali.it>
• Date: Sat, 4 Sep 2010 04:00:46 -0400 (EDT)
• References: <i5qhi6\$plh\$1@smc.vnet.net>

```In fact, I am a little surprised by the suggestions related to using
Reduce for the purposes of soving numeric equations.

First, it has been repeated in this Group several times (and also by
Andrej) that doing so "can cause all sorts of weird problems".
Second, the impossibility to deal with interpolations with Reduce is
quite clear.
Third, Reduce has been reported a number of times to have strange
bugs, possibly due to its intrinsic complexity.
For example, please, try the following consecutive inputs on a fresh
kernel (I have 7.0.1)

(* x is confined to be negative and the result is correct *)
In:= Reduce[2 x + Log[-((-1 + 2 x)/(-1 + 2 x^2))] == 0 && -2 <  x <
-1/Sqrt, x,  Reals]

Out=
x == Root[{Log[-((-1 + 2*#1)/(-1 + 2*#1^2))] + 2*#1 & ,
-0.86193624643066461859672257230652325788`20.308604836334762}]

(* x can be negative and positive. The last root is lost *)
In:= Reduce[{2 x + Log[-((-1 + 2 x)/(-1 + 2 x^2))] == 0, -2 < x <
2}, x,  Reals]

Out=
x == Root[{Log[-((-1 + 2*#1)/(-1 + 2*#1^2))] + 2*#1 & ,
0.56055055440035189796824605607850099728`20.301071037894882}]

(* This is the first input. The root is lost and will be never
recovered again *)
In:= Reduce[2 x + Log[-((-1 + 2 x)/(-1 + 2 x^2))] == 0 && -2 <  x <
-1/Sqrt, x, Reals]

Out=
False

So, my understanding is that the concept of Rationalizing results and
applying N at the end to solve a numeric equation, which even Reduce
does internally, appears contrary to the expressed opinion of several