§26-4  等度連續與挑選

有界的數列必有收斂的子數列。把「點」換成「函數」之後,同一句話還成立嗎——如果不成立,缺的是什麼條件?

一整族函數的挑選定理

合唱團裡每個人單獨唱都很穩。可是「全團同時能多穩」是另一個問題——它取決於最不穩的那一個。只要團裡不斷有新人加入,而每個新人都比前一個略差一點,全團的整齊度就沒有下限。

§16-3 的 Bolzano-Weierstrass 定理說:ℝᵖ 中有界的數列必有收斂的子數列。本篇問同一個問題,可是把「點」換成「函數」:一族連續函數在什麼條件下,任何一列都挑得出均勻收斂的子列?

以下固定 K 為 ℝᵖ 的一個 compact 子集,本篇所有函數都以 K 為定義域、值落在 ℝ^q;由 22.5 這樣的函數自動有界。

光是有界不夠——§24-1 例 1 那列 xⁿ 就是現成的反例,它們的 uniform norm 全是 1,可是任何子列都不均勻收斂。缺的正是「全團的整齊度」,而那件事需要一個新的名字。

26.6  DEFINITION
A set ℱ of functions on K to ℝ^q is uniformly equicontinuous on K in case for each ε > 0 there is δ(ε) > 0 such that ‖f(x) − f(y)‖ < ε whenever x, y ∈ K, ‖x − y‖ < δ(ε) and f ∈ ℱ.
同一個 δ 要對整族函數通用。與 §23-1 的均勻連續相比又多脫掉一層依賴:那裡的 δ 已經不跟著位置走,這裡連跟著函數走都不准。K 是 compact 時每個成員自己一定均勻連續(23.3),可是各自的 δ 取 inf 之後可能是零——這正是無限多個成員時會出的事。
正例:K compact 時,任何有限的連續函數族都等度連續——每個成員由 23.3 各自均勻連續,各取自己的 δ 再取最小值,有限多個正數的 inf 仍是正的。(K 不 compact 時這句就垮了:只含 x² 一個成員的族在 ℝ 上連均勻連續都不是。)反例:ℱ = {xⁿ : n ∈ ℕ} 於 [0, 1] 不等度連續——取 ε₀ = ½、xₙ = 1、yₙ = 2^{−1/n},兩點的距離趨向零而 |fₙ(xₙ) − fₙ(yₙ)| = ½ 恆定。
一個會用到的預備事實:ℝᵖ 的每個子集 K 都含有一個可數的稠密子集 C——意思是任給 y ∈ K 與 ε > 0,C 中都有一點離 y 不到 ε。作法:對每一組「有理座標的點 r 與自然數 n」,若以 r 為心、1/n 為半徑的球碰得到 K,就從交集裡挑一個點收進 C。這樣的組合只有可數多個(3.4),所以 C 可數;而任給 y 與 ε,取 n 使 2/n < ε,再由稠密性(6.10 逐座標用一次)取 r 離 y 不到 1/n,該球必定碰得到 K(它含 y),於是 C 裡那一點離 y 不到 2/n。
26.7  ARZELÀ-ASCOLI THEOREM
Take K compact in ℝᵖ and let ℱ consist of functions that are continuous on K and take values in ℝ^q. The following are equivalent.
(a)  ℱ is bounded and uniformly equicontinuous on K.
(b)  Every sequence from ℱ has a subsequence which converges uniformly on K.
這是 Bolzano-Weierstrass 定理在函數空間裡的對應版本:「有界」換成「有界且等度連續」,「收斂子數列」換成「均勻收斂的子列」。多出來的那個條件不是技術性的補充——它恰好補上了「函數比點多一個維度」所損失的東西。這條定理在微分方程與積分方程的理論裡是主力工具。
正例:ℱ = {f : |f| ≤ 1 且 |f(x) − f(y)| ≤ |x − y|} 於 K = [0, 1]。有界(界為 1)、等度連續(δ(ε) = ε 對每個成員都通用),所以任何一列都挑得出均勻收斂的子列。反例:{xⁿ} 有界卻不等度連續,而它確實沒有均勻收斂的子列——任何子列的逐點極限都是那個在 1 跳一階的函數,而 24.1 說均勻極限必定連續。
PROOF  1/2 · (b) ⟹ (a)

