形式陈述
一个数值问题首先可建模为两个度量空间 公理库 度量空间 Metric space 用满足正定性、对称性与三角不等式的实值距离刻画点间远近的空间。 之间的映射 公理库 函数 Function · Map · Mapping 由定义域、陪域和单值图共同组成,并把每个输入送到唯一输出的映射。
F : ( D , d D ) ⟶ ( S , d S ) , s = F ( d ) , 其中 d 是精确输入,s 是问题规定的精确输出。这个单值写法隐含了可解性与输出选择已经固定;若原规格允许多个答案,应把 F ( d ) 视为解集,并用 inf s ∈ F ( d ) d S ( s ^ , s ) 衡量输出,不能任取一个代表后仍沿用单值条件数。
实际机器先把输入编码成可表示数据 d ^ ∈ D ^ ,算法 A 在有限步后给出 s ^ = A ( d ^ ) ∈ S ^ 。因此“求解 F ”至少包含三个不同对象:问题映射 F 、选定的算法 A ,以及算法在具体格式、编译器和停止规则下的一次实现。问题对数据扰动的敏感性属于 F ;算法怎样传播舍入和迭代误差属于 A ;溢出、NaN、融合乘加与并行重排还依赖执行环境。
最终误差 d S ( s ^ , F ( d ) ) 往往经过一条误差链产生:d 到 d ^ 的表示或测量误差;连续问题替换为有限问题的离散化误差;迭代尚未完成的误差;每步有限精度运算的舍入误差。若离散问题 F h 与原问题的输出已放在同一度量空间,三角不等式至少给出
d S ( s ^ , F ( d ) ) ≤ d S ( s ^ , F h ( d ^ ) ) + d S ( F h ( d ^ ) , F ( d ) ) . 第一项还可分成迭代与舍入部分,第二项包含输入和离散化影响;各部分仍会经逆算子或迭代传播放大,不能仅凭来源标签机械相加。完整分析必须说明范数、允许扰动的数据、离散参数以及在哪个极限下取界。
计算成本也不只由输入规模 n 决定。若输出容差为 ε ,工作量、存储量与所需工作精度更诚实的写法是 C ( n , ε , κ , u ) ;条件尺度 κ 、网格参数和 unit roundoff u 都可能改变能否达到目标。精确算术中的算法正确性 公理库 算法正确性 Algorithm correctness · Partial and total correctness 所有合法执行都符合规格,并在完全正确时保证终止。 仍是起点,数值正确性还要求逼近误差受控、停止条件能证实规格,并且有限精度执行没有破坏推导所用的假设。
直觉
“解 A x = b ”是一项数学任务,不是一段固定程序。Gaussian 消元把矩阵化为三角系统;共轭梯度法只在特定结构下沿低维子空间逼近;两者可以解同一个问题,却有不同的适用条件、成本和有限精度行为。把问题、算法、实现分层以后,条件数为何不能评价某段代码、收敛定理为何不能自动保证计算结果可信,都会变得清楚。
同一算法也可能有不同实现。例如一个代数恒等的表达式在实数中给出同一值,在浮点运算中却因运算顺序不同而产生不同舍入路径。分析要在给定数据、资源和精度目标下分清不可避免的误差与算法选择造成的误差,并说明最后能交付哪些可信数字。
例子与边界
设 F ( A , b ) = A − 1 b ,定义域只包含可逆矩阵。取
A = diag ( 1 , 10 − 8 ) , b = ( 1 , 10 − 8 ) T , 真解为 ( 1 , 1 ) T 。若测量把第二个右端分量扰动为 0 ,则 ‖ Δ b ‖ 2 / ‖ b ‖ 2 ≈ 10 − 8 ,即使精确求解扰动后的系统也只能得到 ( 1 , 0 ) T ,相对解误差为 1 / 2 。这是问题条件性设置的精度上限;另一个不稳定实现还可能在这之上继续丢失数字。前者不能归咎于算法,后者也不能用“原问题病态”开脱。
连续积分也展示另一层差别。F ( f ) = ∫ a b f ( x ) d x 是数学问题;复合求积先用有限采样替代 f ,产生离散化误差;自适应算法再用局部估计决定采样位置;浮点求和又产生舍入误差。只报告最终小数位,而不说明函数类、网格、误差度量和参考值,无法构成数值结论。
并非所有算法问题都适合强行套入连续条件数。比较排序在无 NaN 的离散全序上要求输出一个满足次序规格的排列,通常属于精确离散问题;它仍可能受错误比较器或浮点 NaN 语义影响,但这与连续映射的局部敏感性不是同一概念。
推论与应用
这套分层为后续页面提供共同坐标:条件性 公理库 问题条件性与条件数 Conditioning of a problem · Condition number 度量问题真解对输入微扰的局部敏感性,并把这种固有敏感性与算法误差分开。 研究 F ,数值稳定性 公理库 数值稳定性 Numerical stability · Backward stability 以允许的小输入扰动刻画算法的有限精度行为,并与问题条件性及其他稳定性概念分开。 研究 A ,误差度量 公理库 误差度量:绝对、相对与分量误差 Error measures · Absolute and relative error 用绝对、相对、范数型与逐分量尺度准确说明近似量偏离真值的程度。 规定“接近”的尺度,前向与后向误差 公理库 前向误差与后向误差 Forward and backward error 分别衡量计算答案离真解多远,以及它能否视为邻近输入问题的精确解。 连接计算结果和邻近问题,离散化误差 公理库 离散化误差与截断误差 Discretization error · Truncation error 区分连续问题的离散缺陷与离散解的全局误差,并说明一致性为何不能单独保证收敛。 解释连续模型怎样变成有限模型,残差与误差估计 公理库 残差、误差估计与停止准则 Residual and error estimation · Stopping criterion 区分可计算残差与未知真误差,并说明把缺陷转成误差界和停止证书所需的条件。 则回答运行到何时可以停。
因此,线性方程、常微分方程和积分的基础页面只需定义数学对象及其可解性;具体算法、误差界和实现边界应留在数值分析中。这样每个完整定义只出现一次,应用页仍能通过明确链接说明它为何需要该定义。
参考资料
Lloyd N. Trefethen, “The Definition of Numerical Analysis,” in The Princeton Companion to Mathematics , 2008.
Nicholas J. Higham, Accuracy and Stability of Numerical Algorithms , 2nd ed., SIAM, 2002, Ch. 1.
NIST Digital Library of Mathematical Functions, Chapter 3: Numerical Methods , accessed 2026.