摘要 用错数分析计算机的错误计算(一百一十二)中错误计算的原因。
计算机的错误计算(一百一十二)中的迭代为
对于 , Excel 与 LibreOffice 的输出均是错误结果,均没有1位正确有效数字。另外,其文献[1]中也含有一些错误数字,比如,
中只有2位正确数字。
下面利用错数分析这些出错原因。
由于 在内存中没有误差,所以不考虑
的错误计算,即假定第1次运算的结果中没有错误数字。因此,接下来只讨论
的错数。
对于 来说,
因此,
这样, 于是,
具有 0 位或 -1 位错误数字,即要么没有错误数字(也就是正确数字个数与自变量
的相同),要么(与自变量
相比)多了1位正确数字。
同理可得, 各自的
依次为 2 , 1 , 2 , 0 , 2 , 1 , 3 , 2 , 1 , 2 , 0 , 2 , 0 , 3 , 0 , 2 , 1 , 2 , 0 , 2 , 0 , 3 . 这样,
到
共23个错数的和为
0+2+1+2+0+2+1+3+2+1+2+0+2+0+3+0+2+1+2+0+2+0+3 = 31 .
正如上面的分析,函数值的错误数字数量为 与
之一。若全部取后者,则可得到错误数字数量的下界:31-23 = 8 . 若假设取到二者的概率是相同的,即一半是前者,一半是后者,那么错误数字数目为:31-23/2 = 19.5 .
总结:
(1)理论上, 的错误数字在
之间,很大概率在
位左右。因此,实践中,16位的
没有正确数字。
(2)若只考虑 的错误数字的积累,则
的错误数字个数在
之间,很大概率在
位左右。事实上,文献[1]中的
有 14位错误数字。
(3)文献[1]中的错误数字不是偶然的。比如,若在 Excel 或 LibreOffice 中计算 , 则同样各自只有 2位正确数字。