我遇到了 Ulp 的以下定义(来自这篇文章1,定义 5。):
尽管有一些不清楚的地方(定义中的线性一词是否意味着在两个 FP(浮点)数之间,这个函数是线性的 - 不是常数),因为我理解两个实数之间的ulp 距离与 FP 之间的数量成正比这些数字。但是,从该定义的下一个用法(在那篇文章中)来看,它没有任何意义:
这里x是实数,X是 FP 数,RN( x ) 表示x舍入到最接近的 FP 数。上述不等式两边的量具有不同的性质:LHS 是实数(可以是任意小的),RHS 是离散的(x和X之间的 FP 数)。
更新
假设精度为 0.1。FP 为 0, 0.1, 0.2, ... 取x =0.06 和X =0.3。然后I(x) =0.6, I(X) =3 我们有 | XX | = 0.24,并且 ulp 距离为 2.4,因此不等式已得到满足,但x舍入到最接近的 FP 的结论是不正确的。
我错过了什么吗?
- 关于 ulp(x) 的定义,Jean-Michel Muller