泰勒展開的誤差項

首先,讓我們忽略一些細節而直接回顧泰勒多項式 + 誤差項的型式:



這一節就是要談誤差項 的一種型式。 這種型式通常稱為 微分型式 或拉格朗日 (Lagrange) 型式。 它來自於微分均值定理。 很明顯地, 應該是 x 的函數,而且 $R_n(x_0)=0$。 此外,我們將以上的 n-1 階泰勒多項式記做 $p_{n-1}(x)$, 因此 $f(x) = p_{n-1}(x) + R_n(x)$

讓我們再看看微分均值定理說了什麼? 如果 f(x) 是一個在 [a,b] 區間中的 C1 函數,記做 意思是說,f(x) 在 [a,b] 中連續,在 (a,b) 中可微, 而且其導函數 f'(x) 可以拓展成 [a,b] 區間內的連續函數。 那麼,存在某數 $\xi\in(a,b)$ 使得

\begin{displaymath}
f'(\xi)= \frac{f(b)-f(a)}{b-a} \end{displaymath}

如果我們令 x0 是 [a,b] 區間的中點 (x0 = (a+b)/2), 令 R = b - x0。 然後挑選任何一個點 $x\in[x_0-R, x_0+R]$。 如果 x > x0,則 f(x) 也是 $[x_0,x]$ 內的 C1 函數, 因此可以將微分均值定理應用在它上面,得到:
\begin{displaymath}
f'(\xi)= \frac{f(x)-f(x_0)}{x-x_0}\quad\hbox{for some}\quad\xi\in(x_0,x) \end{displaymath}

反之,如果 x < x0,則 f(x) 是 $[x,x_0]$ 內的 C1 函數, 因此可以將微分均值定理應用在它上面,得到:
\begin{displaymath}
f'(\xi)= \frac{f(x_0)-f(x)}{x_0-x}\quad\hbox{for some}\quad\xi\in(x,x_0) \end{displaymath}

我們發現,前兩條等式其實是一樣的,只有 x 所屬的區間改變而已。 總而言之,我們可以合併前面兩條式子,寫成
如果 $f(x) \in C^1([x_0-R, x_0+R])$ 則對任何 $x\in[x_0-R, x_0+R]$ 都有
\begin{displaymath}
f'(\xi)= \frac{f(x)-f(x_0)}{x-x_0}\quad\mbox{for some $\xi$ between $x$ and
$x_0$} \end{displaymath}

注意,上述的 R 未必是 f(x) 以 x0 為參考點的泰勒級數收斂半徑。 從我們對微分均值定理的認識,就已經知道,上述的 $\xi$ 與 x0 和 x 有關,但是我們卻不能肯定它是哪個數。

將上述等式重新整理,便得到

\begin{displaymath}
f(x) = f(x_0) + f'(\xi)(x-x_0) \end{displaymath}

您看,這不就是 n = 1 情況下的泰勒多項式和誤差項嗎? 從這裡,我們發現
\begin{displaymath}
R_1(x) = f'(\xi)(x-x_0) \end{displaymath}

現在,我們用一套「型式化」推理 (formal reasoning), 來探討一般的正整數 n 情況下 是什麼。所謂「型式化」推理,就是型式上正確但是骨子裡並不完全正確的意思 (但是它推理的結果是正確的)。 型式化的推理,雖然嚴格來說並不正確,但是比較容易讓我們瞭解整個理論架構。 要把它完全寫對,並非十分困難,只是麻煩些, 我們並不打算在這裡講解嚴格而完全正確的推理過程。

假設 $f(x)\in C^n([x_0-R, x_0+R])$。 意思是說,f(x) 在 [x0-R, x0+R] 中連續, 而且它在 (x0-R, x0+R) 中的一次、二次、...、n 次導函數

\begin{displaymath}
f'(x), f''(x), f^{(3)}(x),\ldots, f^{(n)}(x) \end{displaymath}

都存在,而且都可以拓展成 [x0-R, x0+R] 上的連續函數。

既然 $f(x)\in C^n([x_0-R, x_0+R])$$f^{(n-1)}(x)\in C^1([x_0-R, x_0+R])$ 我們可以把微分均值定理應用在它身上,得到: 對任意一個點 $x\in[x_0-R, x_0+R]$ 都有,

\begin{displaymath}
f^{(n)}(\xi)= \frac{f^{(n-1)}(x)-f^{(n-1)}(x_0)}{x-x_0}\quad
\mbox{for some $\xi$ between $x$ and $x_0$} \end{displaymath}

因為
\begin{displaymath}
p_{n-1}^{(n-1)}(x) = f^{(n-1)}(x_0) \end{displaymath}

所以,從 $f(x) = p_{n-1}(x) + R_n(x)$ 得知
\begin{displaymath}
f^{(n-1)}(x) = p_{n-1}^{(n-1)}(x) + R_n^{(n-1)}(x)
= f^{(n-1)}(x_0) + R_n^{(n-1)}(x) \end{displaymath}

代入前三條式子,我們得知
\begin{displaymath} f^{(n)}(\xi)(x-x_0) = R_n^{(n-1)}(x)\quad
\mbox{for some $\xi$ between $x$ and $x_0$}
\end{displaymath}

現在,讓我們假設 $\xi$ 是一個常數,因此與 x 無關 (這裡就是「型式化」推理的錯誤所在,其實 $\xi$ 是與 x 有關的,當 x 改變, $\xi$ 也會變。但是,我們暫且忽略這個事實,繼續做型式化的推理)。則 $f^{(n)}(\xi)$ 也是一個常數。所以當我們在上式之兩側都做積函數,則是