走反面:假設 (a) 的兩個條件之一失守,各造出一列沒有均勻收斂子列的函數。

證明計畫 · 由所求想起
所求是兩個反例。無界那一邊便宜:挑出 norm 越來越大的一列,任何子列同樣無界,而均勻收斂的數列必定有界。
不等度連續那一邊:與 23.2 的手法相同——把「每個 δ 都失敗」兌現成一列函數與兩列越靠越近的點。要證任何子列都不均勻收斂,就假設某個子列收斂到 g,再用 g 自己的均勻連續把三段誤差湊到小於 ε₀,與反例的承諾衝突。

Proof.  If ℱ is not bounded, choose fₙ ∈ ℱ with ‖fₙ‖_K ≥ n. Every subsequence is again unbounded, and a uniformly convergent sequence is bounded (the argument of 24.2), so no subsequence converges uniformly.
這一格是例行核對。「均勻收斂的數列必定有界」與 16.8(Cauchy 數列必定有界)是同一個手法:取 ε = 1 拿到一個固定的參照函數,再繞經它估計——24.2 的證明已經走過一次。
If ℱ is not uniformly equicontinuous, there is ε₀ > 0 such that for each n the choice δ = 1/n fails: there are fₙ ∈ ℱ and xₙ, yₙ ∈ K with ‖xₙ − yₙ‖ < 1/n and ‖fₙ(xₙ) − fₙ(yₙ)‖ ≥ ε₀.
這一步的所求:把否定敘述兌現成具體的證物。與 23.2 的差別只有一處——那裡兩條數列來自同一個函數,這裡每一項各配一個不同的函數 fₙ,因為失守的是整族的整齊度而不是單一成員的均勻連續。每個成員自己仍然均勻連續(K compact,23.3),這一點下一格會用到。
Suppose some subsequence (f_{n(k)}) converged uniformly to g. Then g is continuous by 24.1 and uniformly continuous by 23.3, so there is δ with ‖g(x) − g(y)‖ < ε₀/3 whenever ‖x − y‖ < δ. Taking k large enough that ‖f_{n(k)} − g‖_K < ε₀/3 and 1/n(k) < δ gives
  ‖f_{n(k)}(x_{n(k)}) − f_{n(k)}(y_{n(k)})‖ < ε₀,
contradicting the choice above.
這一步是矛盾的核心。三段拆解與 24.1 的證明逐句同構:從 f_{n(k)} 跳到 g、在 g 上走過去、再跳回來,頭尾兩段由均勻收斂統一壓住,中間那段由 g 的均勻連續負責。差別在於這次中間那段需要的是均勻連續而非逐點連續,因為 x_{n(k)} 與 y_{n(k)} 的位置隨 k 移動,沒有固定的基準點。
兩個條件都是必要的。∎
PROOF  2/2 · (a) ⟹ (b)

設 ℱ 有界且等度連續,任給一列 (fₙ)。取上面那個可數稠密子集 C = {x₁, x₂, ⋯} ⊆ K。

證明計畫 · 由所求想起
所求是一條在整個 K 上均勻收斂的子列,而 K 有無限多個點,一次處理不完。先只要求在可數多個點上收斂:在 x₁ 上用 Bolzano-Weierstrass 挑一次子列,再在 x₂ 上從剛才的子列裡再挑一次⋯每一輪保住前面所有輪的成果。可是這樣挑不完,所以取對角線——第 n 條子列的第 n 項。它從第 n 項起是第 n 條的子列,於是在每個 x_k 上都收斂。
最後把「可數多個點上收斂」升級成「整個 K 上均勻收斂」:等度連續讓每個 x ∈ K 借用附近某個 x_k 的資訊,而 compact 保證借用的對象只需有限多個。

