On 7/28/06, Norman Palardy <[EMAIL PROTECTED]> wrote:
On Jul 28, 2006, at 8:53 AM, Peter K. Stys wrote:
>
> In[26]:= N[72/2000*750,100]
>
> Out[26]=
> 27.0000000000000000000000000000000000000000000000000000000000000000000
> 0000000000000000000000000000000
>
> In[27]:= N[72/2000*750]
>
> Out[27]= 27.
>
> Still suggests all these numbers and intermediate results are
> representable exactly at machine precision.
I'm quite certain that 72/2000 is not.
Write it as the simple sum of powers of 2 and you find the problem.
72/2000 = 2^-2 + 2^-4 + 2^-5 + 2^-6 + 2^-11 + 2^-15 ..... and so on
and you never get exactly the result you get from 72/2000.
In the machine all you have is powers of 2
Actually we're both right and wrong:
In[55]:=RealDigits[0.036,2,100]
Out[55]={{1,0,0,1,0,0,1,1,0,1,1,1,0,1,0,0,1,0,1,1,1,1,0,0,0,1,1,0,1,0,1,0,0,1,1,1,1,
1,1,0,1,1,1,1,1,0,0,1,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},-4}
Shows that 0.036 can be represented exactly in binary, but requires 51
significant digits (if I counted correctly to the last 1). So with a
64 bit double, it probably just missed the # of digits in the mantissa
to represent 0.036 exactly.
Nuf time wasted on this, just a curiosity.
P.
--
-------------------------------------------------------------------------------
Peter K. Stys, MD
Professor of Medicine(Neurology), Senior Scientist
Ottawa Health Research Institute, Div. of Neuroscience
Ottawa Hospital / University of Ottawa
Ontario, CANADA
tel: (613)761-5444
fax: (613)761-5330
http://www.ohri.ca/profiles/stys.asp
-------------------------------------------------------------------------------
_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>
Search the archives of this list here:
<http://support.realsoftware.com/listarchives/lists.html>