Re: My ideas about infinity in Scheme (revised)
Alex Shinn 23 May 2005 06:30 UTC
On 5/23/05, Aubrey Jaffer <xxxxxx@alum.mit.edu> wrote:
> | Date: Sun, 22 May 2005 20:46:53 +0900
> | From: Alex Shinn <xxxxxx@gmail.com>
> |
> | On 5/22/05, Aubrey Jaffer <xxxxxx@alum.mit.edu> wrote:
> | >
> | > In hundreds of years of using rational numbers, mathematicians have
> | > not discovered 1/0 to be a useful extension to the rational numbers.
> |
> | Well, mathematically 1/0 isn't real or complex either, as it doesn't
> | obey the properties of a field
>
> 1/0 and -1/0 can be added in a way that preserves the total ordering
> of the real numbers.
But closure is lost because (+ 1/0 -1/0) is not real (at which point
it's no longer a group, much less field). Introduction of 0/0 to
regain closure breaks the inverse element property of groups (the
identity element is still 1 but 0/0 has no inverse).
> | and breaks the fundamental theorem of algebra.
>
> In which circumstances does it do that? Is it only when 1/0 or -1/0
> is a coefficient in a polynomial?
Yes, such a polynomial would have no zeros.
> Many ideas about efficiency have been invalidated by the growth of
> instruction speed far outstripping growth in L1 cache size. An
> article about this is:
> <http://swiss.csail.mit.edu/~jaffer/CNS/interpreter-speed>
An interpreter is still an order of magnitude slower than a native
compiler. Regardless, if there are situations (either explicit from
the use of real? or implicit via method polymorphism) where in the
middle of a loop you must check against the IEEE-754 infinities, then
you will suffer a serious performance loss.
--
Alex