Weierstrass定理

在微積分中，**極值定理**說明如果實函數 _f_ 在閉區間 [_a_,_b_] 上是連續函數，則它一定取得最大值和最小值，至少一次。也就是說，存在 [_a_,_b_] 內的 _c_ 和 _d_，使得：

　
: $f(c)\geq f(x)\geq f(d)$ 對於所有 $x\in [a,b]$ 。

一個相關的定理是**有界性定理**，它說明閉區間 [_a_,_b_] 內的連續函數 _f_ 在該區間上有界。也就是說，存在實數 _m_ 和 _M_，使得：

　
: $m\leq f(x)\leq M$ 對於所有 $x\in [a,b]$ 。

極值定理強化了有界性定理，它表明函數不僅是有界的，而且它的最小上界就是最大值，最大下界就是最小值。

## 定理的證明

我們來證明 _f_ 的上界和存在最大值。把這個結果應用於函數–_f_，也可推出 _f_ 的下界和存在最小值。

我們首先證明有界性定理，它是證明極值定理中的一個步驟。

### 有界性定理的證明

假設函數 _f_ 在區間 [_a_,_b_] 內連續且沒有上界，那麼對於每一個自然數 _n_，都存在 [_a_,_b_] 內的一個 _x_n（仼定的），使得 _f_(_x_n) > _n_。這便定義了一個序列 {_x_n}。

由於 [_a_,_b_] 是有界的，根據波爾查諾 - 魏爾施特拉斯定理，可推出存在 {_x_n} 的一個收斂的子序列 $\{x_{n_{k}}\}$ 。把它的極限記為 _x_。由於 [_a_,_b_] 是閉區間，它一定含有 _x_。因為 _f_ 在 _x_ 處連續，我們知道 $\{f(x_{n_{k}})\}$ 收斂於實數 _f_(_x_)。

但對於所有的 _k_，都有 $f(x_{n_{k}})>n_{k}\geq k$ ，這意味著 $\{f(x_{n_{k}})\}$ 發散於無窮大。

前者描述為收斂，後者描述為無窮大，得出矛盾。因此，_f_ 在 [_a_,_b_] 內有上界。同理 _f_ 在 [_a_,_b_] 內有下界。證畢。

### 極值定理的證明 1

基本步驟為：

1. 尋找一個序列，它的像收斂於 _f_ 的最小上界。
2. 證明存在一個子序列，它收斂於定義域內的一個點。
3. 用連續性來證明子序列的像收斂於最小上界。

我們現在證明函數 _f_ 在區間 [_a_,_b_] 內有最大值。根據有界性定理，_f_ 有上界，因此，根據實數的戴德金完備性，_f_ 的最小上界 _M_ 存在。我們需要尋找 [_a_,_b_] 內的一個 _d_，使得 _M_ = _f_ (_d_)。設 _n_ 為一個自然數。由於 _M_ 是最小上界，_M_ – 1/_n_ 就不是 _f_ 的上界。因此，存在 [_a_,_b_] 內的 _d_n，使得 _M_ – 1/_n_ < _f_ (_d_n)。這便定義了一個序列 {_d_n}。由於 _M_ 是 _f_ 的一個上界，即便是對於所有的 _n_，我們仍有 _M_ – 1/_n_ < _f_ (_d_n) ≤ _M_。因此，序列 $\{f(d_{n})\}$ 收斂於 _M_。

根據波爾查諾 - 魏爾施特拉斯定理，可知存在一個子序列 $\{d_{n_{k}}\}$ ，它收斂於某個 _d_，且由於 [_a_,_b_] 是閉區間， $d\in [a,b]$ 。因為 _f_ 在 _d_ 處連續，所以序列 $\{f(d_{n_{k}})\}$ 收斂於 _f_ (_d_)。但 $\{f(d_{n_{k}})\}$ 是 $\{f(d_{n})\}$ 的一個子序列，收斂於 _M_，因此 _M_ = _f_ (_d_)。所以，_f_ 在 _d_ 處取得最小上界 _M_。證畢。

