秦九韶公式的推导过程
秦九韶公式是一种快速计算一个多项式在给定的点处取值的方法。它可以让计算一个多项式在多个点上取值成为可能,而不需要明确地进行多项式乘法。下面是秦九韶公式的推导过程分成四个部分。
一、定义
首先,让我们定义一个多项式f(x),它的次数为n,系数为a0、a1、a2...an。我们要计算f(x)在点x0处的取值,即f(x0)。
二、秦九韶公式的基本形式
我们知道,一个多项式f(x)可以表示为以下形式:
f(x) = a0 + a1*x + a2*x^2 + a3*x^3 + ... +an*x^n
如果我们要计算f(x0),那么我们只需要将x0带入上述公式依次计算即可。但这个过程比较繁琐。秦九韶公式的基本形式要点是将上述公式重新排列,变成以下形式:
f(x) = ((...(an*x + an-1)*x + an-2)*x + ... + a1)*x + a0
我们可以通过不断地将x0带入括号中的式子,逐一消除括号内的x,得到:
f(x0) = ((...(an*x0 + an-1)*x0 + an-2)*x0 + ... + a1)*x0 + a0
这样,我们只需要做一次多项式计算,即可得到f(x0)的值。
三、优化公式
然而,这个基本形式也并不是最优的。我们可以通过下面的步骤进一步简化公式:
1.我们设一个中间变量b,初始值为an。
2.我们从高次项an-1开始,依次向下迭代,每次将系数与中间变量相乘并加上下一项系数,即:
b = an-1 + b * x0
b = an-2 + b * x0
...
b = a1 + b * x0
b = a0 + b * x0
3.最后,b的值就是f(x0)。
四、优化公式的证明
我们可以通过归纳证明以上想法的正确性。假设我们已经计算出f(x0)的值。那么,对于:
b = an-1 + b * x0
我们已经得到:
b = an-1 * x0 + f(x0)
换句话说,我们已经计算出了方程右侧的值,现在要计算方程左侧的值。
由此可得,
b=an-1 * x0 + f(x0)               
=(an-1 * x0^2 + a(n-2) * x0 + a(n-3))*x0 +f(x0)
这样就有:
b=an-1 * x0^2 + a(n-2) * x0 + a(n-3)*x0^3 + ... + a1 * x0^(n-1) + a0 * x0^n + f(x0)   
=(an-1 * x0^3 + a(n-2) * x0^2 + a(n-3)*x0^4 + ... + a1 * x0^n-1 + a0 * x0^n-1) * x0 + a0 * x0^n + f(x0)
可以发现,右侧的式子为f(x)在x=x0处的基本形式,故可得到:
b=f(x0)
因此,我们可以通过迭代的方式,逐步消除多项式中的x,最终得到f(x0)的值。
这就是秦九韶公式的推导过程。