MathGroup Archive 2009

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

Search the Archive

Re: Bug in Solve?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg102984] Re: Bug in Solve?
  • From: Bill Rowe <readnews at sbcglobal.net>
  • Date: Thu, 3 Sep 2009 07:10:04 -0400 (EDT)

On 9/2/09 at 4:03 AM, a2mgoog at yahoo.com (tonysin) wrote:

>I have a very simple equation:

>x^3 - 15 x + 2 = 0

>When I plot it in Mathematica 7,

>it gives the expected graph of a cubic, with three real roots near
>-4, 0, and 4.

>When I NSolve it,

>NSolve[f[x] == 0, x]

>it gives

>{{x -> -3.938}, {x -> 0.133492}, {x -> 3.80451}}

>which is exactly what you would expect from the graph.

>But when I Solve it

>Solve[f[x] == 0, x]

>it gives this mess

>{{x -> 5/(-1 + 2 I Sqrt[31])^(1/3) + (-1 + 2 I Sqrt[31])^(
>1/3)}, {x -> -((5 (1 + I Sqrt[3]))/( 2 (-1 + 2 I Sqrt[31])^(1/3))) -
>1/2 (1 - I Sqrt[3]) (-1 + 2 I Sqrt[31])^(1/3)}, {x -> -(( 5 (1 - I
>Sqrt[3]))/(2 (-1 + 2 I Sqrt[31])^(1/3))) - 1/2 (1 + I Sqrt[3]) (-1 +
>2 I Sqrt[31])^(1/3)}}

>I don't know how it looks in your font, but that "I" in each
>solution is the imaginary i.  Solve is saying this equation has no
>real roots, even though the graph clearly shows that all three roots
>are real.

No, Solve is giving you an exact solution for all three roots which is also=
 real for all three roots.
If you do

In[11]:= Solve[f[x] == 0, x] // FullSimplify // N

you get

Out[11]= {{x->3.80451},{x->-3.938},{x->0.133492}}

demonstrates all three roots are real and Solve gets the same result as NSo=
lve



  • Prev by Date: Re: re-grouping expressions in mathematica
  • Next by Date: Re: Re: Replace in operators
  • Previous by thread: Re: Bug in Solve?
  • Next by thread: Importing previously exported irregular lists