Proof.  The sequence (fₙ(x₁)) is bounded in ℝ^q, so by 16.4 it has a convergent subsequence; write the corresponding functions as (f¹ₙ). From (f¹ₙ(x₂)) extract a convergent subsequence (f²ₙ), and so on. Put gₙ = fⁿₙ. For each k, the terms of (gₙ) from the k-th onwards form a subsequence of (f^kₙ), so (gₙ(x_k)) converges.
這一步是對角線手法,值得慢讀。每一輪的子列都是前一輪的子列,所以越後面的子列越乖——它在前面所有的取樣點上都收斂。對角線那一條之所以全部繼承,是因為它從第 k 項起整條住在第 k 條裡面,而 15.3 說極限只認尾巴,前面幾項不影響收斂。這與 §3-3 證明實數不可數時用的是同一個對角線構造,只是那裡用來製造差異,這裡用來收攏。
Let ε > 0 and take δ(ε) from equicontinuity. The balls of radius δ(ε) about points of C cover K, so by compactness finitely many suffice; let their centres be y₁, ⋯, y_k ∈ C. Since each (gₙ(y_i)) converges, there is M with ‖gₙ(y_i) − g_m(y_i)‖ < ε for all n, m ≥ M and all i.
這一步把可數降成有限。稠密性保證那些球蓋得住 K,compact 把它們裁成有限多個——而「有限」正是取得到共同編號 M 的理由:k 個收斂的數列各給一個編號,取最大值即可;無限多個就取不到。這與 23.3 的覆蓋路線把無限多個 δ 裁成有限多個是同一個動作。
Given x ∈ K, choose y_i with ‖x − y_i‖ < δ(ε). For n, m ≥ M,
  ‖gₙ(x) − g_m(x)‖ ≤ ‖gₙ(x) − gₙ(y_i)‖ + ‖gₙ(y_i) − g_m(y_i)‖ + ‖g_m(y_i) − g_m(x)‖ < 3ε.
Hence ‖gₙ − g_m‖_K ≤ 3ε for n, m ≥ M, and 17.11 gives uniform convergence of (gₙ) on K.
這一步結案。頭尾兩段各用一次等度連續——注意它們用的是同一個 δ,儘管 gₙ 與 g_m 是不同的函數,這正是「等度」二字買下的東西;中間那段用剛取到的共同編號。若只有各自的均勻連續,gₙ 與 g_m 的 δ 不同,取 inf 之後可能歸零。最後由 17.11 的 Cauchy 判準收尾——我們從頭到尾沒有寫出極限函數,也不需要。
有界加等度連續,就挑得出均勻收斂的子列。∎
f¹₁f¹₂f¹₃f¹₄ f²₁f²₂f²₃f²₄ f³₁f³₂f³₃f³₄ f⁴₁f⁴₂f⁴₃f⁴₄ 在 x₁ 收斂 再加 x₂ 再加 x₃ 對角線那一條在每個取樣點都收斂

這張圖在說對角線手法:每一列是前一列的子列,所以往下走時「已經收斂的取樣點」只增不減。圈起來的對角線從第 k 項起整條住在第 k 列裡,於是它繼承第 k 列在 x_k 上的收斂——而 k 是任意的,所以它在每個取樣點都收斂。這一招之所以必要,是因為取樣點有可數多個,逐列挑選永遠挑不完。