### 極值定理的證明 2

設 _M_ 是 _f_ 在區間 [_a_,_b_] 上的最小上界，我們要證明存在 $d\in [a,b]$ 使得 $f(d)=M$ 。我們使用反證法：如若不然，對任意 $x\in [a,b]$ ， $f(x)\neq M$ ，所以，對任意的 $x\in [a,b]$ ， $f(x)<M$ 。我們考慮正值的函數

　
: $g(x)={\frac {1}{M-f(x)}}.$

因為分母不是零，這個函數是良定義的，並且是連續的。然而，由於 _M_ 是 _f_ (_x_) 的最小上界，所以存在 $x\in [a,b]$ ，使得 _f_ (_x_) 可以無限地接近 _M_，從而 _g_(_x_) 是無界的。這和有界性定理矛盾。證畢。

注：上面構造函數 _g_(_x_) 來證明最大值能在某個 _d_ 取到的方法也在代數基本定理的基於 Liouville 定理的證明中出現。

## 例子

以下的例子說明了為什麼函數的定義域需要是閉的和有界的。

1. 定義在 [0,∞) 的函數 _f_(_x_) = _x_ 沒有上界。
2. 定義在 [0,∞) 的函數 _f_(_x_) = _x_/(1 + _x_) 有界，但不取得最小上界 1。
3. 定義在 (0,1] 的函數 _f_(_x_) = 1/_x_ 沒有上界。
4. 定義在 (0,1] 的函數 _f_(_x_) = 1 –_x_ 有界，但不取得最小上界 1。

## 推廣到半連續函數

如果把 _f_ 的連續性減弱為半連續，則有界性定理和極值定理的對應的一半仍然成立，且擴展的實數軸上的值–∞和 +∞也可以允許為可能的值。更加精確地：

**定理：**如果函數 _f_ : [_a_,_b_] → [–∞,∞) 是上半連續的，也就是說，對於 [_a_,_b_] 內的所有 _x_，都有：

　
: $\limsup _{y\to x}f(y)\leq f(x)$ ，

那麼 _f_ 有上界，且取得最小上界。

_證明：_如果對於 [_a_,_b_] 內的所有 _x_，都有 _f_(_x_) = –∞，那麼最小上界也是–∞，於是定理成立。在任何其它情況下，只需把上面的證明稍加修改便可。在有界性定理的證明中，_f_ 在 _x_ 處的半連續性只意味著子序列 $\{f(x_{n_{k}})\}$ 的上極限有上界 _f_(_x_) < ∞，但這已足以得到矛盾。在極值定理的證明中，_f_ 在 _d_ 處的半連續性意味著子序列 $\{f(d_{n_{k}})\}$ 的上極限有上界 _f_(_d_)，但這已足以推出 _f_(_d_) = _M_ 的結論。證畢。

把這個結果應用於−_f_，可得：

**定理：**如果函數 _f_ : [_a_,_b_] → (–∞,∞] 是下半連續的，也就是說，對於 [_a_,_b_] 內的所有 _x_，都有：

　
: $\liminf _{y\to x}f(y)\geq f(x)$

那麼 _f_ 有下界，且取得最大下界。

一個實函數是上半連續且下半連續的，若且唯若它是連續的。因此，從這兩個定理就可以推出有界性定理和極值定理。

## 參考文獻

* Parzynski, William R. Introduction to Mathematical Analysis. McGraw-Hill, Inc. 1982: 102-104.
* Michael Spivak. Calculus. Cambridge University Press. 2006.

## 外部連結

* cut-the-knot 上極值定理的證明 （頁面存檔備份，存於網際網路檔案館）
* Boundedness Theorem. PlanetMath.
* Extreme Value Theorem. PlanetMath.
* 埃里克・韋斯坦因。极值定理. MathWorld.