算法笔记——泰勒展开
泰勒展开
在 \(x_0=0\) 处的泰勒展开
泰勒展开是对一个 \(n\) 次多项式 \(f(x)=\sum\limits_{i=0}^{n}a_ix^i\) 变换,这里 \(n\) 可以趋近于 \(\infty\)。
考虑这个多项式的 \(i\) 阶导 \(f^{(i)}(x)=\sum\limits_{j=0}^{n-i}(j+i)^{\underline i}x^j\)。
考虑 \(f^{(i)}(0)=i!a_i\),于是 \(f(x)=\sum\limits_{i=0}^{n} \frac{f^{(i)}(0)}{i!}x^i\)。
在 \(x_0\ne 0\) 处泰勒展开
我们考虑把 \(f(x)\) 向右平移 \(x_0\) 个单位,我们考虑平移自变量,得到 \(g(x)=\sum\limits_{i=0}^{n}a_i(x-x_0)^i\)。
考虑 \(g^{(i)}(x_0)=i!a_i\),于是得到 \(g(x)=\sum\limits_{i=0}^{n} \frac{g^{(i)}(x_0)}{i!}(x-x_0)^i\)。
再考虑将 \(g(x)\) 向左平移 \(x_0\) 个单位,我们考虑平移系数,也就是对 \(g^{(i)}(x_0)\) 向左平移 \(x_0\) 个单位,我们发现其实就是 \(f^{(i)}(x_0)\)。
于是我们得到 \(f(x)=\sum\limits_{i=0}^{n} \frac{f^{(i)}(x_0)}{i!}(x-x_0)^i\)。
验证(记录一下)
考虑将 \(f^{(i)}(x_0)\) 和 \((x-x_0)^i\) 展开。
如果对于每个 \(i\) 均满足:
-
当 \(j=i\) 时,\(x_0^{j-i}\binom{j}{i}\sum\limits_{k=i}^{j}(-1)^{k - i}\binom{j-i}{k-i}=1\)
-
当 \(j\ne i\) 时,\(x_0^{j-i}\binom{j}{i}\sum\limits_{k=i}^{j}(-1)^{k - i}\binom{j-i}{k-i}=0\)
那么它就是对的。
考虑:
-
当 \(j=i\) 时,\(x_0^{j-i} = x_0^0=1\), \(\binom{j}{i}=\binom{i}{i}=1\),\(\sum\limits_{k=i}^{j}(-1)^{k - i}\binom{j-i}{k-i}=(-1)^0\binom{0}{0}=1\)
-
当 \(j\ne i\) 时,\(\sum\limits_{k=i}^{j}(-1)^{k - i}\binom{j-i}{k-i}=0\),组合数一行的奇偶列互相抵消。