MathGroup Archive 2006

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

Search the Archive

Re: Root's third argument?

  • To: mathgroup at
  • Subject: [mg66233] Re: [mg66220] Root's third argument?
  • From: Andrzej Kozlowski <akoz at>
  • Date: Fri, 5 May 2006 05:02:08 -0400 (EDT)
  • References: <>
  • Sender: owner-wri-mathgroup at

On 4 May 2006, at 18:21, bradc355113 at wrote:

> The Root function seems to have an undocumented third argument--does
> anyone know what it represents?
> I ran into it while trying to use some replacement rules to replace
> Root objects in an expression, and none of my "Root[f_,k_]" patterns
> were matching, because Root has an invisible third argument that
> doesn't show up in output.
> I have a workaround, but I'm still curious.
> Thanks,
> Brad

Yes, there is indeed a third, hidden argument. I think it represents  
(or at least it used to represent)  what is called "the isolating  
set" of the algebraic number, that is, a subset of the complex plane  
in which the root object is the only root of the minimal polynomial.  
This is necessary in order for the roots of the polynomial to be  
ordered, so that you can speak of the "first roots", "second root" etc.

Mathematica uses two approaches to root isolation: numerical and  
exact one. Which one is used depends on the value of the option  
ExactRootIsolation of Root. One can check that the invisible third  
argument is different (you can extract it with Part). However, it  
seems to me that the actual form of the third argument was changed  
(without my noticing it until today ;-)) in some version of  
Mathematica between 3 and 5. Mathematica used to return an  
approximate value of the root with the ExactRootIsolation set to  
False and the corners of the isolating rectangle in the complex plane  
with  ExactRootIsolation set to True. However, now it seems just to  
return 0 and 1, which I find impossible to interpret. I am sure,  
however, that the same information is still stored somewhere...

Andrzej Kozlowski

  • Prev by Date: Re: NMinimize with numerically evaluated constraints
  • Next by Date: Re: Root's third argument?
  • Previous by thread: Root's third argument?
  • Next by thread: Re: Root's third argument?