
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_{k1}^{\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_{k1}^{\infty} {f a - 1/k} ] 可数个可测集的交可测。反过来如果对任意 (a)({f \geq a}) 可测那么 [ {f a} \bigcup_{k1}^{\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_{k1}^{\infty} [a 1/k, \infty) ] 所以 [ {f a} \bigcup_{k1}^{\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) 空间时你会发现自己少了很多“这个结论怎么来的”的困惑。