例 4三族函數:哪些挑得出好子列
26.7 的兩個條件缺一不可。實際檢查三族函數,看看失守的是哪一條。
  1. 共同的 Lipschitz 倍率:ℱ₁ = {f : [0, 1] → ℝ, |f| ≤ 1, |f(x) − f(y)| ≤ |x − y|}。有界(界為 1);等度連續(取 δ(ε) = ε,每個成員都用同一個,因為倍率是共用的)。26.7 適用,任何一列都挑得出均勻收斂的子列。
  2. 冪次族:ℱ₂ = {xⁿ} 於 [0, 1]。有界(每個的 uniform norm 都是 1),可是不等度連續:取 ε₀ = ½、xₙ = 1、yₙ = 2^{−1/n},則 |fₙ(xₙ) − fₙ(yₙ)| = |1 − ½| = ½,而 |xₙ − yₙ| = 1 − 2^{−1/n} → 0。
  3. 而它確實沒有均勻收斂的子列:任何子列的逐點極限都是那個在 x = 1 跳一階的函數,若某個子列均勻收斂,24.1 會要求極限連續,矛盾。26.7 的判定與事實吻合。
  4. 震盪族:ℱ₃ = {sin(nx)} 於 [0, π]。同樣有界(界為 1),同樣不等度連續:取 ε₀ = 1、xₙ = π/(2n)、yₙ = 0,兩點距離趨向零而像差恆為 1。病灶與第 2 步不同——那裡是陡度集中在一個端點,這裡是整條區間上越震越快。
  5. 兩個條件的分工:有界擋的是「跑到無限遠」,等度連續擋的是「陡度沒有上限」。第 1 步之所以過關,正是因為 Lipschitz 倍率是全族共用的一個數——把它換成「每個成員各有自己的倍率」就不夠了,因為那些倍率可以一路增大。
第 5 步是這個例子最值得帶走的一句。回頭看整節會發現同一個模式反覆出現:把一個「逐個成立」的性質升級成「全體通用」,往往就是關鍵的那一步——δ 從跟著位置走到不跟(均勻連續)、再到不跟著函數走(等度連續),每脫掉一層依賴就換來一個新的定理。
陡度集中在端點 冪次族 整條區間越震越快 震盪族

這張圖在說例 4 兩種失敗的差別:左邊的冪次族陡度集中在單一個端點,越後面的成員越貼著橫軸再急速拉起;右邊的震盪族則是整條區間上到處都越震越快。兩者都有界,也都不等度連續——因為「陡度沒有上限」這件事與它發生在哪裡無關。這也是條件寫成「同一個 δ 對全族通用」而不是「每個成員都連續」的理由。

—— 第四階段到此結束 ——

本篇把 Bolzano-Weierstrass 定理搬到函數空間。等度連續(26.6)要求同一個 δ 對整族通用,比均勻連續又多脫掉一層依賴。26.7 說它與有界合起來,恰好是「任何一列都挑得出均勻收斂子列」的充要條件:必要性靠兩個反例,充分性靠對角線手法先在可數多個取樣點上收斂,再由等度連續與 compact 把結論擴散到整個 K。例 4 的三族函數示範兩個條件各擋什麼。本節到此收工,也是本章的最後一節——起來走一走,喝點水。

下一幕預告

本節的三組結果各有各的來路,可是它們共用一個工具:compact。Stone 逼近定理用它把無限多個區域裁成有限多個(兩次);Tietze 延拓定理用它保證函數有界,好讓等比修補收斂;Arzelà-Ascoli 用它把稠密的取樣點裁成有限多個。本章的全域路線從 §22-1 的全域連續定理起步,走到這裡剛好繞了一圈。

連續函數這一章到此結束。到目前為止,我們只問「函數的值怎麼變」,從沒問過「變得多快」。下一章換上這個問題:把一個點附近的函數用一條直線去近似,最好的那條直線斜率是多少?那個斜率就是導數,而它會把本章的許多結論一次翻新——中間值定理會長出更精細的版本,Lipschitz 條件會找到它的來源,而「連續卻處處不可微」這種怪物也會登場。同時我們會看到,§23-3 那個看起來只是技術性的 Lipschitz 條件,其實就是「導數有界」的另一種說法。