IEEE-754 标准是否要求 exp2 正确舍入?

计算科学 浮点 图书馆 准确性
2021-11-27 20:42:02

IEEE 浮点算术标准部分9.2 推荐的正确舍入函数”列出了语言标准推荐(但不是必需)提供的函数,其中一个exp2函数作为特定示例。

如果一种语言提供exp2,标准是否要求它正确四舍五入?

作为一个特定的例子,我exp2openlibm库中获取了这个函数,发现它在 99.96% 的情况下被正确舍入。然而,在其余的案例中(例如,100,000 个案例中的 37 个案例),它产生的答案相差 1 ulp。它显然非常准确,但在这 37 个案例中仍然没有正确四舍五入。这是否意味着其中的exp2功能openlibm不符合 IEEE-754 标准?

1个回答

根据 [1]:“但是,IEEE-754 标准没有为基本函数指定任何内容”和“实际上,操作系统提供的数学库 (libm) 并不能保证正确的舍入。”。因此,根据 [1],答案是 IEEE-754 标准不要求函数exp2正确舍入,它只推荐它。

[1] de Dinechin, F.、Ershov, AV 和 Gast, N. (2005)。迈向后终极库。在第 17 届 IEEE 计算机算术研讨会 (ARITH'05)(第 288-295 页)中。IEEE。http://doi.org/10.1109/ARITH.2005.46