This page is part of the web mail archives of SRFI 70 from before July 7th, 2015. The new archives for SRFI 70 contain all messages, not just those from before July 7th, 2015.
| Date: Wed, 25 May 2005 09:48:08 +0800 | From: "Chongkai Zhu" <mathematica@xxxxxxxxx> | | ======= At 2005-05-25, 01:19:41 Aubrey Jaffer wrote: ======= | | > | >I have come up with a clearer formulation: | > | > 6.2.2x Inexactness | > | > In an implementation which represents inexact real numbers with | > IEEE-754 64-bit flonums: | > | > (= 3.141592653589793 | > 3.14159265358979323846 | > 3.1415926535897932384626433 | > 3.141592653589793238462643383279 | > 3.14159265358979323846264338327950288) ==> #t | > | > Thus an inexact real number represents not a single value, but a | > neighborhood of (mathematical) real numbers. The inaccuracies of | > inexact calculations are due to misalignment of functional | > projection of a given neighborhood onto the real line neighborhoods. | | Where does the length of the "neighborhood" come from? How will it | be stored and passed? About inexact computations, R5RS states: ... approximate methods such as floating point arithmetic may be used, but it is the duty of each implementation to make the result as close as practical to the mathematically ideal result. Thus the intermediate results, which in floating-point processing have higher resolution than stored results, are rounded to the closest inexact number, with some policy to decide ties. The range of real numbers which round to a given inexact number is the neighborhood of that inexact number. | > | > The interpretation of real infinities is that 1/0 represents real | > numbers greater than can be encoded by finite inexacts in the | > implementation (> 179.76931348623158e306 for IEEE-754 64-bit | > flonums) and that -1/0 represents numbers less than can be encoded | > by finite inexacts in the implementation (< -179.76931348623158e306 | > for IEEE-754 64-bit flonums). | | What if an implementation supports arbitrary big real numbers? That is an excellent question which will require some thought. Transcendental functions can return irrational numbers which cannot be distinguished from each other when represented by finite length decimal strings. Thus the precision of an inexact (or exact) number representation cannot be unlimited. But exponent size does not suffer from the same limitation. An inexact number representation with big exponents will never overflow into an infinity. Infinities will result only from operations on infinities or limit points. Thus there would be no continuity between the rational flonums and infinities; which bodes poorly for LIMIT. Do any Scheme implementations have inexact big-exponent-flonums?