# [Numpy-discussion] Random int64 and float64 numbers

David Goldsmith d.l.goldsmith@gmail....
Fri Nov 6 00:04:51 CST 2009

```On Thu, Nov 5, 2009 at 8:07 PM, Anne Archibald <peridot.faceted@gmail.com>wrote:

> 2009/11/5 David Goldsmith <d.l.goldsmith@gmail.com>:
> > On Thu, Nov 5, 2009 at 3:26 PM, David Warde-Farley <dwf@cs.toronto.edu>
> > wrote:
> >>
> >> On 5-Nov-09, at 4:54 PM, David Goldsmith wrote:
> >>
> >> > Interesting thread, which leaves me wondering two things: is it
> >> > documented
> >> > somewhere (e.g., at the IEEE site) precisely how many *decimal*
> >> > mantissae
> >> > are representable using the 64-bit IEEE standard for float
> >> > representation
> >> > (if that makes sense);
> >>
> >> IEEE-754 says nothing about decimal representations aside from how to
> >> round when converting to and from strings. You have to provide/accept
> >> *at least* 9 decimal digits in the significand for single-precision
> >> and 17 for double-precision (section 5.6). AFAIK implementations will
> >> vary in how they handle cases where a binary significand would yield
> >> more digits than that.
> >
> > I was actually more interested in the opposite situation, where the
> decimal
> > representation (which is what a user would most likely provide) doesn't
> have
> > a finite binary expansion: what happens then, something analogous to the
> > decimal "rule of fives"?
>
> If you interpret "0.1" as 1/10, then this is a very general
> floating-point issue: how you you round off numbers you can't
> represent exactly? The usual answer (leaving aside internal
> extended-precision shenanigans) is to round, with the rule that when
> you're exactly between two floating-point numbers you round to the one
> that's even, rather than always up or always down (the numerical
> analysis wizards tell us that this is more numerically stable).
>

More numerically stable, or simply unbiased, since half the time your
rounding up, and the other half rounding down (that's the rationale as it
was explained to me).

DG

>
> Anne
>
> > DG
> >
> > _______________________________________________
> > NumPy-Discussion mailing list
> > NumPy-Discussion@scipy.org
> > http://mail.scipy.org/mailman/listinfo/numpy-discussion
> >
> >
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion@scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.scipy.org/pipermail/numpy-discussion/attachments/20091105/ebae433b/attachment.html
```