若溫度感測器在黎明讀到 10°C、中午讀到 24°C,則在這之間某一時刻它必然讀過恰好 17°C——前提是溫度連續變化。中間值定理(intermediate value theorem)將這個日常觀察形式化,並將其化為一個無需明確計算即可證明根與不動點存在性的工具。
定理陳述
定理(中間值定理,IVT)。 設 f : [ a , b ] → R f : [a, b] \to \mathbb{R} f : [ a , b ] → R 是連續 的。若 y y y 是嚴格介於 f ( a ) f(a) f ( a ) 與 f ( b ) f(b) f ( b ) 之間的任意值,則存在 c ∈ ( a , b ) c \in (a, b) c ∈ ( a , b ) 使得 f ( c ) = y f(c) = y f ( c ) = y 。
一個在實際應用中常用的等價表述:若 f ( a ) f(a) f ( a ) 與 f ( b ) f(b) f ( b ) 異號 (即 f ( a ) ⋅ f ( b ) < 0 f(a) \cdot f(b) < 0 f ( a ) ⋅ f ( b ) < 0 ),則 f f f 在 ( a , b ) (a, b) ( a , b ) 內有根。
用二分法證明
不失一般性,設 f ( a ) < y < f ( b ) f(a) < y < f(b) f ( a ) < y < f ( b ) 。
以**二分法(bisection)**定義一列嵌套區間 [ a n , b n ] [a_n, b_n] [ a n , b n ] ,從 [ a 0 , b 0 ] = [ a , b ] [a_0, b_0] = [a, b] [ a 0 , b 0 ] = [ a , b ] 開始:
設 m n ≔ a n + b n 2 m_n \coloneqq \dfrac{a_n + b_n}{2} m n : = 2 a n + b n 為中點。
若 f ( m n ) < y f(m_n) < y f ( m n ) < y ,令 [ a n + 1 , b n + 1 ] ≔ [ m n , b n ] [a_{n+1}, b_{n+1}] \coloneqq [m_n, b_n] [ a n + 1 , b n + 1 ] : = [ m n , b n ] 。
若 f ( m n ) ≥ y f(m_n) \geq y f ( m n ) ≥ y ,令 [ a n + 1 , b n + 1 ] ≔ [ a n , m n ] [a_{n+1}, b_{n+1}] \coloneqq [a_n, m_n] [ a n + 1 , b n + 1 ] : = [ a n , m n ] 。
由構造,每一步均有 f ( a n ) < y ≤ f ( b n ) f(a_n) < y \leq f(b_n) f ( a n ) < y ≤ f ( b n ) ,且區間長度滿足
b n − a n = b − a 2 n → 0. b_n - a_n = \frac{b - a}{2^n} \;\to\; 0. b n − a n = 2 n b − a → 0.
R \mathbb{R} R 的完備性(completeness of R \mathbb{R} R ) (嵌套區間性質)保證唯一的點 c ∈ ⋂ n = 0 ∞ [ a n , b n ] c \in \bigcap_{n=0}^{\infty} [a_n, b_n] c ∈ ⋂ n = 0 ∞ [ a n , b n ] 的存在。
由於 a n ≤ c ≤ b n a_n \leq c \leq b_n a n ≤ c ≤ b n 且 b n − a n → 0 b_n - a_n \to 0 b n − a n → 0 ,有 a n → c a_n \to c a n → c 且 b n → c b_n \to c b n → c 。f f f 的連續性給出 f ( a n ) → f ( c ) f(a_n) \to f(c) f ( a n ) → f ( c ) 和 f ( b n ) → f ( c ) f(b_n) \to f(c) f ( b n ) → f ( c ) 。因 f ( a n ) < y f(a_n) < y f ( a n ) < y 對所有 n n n 成立,取極限得 f ( c ) ≤ y f(c) \leq y f ( c ) ≤ y 。因 f ( b n ) ≥ y f(b_n) \geq y f ( b n ) ≥ y 對所有 n n n 成立,取極限得 f ( c ) ≥ y f(c) \geq y f ( c ) ≥ y 。故 f ( c ) = y f(c) = y f ( c ) = y 。□ \square □
應用
多項式求根
每個奇次實係數多項式至少有一個實根。( 2 k + 1 ) (2k+1) ( 2 k + 1 ) 次多項式 p p p 滿足:x → + ∞ x \to +\infty x → + ∞ 時 p ( x ) → + ∞ p(x) \to +\infty p ( x ) → + ∞ ,x → − ∞ x \to -\infty x → − ∞ 時 p ( x ) → − ∞ p(x) \to -\infty p ( x ) → − ∞ ,故對足夠大的 R > 0 R > 0 R > 0 ,有 p ( − R ) < 0 < p ( R ) p(-R) < 0 < p(R) p ( − R ) < 0 < p ( R ) 。中間值定理給出 ( − R , R ) (-R, R) ( − R , R ) 內的一個根。
例。 多項式 p ( x ) = x 3 − 2 p(x) = x^3 - 2 p ( x ) = x 3 − 2 連續,且 p ( 0 ) = − 2 < 0 p(0) = -2 < 0 p ( 0 ) = − 2 < 0 、p ( 2 ) = 6 > 0 p(2) = 6 > 0 p ( 2 ) = 6 > 0 。由中間值定理,存在 c ∈ ( 0 , 2 ) c \in (0, 2) c ∈ ( 0 , 2 ) 使得 c 3 = 2 c^3 = 2 c 3 = 2 ——這就是 2 3 \sqrt[3]{2} 3 2 存在性的證明。
不動點的存在性
推論(一維 Brouwer 不動點定理)。 每個連續的 f : [ 0 , 1 ] → [ 0 , 1 ] f : [0, 1] \to [0, 1] f : [ 0 , 1 ] → [ 0 , 1 ] 都有不動點(fixed point) :某個 c ∈ [ 0 , 1 ] c \in [0, 1] c ∈ [ 0 , 1 ] 使得 f ( c ) = c f(c) = c f ( c ) = c 。
證明。 定義 g ( x ) ≔ f ( x ) − x g(x) \coloneqq f(x) - x g ( x ) : = f ( x ) − x 。因 f f f 將 [ 0 , 1 ] [0,1] [ 0 , 1 ] 映入 [ 0 , 1 ] [0,1] [ 0 , 1 ] ,有 g ( 0 ) = f ( 0 ) ≥ 0 g(0) = f(0) \geq 0 g ( 0 ) = f ( 0 ) ≥ 0 且 g ( 1 ) = f ( 1 ) − 1 ≤ 0 g(1) = f(1) - 1 \leq 0 g ( 1 ) = f ( 1 ) − 1 ≤ 0 。若其中一個為零,則 0 0 0 或 1 1 1 即為不動點。否則 g ( 0 ) > 0 > g ( 1 ) g(0) > 0 > g(1) g ( 0 ) > 0 > g ( 1 ) ,中間值定理給出 c ∈ ( 0 , 1 ) c \in (0, 1) c ∈ ( 0 , 1 ) 使得 g ( c ) = 0 g(c) = 0 g ( c ) = 0 ,即 f ( c ) = c f(c) = c f ( c ) = c 。□ \square □
二分演算法
此證明具有建構性:每一步將包含穿越點的區間減半。n n n 步後,根的位置精確到 ( b − a ) / 2 n (b - a)/2^n ( b − a ) / 2 n 以內。這就是二分法(bisection method) ——數值計算中最可靠的求根演算法之一,具有保證的線性收斂性。
def bisect ( f , a , b , tol = 1e-9 ):
assert f ( a ) * f ( b ) < 0 , "f must have opposite signs at a and b"
while ( b - a ) / 2 > tol :
m = ( a + b ) / 2
if f ( m ) == 0 :
return m
elif f ( a ) * f ( m ) < 0 :
b = m
else :
a = m
return ( a + b ) / 2
摘要
中間值定理 :在 [ a , b ] [a, b] [ a , b ] 上連續 的 f f f 取遍 f ( a ) f(a) f ( a ) 與 f ( b ) f(b) f ( b ) 之間的每一個值。
證明 :在每一步對區間進行二分,維持端點異號;R \mathbb{R} R 的完備性確定穿越點,連續性迫使其等於 y y y 。
求根 :每個奇次多項式有實根;2 3 \sqrt[3]{2} 3 2 等特定根的存在性由對 x 3 − 2 x^3 - 2 x 3 − 2 應用中間值定理得出。
不動點 :[ 0 , 1 ] [0, 1] [ 0 , 1 ] 上每個連續的自映射都有不動點——對 f ( x ) − x f(x) - x f ( x ) − x 應用中間值定理即得。
二分演算法 :此證明是演算法性質的——反覆減半可在 O ( log ( 1 / ε ) ) O(\log(1/\varepsilon)) O ( log ( 1/ ε )) 步內將任意根定位至精度 ε \varepsilon ε 。