[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: infinities reformulated

======= At 2005-05-26, 11:19:48 Aubrey Jaffer wrote: =======

> | >  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?

MACLISP is the closest answer. It has exactly what you said and
called it bigfloats. I searched and find that Perl also implements
bigfloat as a library.

And your statement "the precision of an inexact (or exact) number
representation cannot be unlimited" is wrong. For example, Mathematica
implements "unlimited precision number", although it may have some

As a SRFI or R?RS, you must ALLOW some implementation to implement
arbitrary big real numbers.

Chongkai Zhu