Newsgroups: sci.math.symbolic,comp.lang.functional,comp.lang.lisp
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!oitnews.harvard.edu!purdue!lerc.nasa.gov!magnus.acs.ohio-state.edu!math.ohio-state.edu!howland.reston.ans.net!newsfeed.internetmci.com!news.mel.aone.net.au!inferno.mpx.com.au!news.unimelb.EDU.AU!cs.mu.OZ.AU!munta.cs.mu.OZ.AU!aet
From: aet@munta.cs.mu.OZ.AU (Bert THOMPSON)
Subject: Re: arbitrary-precision real arithmetic
Message-ID: <9524020.24716@mulga.cs.mu.OZ.AU>
Sender: news@cs.mu.OZ.AU (CS-Usenet)
Organization: Computer Science, University of Melbourne, Australia
References: <41cuio$n6q@cantaloupe.srv.cs.cmu.edu> <41d54f$mpd@sparky.franz.com>
Date: Mon, 28 Aug 1995 10:35:28 GMT
Lines: 49
Xref: glinda.oz.cs.cmu.edu sci.math.symbolic:18917 comp.lang.functional:6309 comp.lang.lisp:18987

kem@math.ufl.edu (Kelly Murray) writes:

|In article <41cuio$n6q@cantaloupe.srv.cs.cmu.edu>, Lawrence C Paulson <lcp@cl.cam.ac.uk> writes:
|>> Does anybody know of recent work on implementing arbitrary-precision real
|>> arithmetic?  I'm especially interested in work based upon Jean Vuillemin's 1988
|>> paper "Exact Real Computer Arithmetic with Continued Fractions", though other
|>> methods would also be welcome.
|>> 

Stuff I can remember off the top of my head:

- You might want to ftp Hans Boehm's real arithmetic calculator, which
  uses lazy lists. This is at the Xerox PARC ftp site, I think.

- There was a Lisp and Functional Programming conference in the late
  eighties that had an article on this.

|I'll start off by saying I know almost nothing about this.
|I'll end by asking that given arbitary-precision integers, why
|can't they be used for the exponent and mantissa representations,
|and thus give you arbitarary-precision reals?  

Nope. He wants -exact- reals, not arbitrary precision floating point
numbers. You can't represent, say, pi as a floating point number, 
no matter how accurate. And -yes- you can do real arithmetic ---
Just represent each of your real numbers by a computable-function
that spits out digits. The function to add two reals would take 
two such functions as arguments and return such
a function.  (But the number of computable functions is countable yet the 
reals are -un-countable, you say. A logician would point you at the Loewenheim
- Skolem-Tarski theorem, but I'm not so pretentious. 8^)
(Apologies for the mumbo-jumbo.)

|You can find a floating-point emulation package (see Linux or BSD) that could be
|converted into Lisp and use bignums.  Of course, it
|may be arbitrary-slow too.  If you want something like
|automatic-conversion to/from hardware reals that sounds much harder.
                                       ^^^^^ (read `floats'.)

|-Kelly Murray   kem@franz.com

Bert.
----------------------------------------------------------------------
Bert Thompson                                          aet@cs.mu.oz.au 
----------------------------------------------------------------------




