1. 从一道课后习题说起:为什么“连续”与“可测”的关系值得单独记一笔
工科背景的人翻开《泛函分析基础》或者《实变函数与泛函分析》这类教材时,最先撞上的硬骨头往往不是泛函本身,而是实变函数那一套测度论语言。预习阶段最容易产生的一个疑问就是:连续函数我本科高数已经玩得很熟了,为什么到了可测函数这一层还要重新证明一遍“连续函数是可测函数”?这个命题看起来几乎是废话——连续比可测强那么多,难道还需要证?
恰恰是这个“看起来是废话”的命题,是打通整个可测函数体系的第一块砖。它告诉你:可测函数这个类足够大,大到把你在数学分析里积累的所有连续函数全部收编进来。换句话说,你以前学的连续函数、单调函数、分段连续函数,统统都是可测函数。这个结论一旦坐实,后面讨论可测函数的运算封闭性、几乎处处收敛、控制收敛定理时,你心里就有底了——至少你熟悉的那些函数不会掉出这个框架。
这篇预习笔记就围绕这个命题展开。我会把证明的完整逻辑链拆开,讲清楚每一步为什么这么走,而不是只给你一个干巴巴的“取开集原像”的结论。同时我会补充几个预习阶段容易忽略的细节:定义域上的可测集到底起什么作用、为什么用开集而不是闭集来刻画、以及这个证明背后隐藏的“用简单结构逼近复杂结构”的测度论核心思想。适合正在预习实变函数或泛函分析、对测度论还不太熟的工科读者。
2. 证明之前必须锁死的三个定义
2.1 可测函数的标准定义:原像条件
可测函数的定义有好几种等价说法,预习时最容易混淆的就是到底用哪个版本。我建议一开始就锁定这个版本:
设 (E) 是 (\mathbb{R}^n) 中的可测集,(f: E \to \mathbb{R})。如果对任意实数 (a),集合 ({x \in E : f(x) > a}) 都是可测集,则称 (f) 是 (E) 上的可测函数。
注意这里用的是“(> a)”而不是“(\geq a)”或“(< a)”。这三种写法其实是等价的,因为你可以通过取并集、补集互相转化。比如 ({f \geq a} = \bigcap_{k=1}^{\infty} {f > a - 1/k}),可测集的可数交还是可测集。预习时选定一种,证明时就不要中途换,否则容易把自己绕晕。
为什么定义里强调“(E) 是可测集”?因为如果 (E) 本身不可测,那 ({x \in E : f(x) > a} = E \cap {f > a}) 的可测性就无从谈起。整个命题的前提“可测集上的连续函数”里,“可测集”三个字不是装饰,它是后面证明能落地的基础。
2.2 连续函数的开集原像刻画
数学分析里连续函数的定义是 (\varepsilon)-(\delta) 语言,但在测度论里我们更爱用拓扑等价刻画:
(f: E \to \mathbb{R}) 连续,当且仅当对 (\mathbb{R}) 中任意开集 (G),其原像 (f^{-1}(G) = {x \in E : f(x) \in G}) 是 (E) 中相对于 (E) 的开集。
这里“相对于 (E) 的开集”意思是存在 (\mathbb{R}^n) 中的开集 (U),使得 (f^{-1}(G) = E \cap U)。这个细节很关键,因为 (E) 不一定是开集,所以原像不一定是 (\mathbb{R}^n) 中的开集,但它是 (E) 与某个开集的交。
预习时我踩过的一个坑:直接把“连续函数的开集原像是开集”搬过来用,忽略了“相对开集”这个限定。结果在证明最后一步卡住——(E \cap U) 为什么可测?因为 (E) 可测、(U) 是开集因而可测,两个可测集的交可测。如果漏掉“相对”二字,就会误以为原像本身是开集,虽然结论也对(开集当然可测),但逻辑上不严谨,而且掩盖了 (E) 可测这个条件的真正用途。
2.3 开集为什么是可测集
这是测度论里最先建立的一批结论之一:(\mathbb{R}^n) 中任何开集都是勒贝格可测集。证明思路是开集可以表示成可数个互不相交的半开方体的并,而每个方体的测度就是体积,可数并保持可测性。这个结论在大多数教材里是作为测度性质直接给出的,预习时记住它即可,不必在证明连续函数可测性时重新证一遍。
把这三个定义串起来,证明的骨架就出来了:要证 ({f > a}) 可测,而 ({f > a} = f^{-1}((a, +\infty))),区间 ((a, +\infty)) 是开集,连续函数的开集原像是相对开集,相对开集是可测集。逻辑链非常短,但每一步都踩在一个定义上。
3. 把证明拆成四步:每一步都在用哪个定义
3.1 第一步:把目标集合翻译成原像
对任意固定的实数 (a),我们要证明 (A_a = {x \in E : f(x) > a}) 是可测集。直接看这个集合不好下手,因为 (f) 是抽象函数,你不知道它长什么样。但注意到:
[ A_a = {x \in E : f(x) \in (a, +\infty)} = f^{-1}((a, +\infty)) ]
这一步没有任何技术含量,纯粹是符号翻译。但它的意义在于把“函数值大于 (a)”这个分析语言转化成了“原像”这个集合语言。测度论里几乎所有关于可测函数的证明,第一步都是这种翻译。
预习心得:不要小看这种翻译。很多同学证明卡壳,不是不会后面的推理,而是没想到把 ({f > a}) 写成 (f^{-1}((a, +\infty)))。这就像做积分题没想到换元一样,属于“知道就能做,不知道就干瞪眼”的关键一步。
3.2 第二步:用连续性把原像写成相对开集
区间 ((a, +\infty)) 是 (\mathbb{R}) 中的开集,这一点显然。由 (f) 在 (E) 上连续,根据连续函数的开集原像刻画,存在 (\mathbb{R}^n) 中的开集 (U_a),使得:
[ f^{-1}((a, +\infty)) = E \cap U_a ]
这里 (U_a) 的存在性由连续性保证。注意 (U_a) 依赖于 (a),不同的 (a) 对应不同的开集,但这不影响证明,因为我们是对每个固定的 (a) 单独处理。
为什么用开集而不是闭集?因为连续函数的定义天然与开集匹配。你也可以用闭集版本:连续函数下闭集的原像是相对闭集。然后取 (A_a = f^{-1}([a, +\infty))) 也行,但 ([a, +\infty)) 是闭集,原像是相对闭集,相对闭集是可测集吗?是,因为相对闭集可以写成 (E \cap F),(F) 是闭集因而可测。两条路都通,但开集版本更直接,因为可测函数的定义里用的是“(> a)”对应开区间。
3.3 第三步:相对开集的可测性
现在 (A_a = E \cap U_a)。已知 (E) 是可测集(命题前提),(U_a) 是开集因而可测(2.3 节的结论),可测集的交仍是可测集,所以 (A_a) 可测。
这一步是整个证明里唯一用到“(E) 可测”这个条件的地方。如果 (E) 不可测,那么即使 (U_a) 可测,(E \cap U_a) 也不一定可测。所以命题里“可测集上的连续函数”这个限定是必要的,不是多余的。
我见过有同学问:如果 (E) 是开集,那 (E \cap U_a) 是开集,当然可测,是不是就不需要 (E) 可测了?逻辑上,开集确实可测,所以开集上的连续函数可测是这个小命题的特例。但一般情形下 (E) 只需要可测,不需要开,所以证明必须走“可测集交可测集”这条路。
3.4 第四步:由 (a) 的任意性下结论
上面三步对任意固定的 (a \in \mathbb{R}) 都成立,所以对一切 (a),({f > a}) 可测。按可测函数的定义,(f) 是 (E) 上的可测函数。证毕。
整个证明四步,每步对应一个定义或已知结论:
| 步骤 | 操作 | 依据 |
|---|---|---|
| 1 | ({f > a} = f^{-1}((a, +\infty))) | 原像定义 |
| 2 | (f^{-1}((a, +\infty)) = E \cap U_a) | 连续函数的开集原像刻画 |
| 3 | (E \cap U_a) 可测 | (E) 可测 + 开集可测 + 交封闭 |
| 4 | (f) 可测 | 可测函数定义 |
这张表建议预习时自己默写一遍。能默出来,说明这个证明的逻辑链已经进脑子了。
4. 预习时最容易卡住的四个细节
4.1 “相对开集”到底相对在哪里
这是我最开始预习时最别扭的地方。教材说“连续函数的开集原像是开集”,但严格讲应该是“相对于定义域的开集”。举个例子:(E = [0, 1]),(f(x) = x)。取开集 (G = (0.5, 1.5)),则 (f^{-1}(G) = (0.5, 1])。这个集合在 (\mathbb{R}) 中不是开集(因为包含端点 1),但它是 (E) 中的开集,因为 ((0.5, 1] = [0, 1] \cap (0.5, 2)),而 ((0.5, 2)) 是 (\mathbb{R}) 中的开集。
所以“相对开集”的意思是:在子空间拓扑下是开集。子空间拓扑的开集定义为 (E \cap U),(U) 是全集中的开集。这个定义在点集拓扑里学过,但实变函数课上往往默认你记得。如果忘了,证明第二步就会觉得“原像明明是 ((0.5, 1]),怎么会是开集”,从而卡住。
提示:预习时如果对“相对开集”没把握,先回头翻点集拓扑里子空间拓扑的定义,五分钟就能补上,但能省掉后面半小时的困惑。
4.2 为什么不用“(f^{-1}((a, +\infty))) 是开集”直接下结论
有同学会想:既然连续函数的开集原像是开集,开集可测,那直接说 (f^{-1}((a, +\infty))) 可测不就完了,为什么还要绕“(E \cap U_a)”这一圈?
问题在于,当 (E) 不是开集时,(f^{-1}((a, +\infty))) 作为 (\mathbb{R}^n) 的子集不一定是开集。比如上面的例子,((0.5, 1]) 不是开集。所以不能直接说它是开集。必须写成 (E \cap U_a) 的形式,然后利用 (E) 可测、(U_a) 可测来推可测性。这个细节是证明严谨性的关键,也是考试容易扣分的地方。
4.3 可测函数定义里“(> a)”和“(\geq a)”的等价性
前面提过,定义用“(> a)”还是“(\geq a)”是等价的。但预习时最好自己推一遍等价性,因为考试可能考“证明这两种定义等价”。推导如下:
如果对任意 (a),({f > a}) 可测,那么 [ {f \geq a} = \bigcap_{k=1}^{\infty} {f > a - 1/k} ] 可数个可测集的交可测。
反过来,如果对任意 (a),({f \geq a}) 可测,那么 [ {f > a} = \bigcup_{k=1}^{\infty} {f \geq a + 1/k} ] 可数个可测集的并可测。
这个推导用到了可测集对可数交和可数并封闭。预习时把这两个等式写一遍,比死记结论强。
4.4 命题的逆命题不成立
连续函数可测,但可测函数不一定连续。这是预习时必须建立的认知:可测函数类比连续函数类大得多。比如狄利克雷函数(有理数处取 1,无理数处取 0)处处不连续,但它是可测的,因为有理数集可测、无理数集可测,它的原像很容易验证可测。
这个反例的意义在于:不要试图用连续函数的直觉去理解所有可测函数。可测函数允许“很坏”的函数存在,只要坏点集是零测集或者结构上可测就行。后面学几乎处处收敛、依测度收敛时,这种“允许坏点”的思想会反复出现。
5. 这个证明在后续课程里怎么被反复使用
5.1 可测函数运算封闭性的证明模板
证明“两个可测函数的和可测”时,标准做法是: [ {f + g > a} = \bigcup_{r \in \mathbb{Q}} ({f > r} \cap {g > a - r}) ] 右边是可数个可测集的并,所以可测。这个证明里没有用到连续性,纯粹是可测函数定义的直接应用。但你能想到这个分解,前提是你已经习惯了“把复杂集合拆成可测集的可数运算”这套操作。而连续函数可测性的证明,就是这套操作的第一个范例。
5.2 几乎处处收敛与连续函数逼近
实变函数里有一个重要结论:可测函数可以用连续函数几乎处处逼近(卢津定理)。这个定理的证明思路是先用简单函数逼近可测函数,再用连续函数逼近简单函数。而“连续函数可测”这个命题,保证了连续函数在可测函数类里,从而逼近过程是在同一个类里进行的。如果连续函数不可测,整个逼近理论就崩了。
5.3 泛函分析里的可测函数空间
到了泛函分析,你会遇到 (L^p) 空间,它的元素是“几乎处处相等的可测函数等价类”。定义 (L^p) 范数时,需要积分 (|f|^p),而积分只对可测函数有定义。所以“哪些函数可测”直接决定了 (L^p) 空间的成员资格。连续函数可测,保证了 (C[a,b]) 可以嵌入 (L^p[a,b])(在适当条件下),这是泛函分析里讨论稠密性、完备性时的基本事实。
预习阶段把这个链条看清楚:连续函数可测 → 连续函数属于 (L^p) → (C[a,b]) 是 (L^p[a,b]) 的稠密子空间。这样你就知道为什么教材要在测度论部分花力气证这个“显然”的命题了。
6. 自己动手:把证明改写成闭集版本和 (G_\delta) 版本
6.1 闭集版本
把定义里的“(> a)”换成“(\geq a)”,证明改为: [ {f \geq a} = f^{-1}([a, +\infty)) ] ([a, +\infty)) 是闭集,连续函数的闭集原像是相对闭集,即 (E \cap F),(F) 闭因而可测,所以 (E \cap F) 可测。
这个版本和开集版本对称,练习时可以两个都写一遍,加深对“相对开/闭集”的理解。
6.2 (G_\delta) 版本
开区间 ((a, +\infty)) 可以写成可数个闭集的并: [ (a, +\infty) = \bigcup_{k=1}^{\infty} [a + 1/k, +\infty) ] 所以 [ {f > a} = \bigcup_{k=1}^{\infty} f^{-1}([a + 1/k, +\infty)) ] 每个 (f^{-1}([a + 1/k, +\infty))) 是相对闭集因而可测,可数并保持可测。这个版本绕了一点,但用到了“开集是可数个闭集的并”这个 (F_\sigma) 分解,是测度论里常用的技巧。
6.3 三个版本的对比
| 版本 | 使用的区间 | 原像类型 | 关键依据 |
|---|---|---|---|
| 开集版 | ((a, +\infty)) | 相对开集 | 开集可测 |
| 闭集版 | ([a, +\infty)) | 相对闭集 | 闭集可测 |
| (G_\delta) 版 | ((a, +\infty)) 分解为闭集并 | 相对闭集的可数并 | 可数并封闭 |
三个版本本质相同,但练习时各写一遍,能帮你把“可测集对可数并、交、补封闭”这些性质用熟。预习阶段这种“一题多证”的练习比刷十道新题更有价值。
7. 预习笔记的整理方法:我自己的操作流程
7.1 先抄定义,再抄证明,最后默写
我预习实变函数时的习惯是:每个命题分三栏记。第一栏抄定义(可测函数定义、连续函数开集刻画、开集可测性),第二栏抄教材证明,第三栏合上书自己默写。默写不出来的地方用红笔标出,回头只看红笔部分。这个方法对付“连续函数可测”这种短证明特别有效,因为证明短,容易产生“我懂了”的错觉,一默写就露馅。
7.2 把“为什么”写在证明旁边
教材证明通常只写“由连续性,存在开集 (U_a) 使得……”,不会解释为什么可以这样。预习时要在旁边批注:因为连续函数的开集原像是相对开集,这是连续性的拓扑刻画。这种批注积累多了,复习时一眼就能看到关键依据,不用重新推。
7.3 用反例检验理解
学完这个命题,我给自己找的反例是:定义在不可测集上的连续函数。比如取 (E) 为不可测集,(f(x) = x) 在 (E) 上连续(作为子空间上的函数),但 (f) 不是可测函数,因为 ({f > a} = E \cap (a, +\infty)) 不可测。这个反例说明命题里“(E) 可测”不能去掉。找反例的过程比背证明更能加深理解。
7.4 和后续命题建立链接
在笔记边缘写上:此命题用于证明“可测函数的四则运算封闭”“连续函数属于 (L^p)”“卢津定理”。这样笔记就不是孤立的,而是一张网。预习时可能还没学到后面,但先写上链接,学到时回来补细节,知识就串起来了。
8. 几个容易混淆的相邻概念
8.1 可测函数与连续函数的包含关系
连续函数 (\subset) 可测函数,但可测函数 (\not\subset) 连续函数。狄利克雷函数是可测但不连续的标准例子。更极端的例子:存在可测函数在所有点都不连续。所以可测函数类严格大于连续函数类。
8.2 可测函数与简单函数的关系
简单函数(有限个可测集上取常值的函数)都是可测的,而且任何非负可测函数都可以用递增的简单函数列逼近。连续函数可测这个命题,保证了连续函数也在“可被简单函数逼近”的范围内。预习时把这三个类的关系画成包含图:简单函数 (\subset) 可测函数,连续函数 (\subset) 可测函数,但简单函数和连续函数的交集是阶梯状连续函数。
8.3 可测函数与几乎处处连续
卢津定理说:可测函数几乎处处连续(在去掉一个任意小测度的集合后连续)。这个定理的逆命题不成立:几乎处处连续的函数不一定可测?实际上,如果函数在去掉零测集后连续,那它是可测的,因为零测集可测、连续部分可测,拼起来可测。所以“几乎处处连续”是可测的充分条件。这个结论比“连续函数可测”更一般,预习时可以作为延伸阅读。
9. 从这道题看测度论证明的通用套路
9.1 把分析语言翻译成集合语言
“(f(x) > a)”翻译成“(x \in f^{-1}((a, +\infty)))”。这个翻译是测度论证明的第一步,也是最重要的一步。预习时要刻意练习这种翻译,看到“函数值满足某条件”就条件反射地写成原像。
9.2 用已知结构逼近未知结构
连续函数的开集原像是相对开集,相对开集是可测集。这里“开集”是已知结构,“可测集”是目标结构。证明的本质是用开集的可测性推出原像的可测性。测度论里大量证明都是这个套路:用简单结构(开集、闭集、方体)逼近复杂结构(可测集、可测函数)。
9.3 可数运算保持可测性
整个证明没有用到可数运算,但后续证明可测函数运算封闭性时会反复用。预习时要把“可测集对可数并、可数交、补封闭”这三条当成公理一样熟记,因为它们是所有可测性证明的底层工具。
9.4 定义域的可测性是前提
命题里“(E) 可测”这个条件在证明中只出现一次,但缺了它整个命题不成立。这种“只出现一次但不可缺”的条件,是预习时要特别标记的。考试时如果忘了写“因为 (E) 可测”,可能扣分,因为这是逻辑链的一环。
10. 给预习者的最后几条实操建议
第一,这个证明不要只读一遍。读一遍觉得懂了,合上书默写,大概率会在“相对开集”那一步卡住。默写三遍,直到能不看书写出完整逻辑链。
第二,把“开集可测”这个结论的证明也看一遍。虽然教材可能直接引用,但知道开集为什么可测(可数个半开方体的并),能让你对“可测集”这个类有更具体的感知。
第三,找两个反例:一个是不可测集上的连续函数(说明 (E) 可测不能去),一个是可测但不连续的函数(说明逆命题不成立)。反例是检验理解的最好工具。
第四,把这个命题和“可测函数的四则运算封闭”连起来看。前者是后者的基础,后者是前者的自然延伸。预习时一起看,能形成知识块,而不是孤立的知识点。
第五,如果时间允许,把闭集版本和 (G_\delta) 版本也推一遍。一题多证在测度论里特别有价值,因为不同版本会用到不同的可测性封闭性质,推一遍等于把那些性质复习一遍。
这个命题在教材里可能只占半页,但它背后的定义网络、证明套路、后续应用,值得花两三个小时彻底吃透。预习阶段把这种“小命题”做扎实,后面学控制收敛定理、(L^p) 空间时,你会发现自己少了很多“这个结论怎么来的”的困惑。