Thread Links | Date Links | ||||
---|---|---|---|---|---|
Thread Prev | Thread Next | Thread Index | Date Prev | Date Next | Date Index |
Dear Walter,
I have scanned throught the archives (I haven't been an active member of
the working group back then). My impression is that the
correctly-rounded dot operation in IEEE Std 1788-2015 (with
recommendations to implement it using EDP) is a leftover of initial
considerations to cover Complete Arithmetic with the standard, which has
later been discarded.
Ulrich Kulisch has presented an application of EDP in a section from his
book (see mail “CA and EDP” from 2013-08-07). However, the application
(in his excerpt) is limited to the basic operations (add, sub, div, mul)
of “long intervals”, that is, multiple precision intervals in mid-rad form.
A lengthy discussion has already been held in 2013 and we should not
repeat it. Please!
However, I find it interesting that William Walster had also raised the
question back then about what would be examples/applications of the EDP
in interval arithmetic and again I didn't found an answer to that in the
old discussion.
On 08.08.2013 19:09, G. William (Bill) Walster wrote:
> Not seeing a post with an example, may I conclude that there are none?
Also a fitting comment from the sponsor ballot comment resolution:
> Extensive discussion, involving at least three motions, indicates
> that the chosen design, while not perfect, is the compromise most
> acceptable to the whole group. […] As for Complete Arithmetic, there
> was support for a possible project to make it a separate IEEE
> standard.
Unless somebody can show me a general use case of floating-point EDP in
interval arithmetic, I really can't understand why this operation is
needed for our scope.
Best
Oliver
On 02.02.2016 13:40, Walter Mascarenhas wrote:
> Dear Ulrich,
>
> I believe that by answering to Oliver's questions you would help
> to clarify things for people like myself, who have not played
> much with interval arithmetic in the past but who are interested
> in understanding all its nuances now.
>
> On the other hand, by not answering to his reasonable questions
> you would give the impression that you are only willing to
> convince people about your points of view, but are not willing to
> consider different opinions, or to argue about them.
>
> walter.
>
> On Sun, Jan 31, 2016 at 2:12 PM, Oliver Heimlich <oheim@xxxxxxxxx
> <mailto:oheim@xxxxxxxxx>> wrote:
>
> On 31.01.2016 00:03, Ulrich Kulisch wrote:
> > An exact dot product can easily be provided by a function call or by
> > operator
> > overloading in languages which provide this.
> > If x and y are vectors why shouldn't it be possible to call the EDP by
> > x×y.
> >
> > *But the real point is this:* A correctly rounded dot product is
> slower
> > by at least one magnitude
> > than a possibly wrong computation of the dot product in conventional
> > floating-pooint arithmetic.
> > An exact dot product would be 6 times faster than the latter. So
> > *the EDP is at least 60 times faster than a possibly wrong correctly
> > rounded dot product.**
> > **Speed and accuracy are essential for acceptance and success of
> > interval arithmetic.**
> >
> > *Ignoring these facts is a terrible service to the standard.*
>
> How can a floating-point EDP be used in interval arithmetic? I am not
> aware of how to do it. Is it described in your book “Computer Arithmetic
> and Validity”?
>
> The IEEE Std 1788-2015 mentions a reduction operation called “dot”. As
> defined in the standard document this operation is meant for real
> numbers (Level 1) or floating-point numbers (Level 2).
>
> I have implemented an *interval* dot product, which can be used for
> multiplication of interval matrices for example. It is not possible to
> rely on the floating-point EDP (at least, I don't know how). In the
> interval dot operation we have to consider (for each pair of intervals)
> - [Empty],
> - [Entire],
> - multiplication with [0, 0],
> - and intervals containing zero as an inner point (where interval
> multiplication becomes difficult).
>
> The interval dot operation can be implemented with two accumulators (one
> for each boundary) and produce exact/tightest results.
>
> Computing the interval dot product with midpoint and radius could
> utilize a floating-point EDP, but the resulting interval would not be
> exact anymore unless further operations guard against
> overestimation. [1]
>
> So, AFAIK, 754 would require a different EDP operation than 1788. And it
> would not be possible to use a hardware EDP for floating-point numbers
> to compute the matrix multiplication for interval matrices with tightest
> accuracy.
>
> Please tell me if I missed something, thanks.
>
> Best
> Oliver
>
> [1] S.M. Rump. Fast and parallel interval arithmetic. BIT Numerical
> Mathematics, 39(3):539–560, 1999.
>
>