灾难性抵消 在数值分析中灾难性抵消英語catastrophic cancellation是指两个大小相近的数值的近似值相减得到的差值可能和原始数值相减得到的真实的差值有很大差异因而近似值的差值不能用作真实值差值的近似值 例如如果有两个螺柱一个长 L    cm displaystyle Ltextcm 另一个长 L    cm displaystyle Ltextcm 用厘米刻度的尺子测量其长度得到的近似值为 L     cm displaystyle tilde Ltextcm 和 L     cm displaystyle tilde Ltextcm 在相对误差方面它们是真实长度的良好的近似值近似值的误差小于真实长度的即  L   L      L      displaystyle Ltilde LL  但是如果用这些近似长度相减则差值为 L    L     cm   cm   cm displaystyle tilde Ltilde Ltextcmtextcmtextcm 而长度之间的真实差值是 L   L    cm   cm   cm displaystyle LLtextcmtextcmtextcm 用近似值算出的差  cm displaystyle textcm 和用真实值算出的差  cm displaystyle textcm 相比偏离了 即使差值计算本身是精确的灾难性抵消仍然有可能发生如上例所示它不是哪种类型的运算如浮点运算的属性当输入值本身是近似值时进行减法运算就必有灾难性抵消实际上根据Sterbenz引理英语Sterbenz lemma浮点运算中当输入值足够接近时浮点差可以精确计算浮点减法运算本身并未引入捨入誤差