**Next message:**David McClain: "Correct interpretation of the Pentium non-bug"**Previous message:**Markus Mottl: "Re: Efficency in OCaml"**Messages sorted by:**[ date ] [ thread ] [ subject ] [ author ]

From: "David McClain" <dmcclain@azstarnet.com>

To: <caml-list@inria.fr>

Subject: FP Computations

Date: Fri, 3 Sep 1999 23:52:53 -0700

Ohmygosh! I just ran a simple proof checker in Mathematica against the IEEE

FP spec with distinct (+0.0) and (-0.0). Do you realize that subtraction no

longer anti-commutes?

That is, in general there is no way to perform (a -. b) as a correction to

(b -. a). Subtraction almost anti-commutes, except when a = b. In that case

(a -. b) = +0.0, and (b -. a) = +0.0 also! Hence we cannot expect that

(a -. b) = -. (b -. a).

Also can't use (-0.0) -. (b -. a) since that's exactly the same as direct

negation with FCHS.

Can't use (+0.0) -. (b -. a) since a might be -0.0 and b might be +0.0 in

which case (a -. b) = -0.0 and (b -. a) = (+0.0), and hence (+0.0) -. (b -.

a) = (+0.0) -. (+0.0) = (+0.0).

We're stuck! We MUST evaluate (a -. b) in the order indicated because there

is in general no way to correct the reverse order. Yikes!

- DM

**Next message:**David McClain: "Correct interpretation of the Pentium non-bug"**Previous message:**Markus Mottl: "Re: Efficency in OCaml"**Messages sorted by:**[ date ] [ thread ] [ subject ] [ author ]

*
This archive was generated by hypermail 2b29
: Sun Jan 02 2000 - 11:58:25 MET
*