axiom-developer
[Top][All Lists]

## [Axiom-developer] [#167 Infinite Floats Domain] ??? FLOAT

 From: Bill Page Subject: [Axiom-developer] [#167 Infinite Floats Domain] ??? FLOAT Date: Sun, 12 Jun 2005 14:27:00 -0500

```Changes
http://page.axiom-developer.org/zope/mathaction/167InfiniteFloatsDomain/diff
--
Tim,

What is the domain FLOAT if not already "infinite but bounded
length"? I thought that FLOAT has internal representation based
on a pair of "infinite but bounder length" INT's.

)abbrev domain FLOAT Float

B ==> Boolean
I ==> Integer
S ==> String
PI ==> PositiveInteger
RN ==> Fraction Integer
SF ==> DoubleFloat
N ==> NonNegativeInteger

++ Author: Michael Monagan
++ Date Created:
++   December 1987
++ Change History:
++   19 Jun 1990
++ Basic Operations: outputFloating, outputFixed, outputGeneral,
outputSpacing,
++   atan, convert, exp1, log2, log10, normalize, rationalApproximation,
++   relerror, shift, / , **
++ Keywords: float, floating point, number
++ Description: \spadtype{Float} implements arbitrary precision floating
++ point arithmetic.
++ The number of significant digits of each operation can be set
++ to an arbitrary value (the default is 20 decimal digits).
...
++ The underlying representation for floats is binary
++ not decimal. The implications of this are described below.
++
++ The model adopted is that arithmetic operations are rounded to
++ to nearest unit in the last place, that is, accurate to within
++ Also, the elementary functions and constants are
++ accurate to one unit in the last place.
++ A float is represented as a record of two integers, the mantissa
++ and the exponent.  The \spadfunFrom{base}{FloatingPointSystem}
++ of the representation is binary, hence
++ a \spad{Record(m:mantissa,e:exponent)} represents the number \spad{m * 2
** e
...
Rep := Record( mantissa:I, exponent:I )
...

--