摘要 用错数分析计算机的错误计算(一百一十二)中错误计算的原因。
计算机的错误计算(一百一十二)中的迭代为
对于 , 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位正确数字。