MathGroup Archive 2006

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

Search the Archive

Re: ExactRootIsolation

  • To: mathgroup at smc.vnet.net
  • Subject: [mg71033] [mg70997] Re: [mg70927] ExactRootIsolation
  • From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
  • Date: Mon, 6 Nov 2006 02:52:32 -0500 (EST)
  • References: <200611021146.GAA15558@smc.vnet.net>

On 2 Nov 2006, at 20:46, dimitris wrote:

> Options[Root]
> (Information[Evaluate[#1[[1]]]] & ) /@ %;
>
> {ExactRootIsolation -> False}
> "ExactRootIsolation is an option for Root, which specifies whether
> exact isolating intervals rather then numeric approximations should be
> used to identify algebraic numbers."
> Attributes[ExactRootIsolation] = {Protected}
>
> Can someone provide me more information about this undocumented option
> of Root with some examples of the setting ExactRootIsolation ->True?
>
> Thanks
>

Root isolation is an algorithm that is used to separate ("Isolate")  
the roots of a polynomial  (real and complex) so that they can be  
ordered and manipulated as individual objects. One method is an exact  
algebraic one and the other a validated  "numerical" one, which means  
that although it uses numerical methods the answers are as reliable  
or "exact" as when you use "exact" root isolation. Basically when the  
numerical method is used, circles in the complex plane containing  
individual roots are constructed using using arbitrary precision  
approximations to the roots. With the exact method open rational  
rectangles (intervals for real roots) are used.
The numerical method is generally faster so it is the default. Other  
than that the methods differ in the way the non-real roots are  
ordered: in both cases the real roots come before the non-real ones  
and are ordered naturally, but the orderings of the non-real roots  
may be different. If you use a function like Solve with the default  
options setting ExactRootIsolation->True and then  with the setting  
ExactRootIsolation->False, you will see that Root has an invisible  
third argument which tells you which method of root isolation was used.
I think that's all there is to it. I don't think any of it should  
concern the average user, unless you are really working on something  
involving algebraic numbers, when knowing which method of root  
isolation was used may be important. You also need to know this if  
you want to convert Mathematica root objects to analogous entities in  
other computer algebra programs.

Andrzej Kozlowski
Tokyo, Japan


  • Prev by Date: Assuming non-integer values in Mathematica simplifications
  • Next by Date: Re: Two small problems compute OK, but not their sum.
  • Previous by thread: Re: ExactRootIsolation
  • Next by thread: ExactRootIsolation