Tim Peters <t...@python.org> added the comment:

> That's about 0.5000000000026 ulp too small - shocking ;-)

Actually, that's an illusion due to the limited precision of Decimal.  The 
rounded result is exactly 1/2 ulp away from the infinitely precise result - 
it's a nearest/even tie case.

To make analysis easy, just note that the mathematical hypot(*([x] * 9)) is 
exactly 3*x.  For x = 16 + ulp(16), 3*x moves to a higher binade and has two 
trailing one bits.  The last has to be rounded away, rounding up to leave the 
last retained bit even.  Any source of error, no matter how tiny, can be enough 
so that doesn't happen.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue41513>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to