1.6 再议多项式求值
对于多项式
如果用 Horner 规则计算:
然后对原来的结果增加下标,使得对每一个值有唯一的符号( 是最后的结果):
然后对每个浮点运算考虑舍入误差,可得:
展开,可以得到多项式最后计算值的表达式:
假设 , 并用二项式展开定理及 的泰勒展式可得如下不等式成立:
通常做合情合理的假设 并做近似
可以重写 的表达式
故 的实际计算值 可以看成是具有不同系数的一个多项式的精确值,进 而可得如下的误差估计式:
说明:
- 是可以计算的最大值。
- 若取 误差估计 式中的等号是可以成立的, 乘了一个适当的系数 。
- 可使用 作为多项式求值的相对条件数。
花费双倍运算量容易计算多项式的值及其误差界:
故多项式的正确值位于区间
之间,并且确保正确的十进制数字位数是
定义 1.1 条件数为无穷大的问题称为是病态(ill-posed)的,否则称为适定 (well-posed)的.
定义 1.2 设
和
定义 到 的相对距离 为满足
的最小值。若所有的 ,则有
另外,若 , 则因 有限, 必为零。
定理 1.2 假如 不恒等于零,则
换言之, 在 点处距 最近的病态多项式 到 的距离是 的条件数的倒数。
证明:
记
使得
则由
推出
由此可得
取下界的多项式 是存在的,只需选择
证毕。
说明:
- 给定问题的条件数与该问题到最近病态问题的距离之间的互为倒数关系是一个非常普遍的 关系。
- 知道了矩阵的 Jordan 标准型,则计算矩阵的特征值就是一件非常容易的事情。
- 同样如果知道多项式的根,则多项式求值也是一件非常容易的事情。
其中 为 次多项式的 个根, 算法流程如下:
计算值 与 的关系如下:
但需要知道多项式根!