REAL 64 (issues)

Revision as of 10:24, 17 November 2006 by Juliant (Talk | contribs)

This page describes issues with the current implementation of REAL_64 in comparison to the interace description.

is_equal and NaN

The floating point standard says that 'NaN = NaN' is false. But in order to uphold the postcondition of 'NaN.twin' which says that 'Result.is_equal (Current)' the comparision with 'is_eqaul' should yield true.

At the moment 'is_equal' for reals is optimized in the compiler and is replaced by '=' and thus the postcondition of 'twin' is violated.