\begin{displaymath}
\int_{x_0}^x R_n^{(n-1)}(t)\,dt = \int_{x_0}^x f^{(n)}(\xi) (t-x_0)\,dt
\end{displaymath}

積出來
\begin{displaymath}
R_n^{(n-2)}(x) - R_n^{(n-2)}(x_0) = f^{(n)}(\xi)\frac12 (x-x_0)^2
\end{displaymath}

讀者應該可以自行推導以下等式:
\begin{displaymath}
R_n^{(n-2)}(x_0) = f^{(n-2)}(x_0) - p_{n-1}^{(n-2)}(x_0) = 0 \end{displaymath}

代回前一條式子,就獲得
\begin{displaymath}
R_n^{(n-2)}(x) = f^{(n)}(\xi)\frac12 (x-x_0)^2 \end{displaymath}

重複在等式兩側做積函數,就得到
\begin{eqnarray*}
R_n^{(n-3)}(x) &=& f^{(n)}(\xi)\frac16 (x-x_0)^3 \\ R_n^{(n-4... ...\\
&\vdots& \\ R_n(x) &=& f^{(n)}(\xi)\frac1{n!} (x-x_0)^n \\ \end{eqnarray*}

這樣,就得到了微分型式的泰勒展開誤差項。 我們結論如下。
如果存在某數 x0 和某正數 R,使得 $f(x)\in C^n([x_0-R, x_0+R])$ 則對任何 $x\in[x_0-R, x_0+R]$, f(x) 以 x0 為參考點的 n-1 階泰勒多項式與其誤差項就是
\begin{displaymath}
f(x) = \sum_{k=0}^{n-1} \frac{f^{(k)}(x_0)}{k!}(x-x_0)^k + \... ...{n!}(x-x_0)^n\quad
\mbox{for some $\xi$ between $x$ and $x_0$} \end{displaymath}

雖然我們不能確定 $\xi$ 到底是誰,但是如果可以肯定有一個正數 M 使得 $\vert f^{(n)}(\xi)\vert\leq M$ 則對於任何介於 x 和 x0 之間的 $\xi$, 都可以估計泰勒多項式和函數之間的差異,最多也不過是

\begin{displaymath}
\Bigl\vert f(x) - \sum_{k=0}^{n-1}\frac{f^{(k)}(x_0)}{k!}(x-... ...gr\vert
=\vert R_n(x)\vert \leq \frac{M}{n!}\vert x-x_0\vert^n \end{displaymath}

當 f(x) 無限多次可微,而它的泰勒多項式之階數趨向無限大之後, 就是泰勒級數。如果對某個實數 x



則在那個 x 處的泰勒級數收斂到原函數 f(x)。 現在,我們可以證明正弦函數 sin(x) 以 0 為參考點的泰勒級數對任何實數 x 都收斂。 因為,對於 sin(x) 以 0 為參考點的泰勒多項式誤差項而言,
\begin{displaymath}
R_n(x) = \Bigl(\frac{d^n}{dx^n}\sin x\bigl.\bigr\vert _{x=\xi}\Bigr)
\times\frac{x^n}{n!} \end{displaymath}

所以
\begin{displaymath}
\vert R_n(x)\vert \leq \frac{\vert x\vert^n}{n!} \end{displaymath}

因為
\begin{displaymath}
\frac{\vert x\vert^n}{n!} =\frac{\vert x\vert}{1}\times \fra...
...frac{\vert x\vert}{3}\times\cdots\times \frac{\vert x\vert}{n}
\end{displaymath}

此時 |x| 是某個已經選定的實數,但是 n 卻越來越大,可見
\begin{displaymath}
\lim_{n\to\infty}\frac{\vert x\vert^n}{n!}=0\quad\mbox{for any $x$} \end{displaymath}

只是,如果 |x| 越大,需要的階數 n 就越高, 才能獲得較小的誤差。不過,對於正弦函數而言, 我們只需要討論 x 在 $[0,2\pi)$ 或者 $[-\pi, \pi)$ 之內,所以上述問題並不嚴重。

以下習題常說「有效數字」,意思是說從第一個非零數字以後的數。 例如 3002, 1.234, 0.002709, 0.00006667 都有四位有效數字。

習題

  1. 請用 ln(x) 以 1 為參考點的 4 階泰勒多項式計算 ln(1.5) 的估計值, 並寫出此估計值的誤差最多是多少。 如果需要數值計算,寫出四位有效數字。
  2. 請用 sin(x) 以 0 為參考點的 5 階泰勒多項式計算 sin(1) 的估計值, 並寫出此估計值的誤差最多是多少。 如果需要數值計算,寫出四位有效數字。
  3. 請用 以 0 為參考點的 4 階泰勒多項式計算 的估計值, 並寫出此估計值的誤差最多是多少。 如果需要數值計算,寫出四位有效數字。
  4. 對於任何一個給定的實數 x,請證明指數函數 ex 以 0 為參考點的泰勒級數會收斂。
  5. 請估計 ex 以 0 為參考點的 4 階泰勒多項式與 ex 之間的誤差最多會是多少? 如果需要數值計算,寫出兩位有效數字。
  6. 若要用 ex 以 0 為參考點泰勒多項式來估計 e0.5, 而且希望估計值至少準確到小數點下第四位, 請問至少需要幾階的泰勒多項式?
  7. 若要用 cos(x) 以 0 為參考點泰勒多項式來估計 cos(1), 而且希望估計值至少準確到小數點下第四位, 請問至少需要幾階的泰勒多項式?

Created: Aug 16, 2001
Last Revised: Aug 31, 2001
© Copyright 2001 Wei-Chang Shann 單維彰