I don't think that would help. It would make mult/div nicer, but addition/subtraction more of a mess. I think the best analogue of an interval is a ball--addition and subtraction of open balls yield open balls, and multiplication/division of open balls are almost open balls (for inputs far enough away from the origin with respect to their radii).
- Robert On Sep 25, 2007, at 11:07 AM, Bill Hart wrote: > Could the version for complex numbers use polar coordinates? > > Bill. > > On 25 Sep, 18:55, cwitty <[EMAIL PROTECTED]> wrote: >> On Sep 25, 9:28 am, "John Cremona" <[EMAIL PROTECTED]> wrote: >> >>> I thought this had been solved some time ago, and was implemented in >>> pari. Or is that only for real roots of real polynomials? >> >>> John >> >>> On 9/25/07, cwitty <[EMAIL PROTECTED]> wrote: >>>> The biggest obstacle to handling Qbar directly is that I haven't >>>> found >>>> a good way of isolating the roots of a complex polynomial (that is, >>>> finding the roots with a GUARANTEED error bound) and then >>>> refining a >>>> root to arbitrary precision. >> >> Maybe so, but the documentation doesn't give enough detail for me to >> be confident. The documentation for Pari's polroots function says, >> "... it is guaranteed to converge and to give the roots to the >> required accuracy." But I don't know what that means. Am I supposed >> to trust every bit of the returned value (that is, the error is at >> most a half-ULP)? I'm fairly sure I could construct examples where >> determining a 100-bit result to within a half-ULP would require >> intermediate values that were a million bits. Does Pari go ahead and >> use the million-bit numbers here, or does it allow errors more than a >> half-ULP? If it allows errors more than a half-ULP, how large are >> the >> errors it does allow? >> >> Worse, I need to work with polynomials with inexact (interval) >> coefficients, and polynomial root-finding is inherently unstable >> (small changes in the coefficients can make large changes in the >> locations of the roots); even if Pari gives exactly-correct (within a >> half-ULP) answers for the polynomials you give it, how much do you >> increase the size of the interval outputs to account for the >> uncertainty in the inputs? >> >> All of this is to support a constructor that takes a polynomial with >> Qbar coefficients, and a complex interval (a rectangle in the complex >> plane) enclosing exactly one root, and return an element of Qbar. >> Instead, there could be a constructor that takes a polynomial with >> Qbar coefficients, and a complex interval enclosing exactly one root >> tightly enough that it can be arbitrarily refined using Newton- >> Raphson; and then it would be the responsibility of the caller to >> find >> such a complex interval. But how would the caller do that? >> >> Carl > > > --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~----------~----~----~----~------~----~------~--~---