Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: Computing a * b - c * d
Replies: 20   Last Post: Dec 11, 2000 12:55 PM

 Messages: [ Previous | Next ]
 Christian Bau Posts: 331 Registered: 12/7/04
Re: Computing a * b - c * d
Posted: Dec 11, 2000 6:09 AM

In article <3A318348.4C0A6E10@sdynamix.com>, bv <bvoh@sdynamix.com> wrote:

> Christian Bau wrote:
> >
> > Calculate everything with lets say t+20 binary digits, and don't care too
> > much about correct rounding, just get the result as fast as possible.

>
> As I understand it, that's what the (IEEE) register arithmetic does. In
> this case, a*b-c*d are done with 80 bits, so you have 16 extra bits
> beyond double precision and hence for practical purposes exactly rounded
> for any precision t <= 16.

You snipped the second part of my post, and that makes the line you quoted
very misleading. There is no "for practical purposes exactly rounded";
something is either exactly rounded or not. The original poster wanted
"exactly rounded", not "exactly rounded most of the time", and that is
what makes the problem challenging. What you snipped is that - for example
- 80 bit arithmetic, finally rounded to 64 bit, is quite likely to give
the correctly rounded result, and it is quite likely that you can PROVE
that it is correct. What I suggested was:

Calculate with slightly higher precision, but still fast.
Hope that you can prove that the result is correct.
If you can prove it is correct, great.
If you cannot prove it is correct, only then use a slow method.

Date Subject Author
12/4/00 Bob Silverman
12/5/00 Franky Backeljauw
12/9/00 Dennis Voss
12/9/00 Alan Morgan
12/10/00 Lieven Marchand
12/11/00 Gautier
12/11/00 George Russell
12/11/00 Gautier
12/4/00 Hermann Kremer
12/5/00 Franky Backeljauw
12/5/00 Hermann Kremer
12/5/00 Francois Grieu
12/5/00 Franky Backeljauw
12/5/00 Dik T. Winter
12/5/00 Francois Grieu
12/5/00 Franky Backeljauw
12/5/00 Peter Spellucci
12/5/00 Christian Bau
12/8/00 bv
12/11/00 Christian Bau