John O'Donnell <[EMAIL PROTECTED]>   writes


> However, it isn't true that computers cannot handle real numbers.  There 
> have been several papers on exact real arithmetic ...
> The idea is to use lazy representations of unbounded data 
> structures, such as continued fractions, to represent a real number. 
> ...
> The Floating types should be called Floating, and the name Real should be 
> reserved for numbers that actually obey the algebraic laws for real numbers.


Exactly.
And these unbounded objects (in particular, a continued fraction as 
an infinite list) are very close to what Real means.
Probably, they could be called Real.

Only one has to prepare to script
                      let  {real1 =...;  real2 =...}  in  real1==real2
       
and obtain     error "cannot solve  real1==real2 ..."
or, maybe, an infinite loop - both at run time.

We guess, why: 
        either the equality is solved for some arguments *not* like it
        should solve for Real,
        or 
        it terminates in the above way for some arguments.

In *this sense* i say that Real cannot be represented algorithmically.

Compare this with Rational - quite a different case.

And this is up to user, how to deal with such unbounded data to avoid 
the infinite loops.
Besides, it will depend greatly on the implementation wisedom on 
how wide range of data (==) will break or get into an infinite loop.


------------------
Sergey Mechveliani
[EMAIL PROTECTED]







Reply via email to