infinite precision (was Re: Against PEP 240)

Alex Martelli aleaxit at yahoo.com
Thu May 31 10:52:36 EDT 2001


"Aahz Maruch" <aahz at panix.com> wrote in message
news:9f5fpf$qo9$1 at panix2.panix.com...
    ...
> >>>provide infinite-precision INTEGRAL arithmetic, what Roman was asking,
> >>
> >> C'mon, Alex, you know better than that: longs are unbounded precision,
> >> not infinite precision.
> >
> >http://www.dictionary.com/cgi-bin/dict.pl?term=infinite:
>
> The dictionary definitions don't represent the standard distinctions
> used in CS.

Can you back up this bold assertion with quotes supporting
your contention that (if I get you right?) "infinite precision"
means nothing attainable on a (necessarily finite) computer
while "unbounded precision" means something attainable?  I
have quite a few counter-examples, such as:

E. R. Gansner, An infinite precision integer package for C++, AT&T Bell
    Laboratories technical memorandum, 1987
    (http://citeseer.nj.nec.com/context/485947/0)

Standard ML of New Jersey's 110.32 release notes, December 2000
    "The compiler presently uses infinite precision in the front end ...
    converted back to infinite precision in MLRISC ... Infinite precision
    in the middle end ..." [passim]
    http://cm.bell-labs.com/cm/cs/what/smlnj/NEWS/110.32-README.html

"Task Name: Infinite Precision Multiplication" by Dan McCracken
    http://www.cs.wpi.edu/~peercs/activities/activity13.html

"An infinite precision bracketing algorithm with guaranteed convergence"
    P. Favati, G. Lotti, O. Menchi, F. Romani (1999) in Numerical Algorithms
    http://www.baltzer.nl/numa/contents/1999/20-1.html#nma1919
The authors say in the abstract that they're working with "a finite
arithmetic of unbounded accuracy" -- note that, because of that,
they said "infinite precision" in the title, and the peer reviewers
and editors of "Numerical Algoritms" accepted that.

http://www.python.org/topics/scicomp/numbercrunching.html
    "compute with infinite precision, printing digits on the fly"
[I've omitted other Python-related quotes, such as Keith Waclena's
"Introduction to the Python Programming Language" 1998 course at
the University of Chicago --
http://www.lib.uchicago.edu/keith/courses/python/
but refs to Python's "infinite precision integers" abound!-)]

"The Gödel Programming Language" (A. Bowers, 1995)
    "Gödel supports infinite precision integers, infinite precision
rationals"
    http://www.cs.bris.ac.uk/~bowers/goedel.html

Amzi! "Large Integer Library" (2001)
    "The Large Integer Library allows you to do arithmetic in Amzi! Prolog
    with numbers of infinite precision"
    http://www.amzi.com/products/large_integer.htm

Package gnu-math (Per Bothner -- year???)
    "IntNum: A class for infinite-precision integers"
    http://sources.redhat.com/kawa/api/gnu/math/package-summary.html

"Stockhausen Operette 1" (Oz/Alice interoperability based on Mozart)
    "int: Infinite-precision integer"
    http://www.ps.uni-sb.de/stockhausen/operette1/interop.php3

"SUIF - The Basic Data Structures" (David Heine 1999)
    "IInteger - i_integer.h - Infinite precision integer"
    http://suif.stanford.edu/suif/suif2/doc/suifprogramming/node24.html


And so on, and so forth.  Enough, I hope, to show that, at
least for a significant part of "the CS community", the words
"infinite precision" *DO* have (at least as one possible
meaning, and specifically -- in several cases -- where applied
to integers) exactly the same meaning as "unbounded precision".

This seems to me significant as many sources quoted are "high
quality" and from widely varied sections of the CS community.
Bell Labs, both the C++ and SML/NJ sides of it; McCracken, the
author of the first ever programming textbook (1957) and thus
(and by his MANY other best-sellers) influencer of generations
of students in the field; Numerical Algorithms, a prestigious
and influential journal in this specific and specialized subfield
of CS; Bothner of the FSF; purveyors of advanced languages
such as Gödel, Amzi! Prolog, Stockhausen, SUIF; and last but
not least, our own beloved www.python.org.

I _would_ appreciate quotes overwhelming in number and quality
these few which I just easily picked up in a few minutes' worth
of surfing on the net -- they WOULD have to be overwhelming
indeed to convince me that Bell Labs, McCracken, Numerical
Algorithms, etc, are all guilty of violating "standard
distinctions in CS".  If you can't be bothered to provide
them, and your evidence for the fact that the equivalence
between unbounded and infinite does not apply in CS rests
strictly on your say-so, I hope you will pardon me if I don't
consider you QUITE as much of an authority in the linguistics
of "standard distinctions used in CS" as to displace in my
mind the weight of those quotes I brought.  In other words,
pending your posting of overwhelming counter-evidence, I
tentatively remain of the opinion that your sharp criticism
of my chosen words was quite uncalled for and unwarranted.


Alex






More information about the Python-list mailing list