Lecture 14: Limits of Functions in Terms of Sequences and Continuity(用序列刻画函数极限与连续性)
Lecture 14: Limits of Functions in Terms of Sequences and Continuity(用序列刻画函数极限与连续性)
概述
上一讲(Lecture 13)我们做了三件事:定义了集合的聚点 (cluster point)、定义了函数极限 $\lim_{x\to c}f(x)=L$ 的 $\epsilon$-$\delta$ 形式、并证明了本课程最重要的”翻译器”—— 函数极限的序列刻画(源文件 Lecture 13 的 Theorem 157):函数极限存在且等于 $L$, 当且仅当把任意一串趋近于 $c$ 的点送进函数,输出都趋近于 $L$。
本讲的任务不是再引入新工具,而是收获上一讲的投资:既然函数极限与序列极限是同一件事, 那么 Lecture 8 里关于序列极限的所有定理(夹逼定理、保序性、和差积商的极限法则、绝对值极限) 都可以原封不动地搬到函数极限上,一行都不用重证。这是本讲的第一个高潮, 源文件用 Theorem 158、159、160 连续展示了这种”结构复用 (structural reuse)”的威力。
本讲的第二个高潮是连续 (continuity) 的定义(源文件 Definition 167)。讲义给出了 一段非常有洞察力的铺垫:“正如我们已经看到的,当 $x=c$ 时极限根本不关心 $f(x)$ 是什么。 连续性就是把 $\lim_{x\to c}f(x)$ 与 $f(c)$ 联系起来的条件。” 一句话点明了连续与极限的分界。
在补充层面(源文件本讲未展开、但在 [JL] §3.2 与 Lecture 15 中完成、并直接在 Assignment 8 与 Final 中考到),我们还要把连续性推广到代数运算、复合、多项式与有理函数, 并给出连续性的拓扑刻画:$f$ 连续 $\iff$ 每个开集的原像是开集。这最后一条不依赖度量, 是连续概念走向一般拓扑空间的原型。
本讲回答了什么问题? ① 怎样用序列去”计算”和”否定”函数极限?② 单侧极限与双侧极限的关系是什么? ③ “连续”的精确定义是什么,它与极限差在哪里?④ 连续性对四则运算、复合、开集原像是否封闭?
核心定义与直观解释
定义 A:左极限与右极限(源文件 Definition 161、163 与 Notation 162、164)
(严格定义)
源文件的 Definition 161(左极限)与 Definition 163(右极限)原文如下。
设 $S\subset\mathbb R$。
- 若 $c$ 是 $S\cap(-\infty,c)$ 的聚点,我们说 $f(x)$ 当 $x\to c^-$ 时收敛到 $L$,如果
这记作(源文件 Notation 162)$L=\lim_{x\to c^-}f(x)$,称为 $f$ 在 $c$ 处的左极限 (left-hand limit)。
- 若 $c$ 是 $S\cap(c,\infty)$ 的聚点,我们说 $f(x)$ 当 $x\to c^+$ 时收敛到 $L$,如果
这记作(源文件 Notation 164)$L=\lim_{x\to c^+}f(x)$,称为 $f$ 在 $c$ 处的右极限 (right-hand limit)。 两者合称单侧极限 (one-sided limits)。
直观解释(”它到底在说什么?”)
普通的双侧极限说:”从左右两边任意方式靠近 $c$,$f$ 的值都必须靠近 $L$。” 单侧极限把这个要求砍掉一半:
- 右极限只说”从右边过来”($x>c$,且 $x$ 越来越接近 $c$);
- 左极限只说”从左边过来”($x<c$)。
一个生活类比:想象一条路在 $c$ 处有一座桥。双侧极限等于 $L$ 意味着”无论你从桥的哪一头走过来, 看到的风景都趋近于同一个画面 $L$”。右极限只考察”从东边来”的旅客看到的画面, 左极限只考察”从西边来”的旅客看到的画面。如果东边来的人看到的是 $1$、 西边来的人看到的是 $0$,那么”桥上的风景”这个统一说法就失败了——但两个单侧说法各自成立。
为什么需要这个条件?
关键在两条聚点前提,它们不是技术赘述,而是单侧极限能定义的必要条件:
- 定义左极限时需要 “$c$ 是 $S\cap(-\infty,c)$ 的聚点”。如果没有这个前提, 即 $S$ 中根本没有点位于 $c$ 左侧、或它们离 $c$ 有一个正距离, 那么”$c-\delta<x<c$ 且 $x\in S$”这个条件对足够小的 $\delta$ 永远为空, 于是任何 $L$ 都满足定义(空真命题),极限就不唯一了。
- 注意这里要求聚点的是 $S\cap(-\infty,c)$,而不是 $S$。如果错写成”$c$ 是 $S$ 的聚点”, 那么当 $c$ 只被 $S$ 中右侧的点逼近时(例如 $S=\{1/n:n\in\mathbb N\}$、$c=0$, 左边一个点都没有),左极限就会被”定义”出来,而且是任意值——荒谬。
具体示例
取源文件 Example 165 的阶梯函数
\[f(x)=\begin{cases}1,&x>0\\ 0,&x<0\end{cases}\qquad(f(0)\ \text{未定义}).\]则 $\lim_{x\to0^-}f(x)=0$,$\lim_{x\to0^+}f(x)=1$。这里 $f(0)$ 根本没有定义, 但两个单侧极限都存在——这再次说明”极限不关心 $x=c$ 处发生了什么”(源文件原话: “even though $f(0)$ is undefined”)。
再取 $f(x)=\dfrac{\vert x\vert }{x}$(定义域 $S=\mathbb R\setminus\{0\}$)。对 $x<0$,$\vert x\vert =-x$, 故 $f(x)=-1$;对 $x>0$,$f(x)=1$。于是
\[\lim_{x\to0^-}\frac{\|x\|}{x}=-1,\qquad \lim_{x\to0^+}\frac{\|x\|}{x}=1 .\]验算:$x=-0.5$ 时 $\vert x\vert /x=0.5/(-0.5)=-1$ ✓;$x=0.5$ 时 $=1$ ✓(用 python3 核对)。 两个单侧极限不相等,故双侧极限不存在。
反例(条件不可省)
设 $S=\{0\}\cup\{1,2\}$,$c=0$。此时 $S\cap(-\infty,0)=\varnothing$,$0$ 不是 $S\cap(-\infty,0)$ 的聚点,所以”$\lim_{x\to0^-}f(x)$”对方程无意义。 若忽略聚点前提强行套定义,会得到”极限可以是 $1$ 也可以是 $7$”这种荒唐结论 (因为条件句的前件恒假)。这正是 [JL] Exercise 3.1.15 想让学生体会的点: 聚点条件是”极限唯一”的前提。
定义 B:连续(源文件 Definition 167,Continuous Functions)
(严格定义) 设 $S\subset\mathbb R$,$c\in S$。我们说 $f$ 在 $c$ 处连续 (continuous at $c$),如果
\[\forall\epsilon>0\ \exists\delta>0\ \text{s.t. } \bigl(x\in S\ \text{且}\ \|x-c\|<\delta\bigr)\Rightarrow \|f(x)-f(c)\|<\epsilon .\]若 $f$ 在 $U\subset S$ 的每一点都连续,就说 $f$ 在 $U$ 上连续 (continuous on $U$); 若 $f:S\to\mathbb R$ 在 $S$ 上处处连续,就简单地说 $f$ 是一个连续函数 (continuous function)。 (这一段与 [JL] Definition 3.2.1 逐字一致。)
直观解释(”它到底在说什么?”)
三种说法,按精确程度递增:
- “输入微变,输出微变”:只要 $x$ 与 $c$ 足够接近,$f(x)$ 就与 $f(c)$ 足够接近。 注意是”与 $f(c)$ 接近”,不是”与某个外部数字 $L$ 接近”。
- “没有跳跃”:图像在 $c$ 处不会被撕开。反过来说,如果图像在 $c$ 处断了, 那么在断口附近总能找到一个 $\epsilon>0$(例如断口高度的一半), 使得无论 $\delta$ 多小,总有 $x$ 落在 $\delta$-窗口里却跑到 $\epsilon$-带之外。
- “可一笔画”(高中直觉):图像可以不断笔地画出来。 这个直觉只在”定义域是区间”时基本正确,一旦定义域有孤立点或更古怪的结构就会误导人 (见下文的孤立点问题)。[JL] 特别提醒:这个直觉”在简单情形下有用, 但我们需要严格”——严格定义由 Bolzano、Cauchy、Weierstrass 三人接力, 到 19 世纪晚期才定型。
与极限定义的两处关键差别——请务必刻在脑子里
把 Definition 167 与 Lecture 13 的 Definition 150 并排放在一起看,差别只有两处,但两处都是本质的:
+--------------------------+-------------------------------+--------------------------------+
| 项目 | 极限 lim_{x->c} f(x) = L | 在 c 处连续 (f(c) 已有定义) |
+--------------------------+-------------------------------+--------------------------------+
| 前提 | c 是 S 的聚点 | c ∈ S(不要求是聚点!) |
| x 的取值范围 | x ∈ S 且 0 < |x-c| < δ | x ∈ S 且 |x-c| < δ(含 x=c) |
| | (即 x ≠ c,把 c 挖掉) | (不挖掉 c) |
| 目标不等式 | |f(x) - L| < ε | |f(x) - f(c)| < ε |
| 参照值是谁 | 外部给定的候选值 L | 函数在 c 处的值 f(c) |
| f 在 c 处必须有定义吗 | 不需要(无关紧要) | 必须有 |
| x = c 这一点的要求 | 不要求;f(c) 可以任意 | 自动满足(左边=0 < ε) |
+--------------------------+-------------------------------+--------------------------------+
差别 ①:去掉了 $0<$。 极限定义写 $0<\vert x-c\vert <\delta$,故意把 $x=c$ 排除在外; 连续定义写 $\vert x-c\vert <\delta$,允许 $x=c$。这看起来是放松,其实是必须的: 因为连续要谈 $f(c)$ 本身,如果把 $c$ 排除掉,那么”函数在自己这一点上的行为” 就完全不受约束,定义就空了。而当 $x=c$ 时,$\vert f(c)-f(c)\vert =0<\epsilon$ 对任何 $\epsilon>0$ 自动成立,所以”允许 $x=c$”不会增加任何实质负担——它只是让定义把 $c$ 点也算进来。
差别 ②:右端是 $\vert f(x)-f(c)\vert $ 而不是 $\vert f(x)-L\vert $。 这就是连续性的全部内容: 极限值必须恰好等于函数值。换成 [JL] 的等价说法: “连续函数正是那些与极限相处融洽的函数”(the functions that behave nicely with limits)。
为什么需要这个条件(”极限存在”为什么不够)?
因为”极限存在”完全可以与”函数值”脱钩。源文件 Lecture 13 的 Example 155 给了标准例子:
\[f(x)=\begin{cases}1,&x\neq0\\ 2,&x=0\end{cases} \qquad\text{此时}\ \lim_{x\to0}f(x)=1\neq f(0)=2 .\]极限存在(为 $1$),但函数在 $0$ 处不连续。Lecture 14 的 Example 169 又把这个例子 拿来正面证明”不连续”,并配上了 Negation 170(见定义 C)。后面我们还会讲: 这种”极限存在但与函数值不符”的间断叫可去间断 (removable discontinuity)—— 只要把 $f(0)$ 改成 $1$ 就连续了。
具体示例(把 $\epsilon,\delta$ 取成具体数字)
示例 1(源文件 Example 168): $f(x)=ax+b$ 在 $\mathbb R$ 上连续。 源文件取 $\delta=\dfrac{\epsilon}{1+\vert a\vert }$。取具体数值 $a=3,b=1,c=2,\epsilon=0.01$:
\[\delta=\frac{0.01}{1+3}=0.0025 .\]验证:取 $x=2.003$,则 $\vert x-c\vert =0.003<0.0025$ 不成立,说明这个 $x$ 超出窗口; 换成 $x=2.001$,$\vert x-c\vert =0.001<0.0025$,而 $\vert f(x)-f(2)\vert =\vert 3\cdot2.001+1-7\vert =0.003<0.01$ ✓。 再用 $x=2.0024$ 复核:$\vert f(x)-f(2)\vert =\vert 7.0072-7\vert =0.0072<0.01$ ✓(Python 验算通过)。 而恰好取到临界点时 $x=c+\delta=2.0025$,$\vert f(x)-f(2)\vert =0.0075<0.01$, 可见 $\delta=\epsilon/(1+\vert a\vert )$ 是”带安全余量”的选取(因为 $\vert a\vert \delta=\frac{\vert a\vert }{1+\vert a\vert }\epsilon<\epsilon$)。
示例 2: $f(x)=x^2$ 在 $c=3$ 处连续。给定 $\epsilon=0.01$,取
\[\delta=\min\Bigl\{1,\ \frac{\epsilon}{2\|c\|+1}\Bigr\}=\min\Bigl\{1,\frac{0.01}{7}\Bigr\}=\frac{1}{700}\approx 0.0014286 .\]验算:$x=3.0014$ 时 $\vert x-c\vert =0.0014<\delta$,而 $\vert x^2-9\vert =0.008402<0.01$ ✓; $x=3.0016$ 时 $\vert x-c\vert =0.0016>\delta$(超出窗口,不保证),实际 $\vert x^2-9\vert =0.009603<0.01$ (说明 $\delta$ 保守但安全)。关键是恒等式 $\vert x^2-c^2\vert =\vert x-c\vert \cdot\vert x+c\vert $,当 $\vert x-c\vert <1$ 时 $\vert x+c\vert \le\vert x-c\vert +2\vert c\vert <2\vert c\vert +1=7$, 故 $\vert x^2-9\vert <7\delta\le\epsilon$ ✓(Python 验算 $7\delta=0.01$ 恰好落在边界上)。
反例(不满足定义的对象)
源文件 Lecture 13 Example 155 / Lecture 14 Example 169 的函数 $f(x)=1\ (x\neq0)$,$f(0)=2$ 在 $c=0$ 不连续:取 $\epsilon_0=1$, 对任意 $\delta>0$ 取 $x=\delta/2$,则 $\vert x-0\vert =\delta/2<\delta$ 但 $\vert f(x)-f(0)\vert =\vert 1-2\vert =1\ge\epsilon_0$。$\square$(Python 验算:$\delta=1\Rightarrow x=0.5$, $\vert f(x)-f(0)\vert =1\ge1$ ✓。)
定义 C:不连续的否定形式(源文件 Negation 170,Not Continuous)
(严格定义) 源文件在证明 Example 169 之前,先把连续性定义的否定写清楚:
\[f\ \text{在}\ c\ \text{处不连续}\iff \exists\epsilon_0>0\ \text{s.t. }\ \forall\delta>0,\ \exists x\in S\ \text{s.t. }\ \|x-c\|<\delta\ \text{且}\ \|f(x)-f(c)\|\ge\epsilon_0 .\]直观解释
原文的连续定义是 $\forall\epsilon\exists\delta\forall x$。否定就是把三个量词逐个翻转:
连续: ∀ε>0 ∃δ>0 ∀x∈S : |x-c|<δ ⇒ |f(x)-f(c)|<ε
不连续: ∃ε₀>0 ∀δ>0 ∃x∈S : |x-c|<δ 且 |f(x)-f(c)| ≥ ε₀
注意最后一行把蕴含 $P\Rightarrow Q$ 正确否定成了 $P\wedge\neg Q$(不是 $P\Rightarrow\neg Q$!), 这是学生最常写错的地方。
为什么需要这个形式?
因为”证明不连续”必须有一个可操作的靶子。定义 C 告诉我们:想证明不连续, 只需要找到一个具体的 $\epsilon_0$(通常取断口高度的一半或全部), 然后对每个 $\delta$ 展示一个”漏网的 $x$”。量词顺序是 $\exists\epsilon_0\forall\delta\exists x$: $\epsilon_0$ 一旦选定就固定,$\delta$ 由对手任意给,$x$ 允许依赖 $\delta$。
具体示例
对 $f(x)=1\ (x\neq0)$,$f(0)=2$:取 $\epsilon_0=1$;对任意 $\delta>0$ 取 $x=\delta/2$ (也可以取 $x=-\delta/2$,甚至 $x=\delta/3$)。由于 $\delta/2\neq0$,$f(\delta/2)=1$, 故 $\vert x-c\vert =\delta/2<\delta$ 且 $\vert f(x)-f(0)\vert =1\ge\epsilon_0$。注意 $x=\delta/2$ 依赖 $\delta$, 这完全合法——否定的定义里 $x$ 就在 $\forall\delta$ 之后。
反例(如果把 $\ge$ 写成 $>$ 会怎样)
若把否定写成 $\vert f(x)-f(c)\vert >\epsilon_0$,则对某些”恰好落在边界”的函数会判错。 例如常数函数 $f\equiv0$:对任何 $\epsilon_0>0$,$\vert f(x)-f(0)\vert =0>\epsilon_0$ 永不成立, 所以用这个错误版本会得到”常函数不连续”的荒唐结论。正确写法用 $\ge$, 再配合”取 $\epsilon_0$ 为断口高度”就万无一失。
定义 D(补充):开集与开集原像
重要声明:这一小节的内容不在 Lecture 14 源文件内。 它来自 Assignment 3 第 5 题给出的定义、Midterm 第 2 题、以及 Assignment 8 第 5 题。 我们把它放在这里,是因为它在逻辑上是”连续”概念的下一步, 而且 Assignment 8 第 5 题与 Final 第 2(b) 题都要用到。凡本笔记标注”补充”的定理, 均非 Lecture 14 源文件的 Theorem 编号,请勿混淆出处。
(严格定义) 一个集合 $U\subset\mathbb R$ 称为开集 (open set),如果
\[\forall x\in U\ \exists\epsilon>0\ \text{s.t. } (x-\epsilon,x+\epsilon)\subset U .\](这是 Midterm 第 2 题开头与 Assignment 3 第 5 题给出的本题工作定义; [JL] 在 §7.2 才有更一般的拓扑定义。)
设 $f:\mathbb R\to\mathbb R$,$U\subset\mathbb R$。$U$ 关于 $f$ 的原像 (preimage) 定义为
\[f^{-1}(U):=\{x\in\mathbb R: f(x)\in U\}\qquad(\text{Assignment 8 第 5 题原文}).\]直观解释
- 开集 = “每个点都带着一小段属于自己的呼吸空间”。区间 $(a,b)$ 是开集, 因为任取 $x\in(a,b)$,取 $\epsilon=\min\{x-a,b-x\}/2$ 即可; $[a,b]$ 不是开集,因为 $a$ 的左边没有呼吸空间。
- 原像 $f^{-1}(U)$ 是”所有被 $f$ 送进 $U$ 的输入”。注意原像是集合层面的操作, 不要求 $f$ 可逆(这一点学生极易误解:$f^{-1}(U)$ 与被反函数作用无关)。
- 原像与并、交交换得很好:$f^{-1}(C\cap D)=f^{-1}(C)\cap f^{-1}(D)$ (这正是 Midterm 第 1(a) 题),$f^{-1}(C\cup D)=f^{-1}(C)\cup f^{-1}(D)$。 像 (image) 则不与交交换,这就是为什么拓扑刻画用原像而不用像。
为什么需要这个条件 / 这个定义好在哪?
因为它把”连续”从”逐点的 $\epsilon$-$\delta$ 条件”翻译成了”集合的整体性质”: $f$ 连续 $\iff$ 开集的原像开。这个命题没有出现任何 $\epsilon$ 和 $\delta$, 因此可以整体推广到一般拓扑空间(那里根本没有距离,无从谈 $\epsilon$)。 它是现代数学中”连续映射”的定义原型。
具体示例
$f(x)=x^2$,$U=(1,4)$(开区间)。$f^{-1}(U)=\{x:x^2\in(1,4)\}=(-2,-1)\cup(1,2)$, 这是两个开区间的并,仍是开集 ✓(Python 验算:$\sqrt 4=2$,边界点 $\pm1,\pm2$ 都被排除在外)。
反例
$f(x)=x^2$,$U=[1,4)$。虽然 $U$ 不是开集,但 $f^{-1}(U)$ 是 $[-2,-1]\cup[1,2)$ 的 “去心”版本……实际上 $f^{-1}([1,4))=(-2,-1]\cup[1,2)$,不是开集($1$ 处没有呼吸空间: $1-\epsilon$ 的平方 $<1$ 不在 $U$ 内),这说明原像运算是忠实的。 更有教育意义的反例是”不连续函数把开集的原像弄成非开集”: 取阶梯函数 $f(x)=0\ (x<0)$,$f(x)=1\ (x\geq0)$,$U=(-0.5,0.5)$ 是开集, 但 $f^{-1}(U)=(-\infty,0)$——这是个开集!要得到非开集请取 $U=(0.5,1.5)$: $f^{-1}(U)=[0,\infty)$,不是开集($0$ 的左侧没有呼吸空间)。 这正是”不连续 $\Rightarrow$ 存在开集的原像非开”的具体见证。
—#### 定理与完整证明(核心)
本节先按源文件的编号顺序完整重述 Theorem 158、Theorem 159、Theorem 160、Theorem 166, 再补上 Lecture 15 的 Theorem 171(连续性的三个等价刻画)、[JL] Proposition 3.2.5(代数运算)、 [JL] §3.2 的复合与多项式结论、以及 Assignment 8 第 2、5 题。凡是补充的定理, 都明确标注”(补充)”并写明其真正出处,绝不含糊。
定理与完整证明(核心)
定理 158(源文件 Theorem 158):$\lim_{x\to c}x^2=c^2$
定理陈述
\[\forall c\in\mathbb R,\qquad \lim_{x\to c}x^2=c^2 .\]证明策略
这是全课程最短的几个证明之一,因为它一个字都不需要 $\epsilon$-$\delta$: 直接把 Lecture 13 Theorem 157 的序列刻画当作”黑箱”, 把问题翻译成一个纯粹的序列问题,再用 Lecture 8 里已经证好的序列极限法则。 策略可以概括为三步:① 任取一条合法的序列;② 交给序列定理;③ 翻译回来。
逐步推导
- 设 $\{x_n\}$ 是 $\mathbb R\setminus\{c\}$ 中的序列,且 $x_n\to c$。 (依据:序列刻画的”任意性”前提——要对所有这样的序列都验证, 所以我们从”任取一条”开始,且它必须落在 $S\setminus\{c\}$ 里。)
- 由 Lecture 8 的定理(乘积的极限法则,源文件 Theorem 89 第 3 条: $x_n\to x,y_n\to y\Rightarrow x_ny_n\to xy$),取 $y_n=x_n$、$y=x$,得 $x_n^2\to c^2$。 (依据:Theorem 89(3),配对两条同一条序列。)
- 由于第 1 步的 $\{x_n\}$ 是任意的,结论”$f(x_n)\to c^2$”对所有满足 $x_n\in S\setminus\{c\},x_n\to c$ 的序列都成立。 (依据:$\forall$ 引入规则——任取后证得,即可全称推广。)
- 由 Lecture 13 Theorem 157 的 “$2.\Rightarrow1.$” 方向,得 $\lim_{x\to c}x^2=c^2$。 $\blacksquare$
【证明机制解说】
这个证明的”灵光一现”是:根本不需要灵光一现。这正是设计序列刻画的目的。 Lecture 13 花了大力气证明 Theorem 157(两个方向,其中一个方向还是反证 + 构造 $x_n$ 使 $0<\vert x_n-c\vert <1/n$),那笔投资在此刻开始分红: 任何”对序列已经成立”的命题,都能自动升级为”对函数极限成立”, 代价是零行新证明。
如果要自己重新发明这个思路,可以这样想:函数极限的定义里已经有 $\forall x$ 的 量词($0<\vert x-c\vert <\delta$ 内的所有 $x$),而序列极限的定义里是 $\forall n$。 两者结构相似但不同步。序列刻画的作用就是找到一座双向桥, 把 $\forall x$(连续统上的量词)换成 $\forall\{x_n\}$(可数层级的量词)。 具体地:如果”某个 $\epsilon_0$ 有反例 $x$”能升级成”某个 $\epsilon_0$ 有反例序列 $x_n$”, 那么”序列层面无破绽”就能压住”连续统层面无破绽”——这就是 Theorem 157 的 $(2\Rightarrow1)$ 方向(用 $1/n$ 把”反例存在”具体化为一条序列)。
【证明技巧总结】
- “翻译器”模式:想证函数极限的命题 $P$,先证对应的序列命题 $Q$,再用序列刻画桥接。
- 验证序列刻画时要”任取”:证明 $1.\Rightarrow2.$ 或 $2.\Rightarrow1.$ 时, 序列必须是任意的,不能只挑好用的那条。
- 序列必须避开 $c$:调用序列刻画时 $x_n\in S\setminus\{c\}$ 是硬性要求, 否则会误用($f(c)$ 本身不该影响极限)。
定理 159(源文件 Theorem 159):$\sin(1/x)$ 与 $x\sin(1/x)$
定理陈述(两项合写)
\[1.\ \lim_{x\to0}\sin\frac1x\ \text{不存在};\qquad 2.\ \lim_{x\to0}x\sin\frac1x=0 .\]证明策略
第 1 项是用序列刻画证明极限不存在的教科书范例,策略是 “两条序列、两个不同的极限”:找到两条都趋近于 $0$ 的序列, 使 $f$ 沿它们的取值分别恒定在两个不同的数上,从而极限不可能存在。 第 2 项是夹逼 (Squeeze Theorem):用 $\vert \sin(\cdot)\vert \le1$ 把振荡”驯服”,留下可算的因子 $\vert x\vert $。
逐步推导(第 1 项)
- 定义 $x_n=\dfrac{2}{(2n-1)\pi}$。(依据:构造——这是使 $\frac1{x_n}=\frac{(2n-1)\pi}{2}$ 恰好落在正弦的”峰/谷”上的点。)
- 验证 $x_n\neq0$:分母 $(2n-1)\pi\neq0$,故 $x_n\neq0$ ✓。 (依据:$\pi\neq0$ 且 $2n-1\neq0$。)
- 验证 $x_n\to0$:$\vert x_n-0\vert =\frac{2}{(2n-1)\pi}\le\frac2{n\pi}$(因为 $2n-1\ge n$ 对 $n\ge1$), 而 $\frac{2}{n\pi}\to0$。由夹逼(Lecture 8 Theorem 82)得 $x_n\to0$ ✓。 (依据:Lecture 8 夹逼定理 + $\{1/n\}$ 的极限。)
- 计算 $\sin\frac1{x_n}$:由第 1 步 $\frac1{x_n}=\frac{(2n-1)\pi}{2}$,故 \(\sin\frac1{x_n}=\sin\Bigl(\frac{(2n-1)\pi}{2}\Bigr)=(-1)^{n+1}\qquad\text{对全部}\ n .\) (依据:$\sin\bigl(k\pi+\frac\pi2\bigr)=(-1)^k$;取 $k=n-1$。)
- 序列 $\{(-1)^{n+1}\}=1,-1,1,-1,\dots$ 不收敛: 它的项在 $1$ 与 $-1$ 之间反复跳跃,取 $\epsilon_0=1$ 即可看出任何 $L$ 都无法靠近 (若 $L\ge0$ 则奇数项 $-1$ 满足 $\vert (-1)-L\vert \ge1$;若 $L<0$ 则偶数项 $1$ 满足 $\vert 1-L\vert >1$)。 (依据:序列收敛的唯一性 + 反证。)
- 于是存在一条序列 $x_n\in\mathbb R\setminus\{0\}$、$x_n\to0$,但 $f(x_n)=\sin\frac1{x_n}$ 不收敛。由 Lecture 13 Theorem 157 的逆否(若极限存在则所有序列的输出都收敛到同值), $\lim_{x\to0}\sin\frac1x$ 不存在。$\blacksquare$
验算(Python):取 $n=1,\dots,5$,$x_n=2/((2n-1)\pi)$ 依次为 $0.6366,0.2122,0.1273,0.0909,0.0707$,而 $\sin(1/x_n)$ 依次为 $1.0,-1.0,1.0,-1.0,1.0$,与 $(-1)^{n+1}$ 完全吻合 ✓。
逐步推导(第 2 项)
- 设序列 $\{x_n\}$ 满足 $x_n\neq0$ 且 $x_n\to0$(任意一条)。 (依据:序列刻画要求任取。)
- 对每个 $n$,因为 $\vert \sin\theta\vert \le1$ 对一切实数 $\theta$ 成立(正弦值域为 $[-1,1]$), 故 \(0\le\bigl\|x_n\sin\tfrac1{x_n}\bigr\|=\|x_n\|\cdot\bigl\|\sin\tfrac1{x_n}\bigr\|\le\|x_n\| .\) (依据:绝对值的乘法性质 $\vert ab\vert =\vert a\vert \vert b\vert $(Lecture 5 Theorem 50(3))+ $\vert \sin\vert \le1$。)
- 由 Lecture 8 Theorem 84($x_n\to0\iff\vert x_n\vert \to0$)得 $\vert x_n\vert \to0$。 (依据:$x_n\to0$ 的假设 + Theorem 84。)
- 由 Lecture 8 夹逼定理(Theorem 82):左边序列恒为 $0$、右边序列 $\vert x_n\vert \to0$, 中间量被夹住,故 $\bigl\vert x_n\sin\frac1{x_n}\bigr\vert \to0$。源文件原话即 “By the Squeeze Theorem, $\lim_{n\to\infty}\vert x_n\sin(1/x_n)\vert =0$”。 (依据:夹逼定理,取 $a_n=0$、$b_n=\vert x_n\vert $、$x_n$ 位置换成 $\bigl\vert x_n\sin\frac1{x_n}\bigr\vert $。)
- 再用 Theorem 84 的另一个方向:$\vert y_n\vert \to0\Rightarrow y_n\to0$, 故 $x_n\sin\frac1{x_n}\to0$。 (依据:Theorem 84。)
- 由第 1 步序列的任意性 + Lecture 13 Theorem 157,得 $\lim_{x\to0}x\sin\frac1x=0$。 $\blacksquare$
验算(Python):$x=0.001$ 时 $\vert x\sin(1/x)\vert =0.0008269\le0.001$ ✓; $x=10^{-6}$ 时 $=3.4999\times10^{-7}\le10^{-6}$ ✓。夹逼的两个”夹板”确实把振荡函数夹住了。
【证明机制解说】
第 1 项的机制是“用两条路径制造矛盾”。极限不存在是一个否定性命题, 最好的攻击方式是找到两条都合法的序列,让输出走散。 $x_n=\frac{2}{(2n-1)\pi}$ 的设计不是巧合:它让 $\frac1{x_n}$ 恰好是 $\frac\pi2,\frac{3\pi}2,\frac{5\pi}2,\dots$, 即正弦的正峰、负谷、正峰、负谷。为什么不选 $x_n=\frac{1}{n\pi}$? 因为那样 $\sin(1/x_n)=\sin(n\pi)=0$ 恒为 $0$,输出收敛(到 $0$), 只能证明”若极限存在则必须是 $0$”,不足以否定存在性。 否定存在性必须让输出发散——这是本题最容易踩的坑。 (Python 验算也确认了:$x_n=1/(n\pi)$ 时 $\sin=1.2\times10^{-16}\approx0$,无用。) 同样地,$x_n=\frac{1}{2n\pi}$ 也不行(输出恒 $0$)。
第 2 项的机制是“振荡 × 衰减 = 消失”。$\sin(1/x)$ 在 $0$ 附近振荡无限快(没有极限), 但 $x$ 这个因子以线性速度趋于 $0$,把振荡的幅度压住了。 $\vert \sin\vert \le1$ 是全部秘密:它提供一个与 $n$ 无关的常数上界, 于是”振荡”被降级为一个有界因子,不再影响极限。 一般模式:$\text{有界}\times\text{趋于零}=\text{趋于零}$(Lecture 8 Theorem 89(3) 的证明核心也是这一条)。
【证明技巧总结】
- 证极限不存在:找两条序列,输出极限不同;或找一条序列,输出发散。
- 别用输出恒定的序列去否定存在性:输出收敛只能逼出”极限若存在则等于该值”。
- 构造性序列:用 $\frac{2}{(2n-1)\pi}$ 把相位锁死在峰谷上;用 $\frac{1}{n}$ 制造 $<1/n$ 的逼近。
- 夹逼的三件套:$0\le\vert g(x)\vert \le h(x)$、$h(x)\to0$、$\vert g\vert \to0\iff g\to0$。
定理 160(源文件 Theorem 160):函数极限的保序性
定理陈述
设 $S\subset\mathbb R$,$c$ 是 $S$ 的聚点,$f,g:S\to\mathbb R$。 假设 $\forall x\in S,\ f(x)\le g(x)$,且 $\lim_{x\to c}f(x)$ 与 $\lim_{x\to c}g(x)$ 都存在,则
\[\lim_{x\to c}f(x)\le\lim_{x\to c}g(x).\]证明策略
逐字搬运 Lecture 8 Theorem 87(1)(序列极限的保序性:$x_n\le y_n\Rightarrow\lim x_n\le\lim y_n$)。 思路是:任取序列 $\to$ 代入不等式 $\to$ 用序列定理 $\to$ 翻译回来。 证明只有三行,因为难的部分(反证 + 取 $\frac{x-y}{2}$ 制造矛盾)已经在 Lecture 8 做完了。
逐步推导
- 记 $L_1=\lim_{x\to c}f(x)$,$L_2=\lim_{x\to c}g(x)$。(依据:存在性假设。)
- 任取序列 $\{x_n\}$,$x_n\in S\setminus\{c\}$,$x_n\to c$。 (依据:序列刻画要求对所有这样的序列验证。)
- 由假设 $\forall x\in S,\ f(x)\le g(x)$,代入 $x=x_n\in S$,得 $\forall n\in\mathbb N,\ f(x_n)\le g(x_n)$。 (依据:全称实例化。)
- 由序列刻画(Theorem 157)得 $f(x_n)\to L_1$、$g(x_n)\to L_2$。 (依据:Lecture 13 Theorem 157 的 $1.\Rightarrow2.$ 方向,对 $f$、$g$ 各用一次。)
- 由 Lecture 8 Theorem 87(1)(序列保序性),$f(x_n)\le g(x_n)\ \forall n$ 蕴含 $\lim_n f(x_n)\le\lim_n g(x_n)$,即 $L_1\le L_2$。$\blacksquare$ (依据:Theorem 87(1)。)
【证明机制解说】
整个证明的”重量”为零:一行是”任取”,一行是”代入”,一行是”引用序列定理”。 这就是讲义那句 “We can use the ‘sequential limit’ characterization to prove analogs of previous theorems for limits of sequences” 的真正含义。
值得体会的是:Lecture 8 Theorem 87 的证明为什么要用 $\frac{x-y}{2}$? 因为它是反证:假设 $y<x$,取中点把 $x,y$ 分开, 让 $y_n$ 靠近 $y$、$x_n$ 靠近 $x$, 于是下标足够大时出现 $y_n<\frac{x+y}{2}<x_n$,与 $\forall n\ x_n\le y_n$ 矛盾。 这个”中点分割”技巧是序列保序性的全部难度所在。搬过来时, 我们一个字都不用重写——这正是序列刻画”结构复用”的意义。
【证明技巧总结】
- 保号/保序类命题:结论中的 $\le$(非严格)不能加强为 $<$。 真的例子:$f\equiv0$,$g(x)=\vert x\vert $($x\neq0$),$f\le g$ 但两个极限都是 $0$,不满足 $0<0$。
- 中点分割法:证 $a\le b$ 时反设 $b<a$,取中点 $\frac{a+b}{2}$ 分离两者。
- 序列刻画的”逐条搬运”流程:任取序列 → 用定理假设获得不等式/等式 → 用序列定理 → 翻译回函数语言。
定理(补充):极限的代数运算——序列刻画的第二次分红
出处说明:源文件在本讲只写了 “Similarly, we have analogs of the Squeeze Theorem, limits of algebraic operations, and limits of absolute values. You may read the end of Section 3.1.3 [L] for this.” —— 即源文件只给出结论的提示,未写证明。 下面按作业与教材要求把四个运算完整写出,编号用 J1–J4 标示为本笔记自拟, 对应 [JL] Corollary 3.1.12(代数运算)、Corollary 3.1.11(夹逼)、Corollary 3.1.13(绝对值)。
定理陈述(补充)
设 $S\subset\mathbb R$,$c$ 是 $S$ 的聚点,$f,g:S\to\mathbb R$,且 $\lim_{x\to c}f(x)=L$、$\lim_{x\to c}g(x)=M$ 都存在。则
\(\textbf{J1.}\ \lim_{x\to c}(f+g)(x)=L+M;\qquad \textbf{J2.}\ \lim_{x\to c}(fg)(x)=LM;\) \(\textbf{J3.}\ \text{若}\ M\neq0\ \text{且}\ \forall x\in S\ g(x)\neq0,\ \text{则}\ \lim_{x\to c}\frac fg(x)=\frac LM;\qquad \textbf{J4.}\ \lim_{x\to c}\|f\|(x)=\|L\| .\)
另外还有夹逼定理的函数版本(J5):若 $\forall x\in S\ f(x)\le h(x)\le g(x)$, 且 $\lim_{x\to c}f=\lim_{x\to c}g=L$,则 $\lim_{x\to c}h=L$。
证明策略
全部采用统一的”三步流水线”:任取序列 → 用序列定理 → 翻译回来。 唯一需要留意的是 J3 的额外条件 $g(x)\neq0$ 与 $M\neq0$—— 这两个条件属于序列定理 Theorem 89(4) 的前提 (”若 $\forall n\ y_n\neq0$ 且 $y\neq0$”),必须逐字继承。
逐步推导(J1)
- 任取 $\{x_n\}$,$x_n\in S\setminus\{c\}$,$x_n\to c$。
- 由 Theorem 157,$f(x_n)\to L$ 且 $g(x_n)\to M$。
- 由 Lecture 8 Theorem 89(1)(和的极限法则),$(f+g)(x_n)=f(x_n)+g(x_n)\to L+M$。
- 第 1 步序列任意 + Theorem 157,得 $\lim_{x\to c}(f+g)=L+M$。$\blacksquare$
逐步推导(J2)
- 任取 $\{x_n\}$ 如上。
- $f(x_n)\to L$,$g(x_n)\to M$(Theorem 157)。
- 由 Theorem 89(3)(积的极限法则),$f(x_n)g(x_n)\to LM$。 (依据:Theorem 89(3);注意其证明里用到”收敛序列 $\{g(x_n)\}$ 必有界”, 这是 Lecture 8 的关键引理,不能跳过。)
- 翻译回来:$\lim_{x\to c}fg=LM$。$\blacksquare$
逐步推导(J3)
- 任取 $\{x_n\}$,$x_n\in S\setminus\{c\}$,$x_n\to c$。
- $f(x_n)\to L$,$g(x_n)\to M$(Theorem 157)。
- 由假设 $\forall x\in S\ g(x)\neq0$ 得 $\forall n\ g(x_n)\neq0$;又 $M\neq0$。 两个前提齐备。 (依据:全称实例化 + 定理假设。这两个条件一个都不能少: 缺 $M\neq0$ 则 $\frac LM$ 无意义;缺 $g(x_n)\neq0$ 则 $\frac{f(x_n)}{g(x_n)}$ 无定义。)
- 由 Theorem 89(4),$\dfrac{f(x_n)}{g(x_n)}\to\dfrac LM$。
- 翻译回来:$\lim_{x\to c}\frac fg=\frac LM$。$\blacksquare$
逐步推导(J4)
- 任取 $\{x_n\}$ 如上。
- $f(x_n)\to L$(Theorem 157)。
- 由 Lecture 8 Theorem 93($x_n\to x\Rightarrow\vert x_n\vert \to\vert x\vert $),$\vert f(x_n)\vert \to\vert L\vert $。
- 翻译回来:$\lim_{x\to c}\vert f\vert =\vert L\vert $。$\blacksquare$
逐步推导(J5,夹逼的函数版)
- 任取 $\{x_n\}$ 如上。
- 由 $\forall x\in S,\ f(x)\le h(x)\le g(x)$ 得 $\forall n,\ f(x_n)\le h(x_n)\le g(x_n)$。
- $f(x_n)\to L$、$g(x_n)\to L$(Theorem 157)。
- 由 Lecture 8 夹逼定理(Theorem 82),$h(x_n)\to L$。
- 翻译回来:$\lim_{x\to c}h=L$。$\blacksquare$
具体数值验算(把 $\epsilon,\delta$ 落成数字)
设 $f(x)=x^2$,$g(x)=1$,$c=2$。由 J2,$\lim_{x\to2}x^2\cdot1=4$。 取 $\epsilon=0.01$:由于 $\vert x^2-4\vert =\vert x-2\vert \vert x+2\vert $,对 $\vert x-2\vert <1$ 有 $\vert x+2\vert <5$, 故取 $\delta=\min\{1,0.01/5\}=\min\{1,0.002\}=0.002$。 验算 $x=2.0019$:$\vert x-2\vert =0.0019<0.002$,$\vert x^2\cdot1-4\vert =\vert x^2-4\vert $, Python 计算得 $0.007603<0.01$ ✓。这说明”乘法”这件事在数值层面确实是”两个小误差的乘积级别”。
再验算 J3 的除法:$f(x)=3x+1$,$g(x)=x+1$,$c=1$。 $L=4$,$M=2\neq0$,$\forall x\neq-1,\ g(x)\neq0$。 $L/M=2$。取 $\epsilon=0.01$:Python 验算 $x=1.0001$ 时 $\frac{3x+1}{x+1}=\frac{4.0003}{2.0001}=2.00005$,误差 $5\times10^{-5}<0.01$ ✓。
【证明机制解说】
这一整节的机制解说只有一句话,但它是本讲最重要的思想:
函数的极限定理不需要重新证一遍,直接借用序列的定理。
为什么可以这样”偷懒”?因为 Lecture 13 的 Theorem 157 是一个等价(iff)命题, 它建立了一个双向的字典:
函数语言 序列语言
------------------ ------------------
lim_{x→c} f(x) = L <───→ ∀{x_n}⊂S\{c}, x_n→c : f(x_n)→L
∀ε∃δ 的 ε-δ 推理 <───→ 只有 ε-N 一种推理
(需要处理"连续统上的所有 x") (只需处理"可数条序列")
字典一旦建好,任何已经用序列语言写好的定理(Lecture 8 的全部内容) 都可以机械地翻译到函数语言。这就是”结构复用 (structural reuse)”。
如果让你自己重新发明这套策略,动机会是这样:Lecture 8 里关于序列极限的定理有 五六个(夹逼、保序、和、积、商、绝对值、根号),每个的 $\epsilon$-$\delta$ 版本 都要重写一遍(还要处理”取 $x_0$ 使 $0<\vert x_0-c\vert <\delta$ 存在”这种聚点细节), 工作量巨大且机械重复。而定理 157 告诉你: 函数极限这一层没有新信息,它只是序列极限的一个”连续统包装”。 既然如此,把所有精力投在序列层,函数层只做翻译。
一个必须警惕的陷阱:翻译是单向可靠的,但结论不能反向使用。 Theorem 160 的保序性只在”$f(x)\le g(x)$ 对所有 $x\in S$”时成立; 如果只有”某条序列上 $f(x_n)\le g(x_n)$”,那是序列的结论,不能升级成函数的结论。
【证明技巧总结】
- 极限代数运算的通用模板:任取 $\{x_n\}$ → Theorem 157 → 序列定理 → Theorem 157 反向。
- 条件继承清单:商法则要继承 $M\neq0$ 与 $g(x_n)\neq0$; 积法则要继承”收敛序列有界”这条引理;绝对值法则用 Theorem 93。
- 不要漏掉聚点前提:$\lim_{x\to c}$ 的一切结论都以”$c$ 是 $S$ 的聚点”为前提。
定理 166(源文件 Theorem 166):双侧极限 = 左右极限相等
定理陈述
设 $S\subset\mathbb R$,$c$ 同时是 $S\cap(-\infty,c)$ 与 $S\cap(c,\infty)$ 的聚点。 则 $c$ 是 $S$ 的聚点,并且
\[\lim_{x\to c}f(x)=L\iff \lim_{x\to c^-}f(x)=\lim_{x\to c^+}f(x)=L .\]证明策略
先单独处理”$c$ 是 $S$ 的聚点”这一附加断言(因为 $(-\infty,c)$ 与 $(c,\infty)$ 中的点都在 $S$ 中,去心邻域非空即得)。
主命题两个方向:
- $(\Rightarrow)$ “砍掉一半还是成立”:双侧定义允许 $x$ 取左或取右, 所以把它限制到左半边,定义自动满足。这一方向”显然但必须写”—— 它的内容是”$0<\vert x-c\vert <\delta$ 的 $\epsilon$-$\delta$ 条件蕴含 $c-\delta<x<c$ 版本与 $c<x<c+\delta$ 版本”。
- $(\Leftarrow)$ “两个半边拼成整体”:这是有技术含量的一边。 给定 $\epsilon$,左极限给出 $\delta_-$,右极限给出 $\delta_+$, 取 $\delta=\min\{\delta_-,\delta_+\}$,则任何满足 $0<\vert x-c\vert <\delta$ 的 $x$ 要么在左半边(用 $\delta_-$),要么在右半边(用 $\delta_+$),两条路都通向 $\vert f(x)-L\vert <\epsilon$。
逐步推导(附加断言:$c$ 是 $S$ 的聚点)
- 由假设,$c$ 是 $S\cap(-\infty,c)$ 的聚点。 (依据:定理前提。)
- 由聚点定义(Lecture 13 Definition 148),$\forall\delta>0$, $(c-\delta,c+\delta)\cap\bigl(S\cap(-\infty,c)\bigr)\setminus\{c\}\neq\varnothing$。 (依据:全称实例化。)
- 而 $S\cap(-\infty,c)\subset S$,故 $(c-\delta,c+\delta)\cap S\setminus\{c\}\neq\varnothing$。 (依据:$A\subset B\Rightarrow(A\cap X)\subset(B\cap X)$。)
- 由聚点定义,$c$ 是 $S$ 的聚点。$\blacksquare$ (依据:Definition 148。)
逐步推导($\Rightarrow$ 方向)
- 设 $\lim_{x\to c}f(x)=L$,即 $\forall\epsilon>0\exists\delta>0:\ (x\in S\wedge0<\vert x-c\vert <\delta)\Rightarrow\vert f(x)-L\vert <\epsilon$。 (依据:Lecture 13 Definition 150。)
- 取任意 $\epsilon>0$,令 $\delta$ 为第 1 步所给的 $\delta$。 (依据:$\exists$ 实例化。)
- 设 $x\in S$ 且 $c-\delta<x<c$。则 $\vert x-c\vert =c-x\in(0,\delta)$, 故 $0<\vert x-c\vert <\delta$ 成立。 (依据:代数:$x<c\Rightarrow x-c<0\Rightarrow\vert x-c\vert =c-x>0$;$x>c-\delta\Rightarrow c-x<\delta$。)
- 由第 1 步的蕴含,$\vert f(x)-L\vert <\epsilon$。 (依据:蕴含消去(modus ponens)。)
- 由于 $\epsilon>0$ 任意、第 3、4 步对所有满足 $c-\delta<x<c$ 的 $x\in S$ 成立, 得 $\lim_{x\to c^-}f(x)=L$。 (依据:Definition 161 + $\forall$ 引入。)
- 同理(把 $c-\delta<x<c$ 换成 $c<x<c+\delta$,$\vert x-c\vert =x-c$),得 $\lim_{x\to c^+}f(x)=L$。 $\blacksquare$ (依据:Definition 163,推理与第 3–5 步逐字对称。)
逐步推导($\Leftarrow$ 方向)
- 设 $\lim_{x\to c^-}f(x)=L$,即 $\forall\epsilon>0\exists\delta_+’>0$……(改写清楚) \(\forall\epsilon>0\ \exists\delta_->0:\ (x\in S\wedge c-\delta_-<x<c)\Rightarrow\|f(x)-L\|<\epsilon .\) (依据:Definition 161。)
- 设 $\lim_{x\to c^+}f(x)=L$,即 \(\forall\epsilon>0\ \exists\delta_+>0:\ (x\in S\wedge c<x<c+\delta_+)\Rightarrow\|f(x)-L\|<\epsilon .\) (依据:Definition 163。)
- 给定任意 $\epsilon>0$。由第 1 步取 $\delta_->0$,由第 2 步取 $\delta_+>0$。 (依据:对同一个 $\epsilon$ 分别实例化两次 $\exists$。)
- 令 $\delta:=\min\{\delta_-,\delta_+\}$。因为 $\delta_-,\delta_+$ 都是正数, 两个正数的最小值仍为正,故 $\delta>0$ ✓。 (依据:$\min$ 的性质;这一步保证了 $\delta$ 是合法的, 正是 Lecture 13 Theorem 152 证明里用过的同一个技巧。)
- 设 $x\in S$ 且 $0<\vert x-c\vert <\delta$。 (依据:要证的目标定义的前提。)
- 二分情形:
- 情形 $x<c$:则 $\vert x-c\vert =c-x<\delta\le\delta_-$,即 $c-\delta_-<x<c$ 成立, 由第 1 步得 $\vert f(x)-L\vert <\epsilon$。
- 情形 $x>c$:则 $\vert x-c\vert =x-c<\delta\le\delta_+$,即 $c<x<c+\delta_+$ 成立, 由第 2 步得 $\vert f(x)-L\vert <\epsilon$。 (依据:$\vert x-c\vert <\delta=\min\{\delta_-,\delta_+\}\Rightarrow\vert x-c\vert <\delta_-$ 且 $\vert x-c\vert <\delta_+$; 再按符号去掉绝对值。注意 $x\neq c$ 保证二分穷尽且互斥。)
- 两种情形都得 $\vert f(x)-L\vert <\epsilon$,故 $\forall\epsilon>0\exists\delta>0:(x\in S\wedge0<\vert x-c\vert <\delta)\Rightarrow\vert f(x)-L\vert <\epsilon$, 即 $\lim_{x\to c}f(x)=L$。$\blacksquare$ (依据:Definition 150 + $\forall$ 引入。)
具体示例 1(阶梯函数,源文件 Example 165)
\[f(x)=\begin{cases}1,&x>0\\ 0,&x<0\end{cases}\qquad (f(0)\ \text{未定义}).\]- $\lim_{x\to0^-}f=0$:取任意 $\epsilon>0$,令 $\delta=1$。 若 $x\in S$ 且 $-1<x<0$,则 $f(x)=0$,$\vert f(x)-0\vert =0<\epsilon$ ✓。 (这里 $\delta$ 可以取任何正数,因为在该区域内 $f$ 恒等于 $0$。)
- $\lim_{x\to0^+}f=1$:同样取 $\delta=1$。若 $0<x<1$,$f(x)=1$,$\vert f(x)-1\vert =0<\epsilon$ ✓。
- 由于 $0\neq1$,由 Theorem 166 的逆否,双侧极限 $\lim_{x\to0}f(x)$ 不存在。 这就是跳跃间断 (jump discontinuity) 的原型。
- 注意 $f(0)$ 未定义——双侧极限存在与否与 $f(0)$ 无关, 但连续性就会因此无从谈起(连续要求 $c\in S$)。
具体示例 2:$f(x)=\vert x\vert /x$
对 $x<0$,$f\equiv-1$,故 $\lim_{x\to0^-}f=-1$(取任意 $\delta>0$,误差恒为 $0$); 对 $x>0$,$f\equiv1$,故 $\lim_{x\to0^+}f=1$。两者不等,双侧极限不存在。 (Python 验算:$f(-0.5)=-1$,$f(0.5)=1$ ✓。)这也是跳跃间断。
具体示例 3:$f(x)=x\sin(1/x)\ (x\neq0)$,$f(0)=0$
由定理 159 第 2 项,$\lim_{x\to0}f=0=f(0)$。左右极限当然也都等于 $0$ (因为双侧极限存在,由 Theorem 166 的 $\Rightarrow$ 方向自动得到)。 所以这个函数在 $0$ 处连续——尽管 $\sin(1/x)$ 在 $0$ 附近疯狂振荡, 但乘上 $x$ 之后振荡被压平,图像虽然”抖”却不断地穿过原点。
具体示例 4($\delta=\min$ 技巧必须用): 设
\[f(x)=\begin{cases}1,&x\in(-1,0)\\ 1,&x\in(0,1)\\ 0,&x\in(-\infty,-1]\cup[1,\infty)\end{cases}\]在 $c=0$ 处:左极限为 $1$(取 $\delta_-=1$),右极限为 $1$(取 $\delta_+=1$), 故双侧极限为 $1$,且 $\delta=\min\{1,1\}=1$。若左极限只需 $\delta_-=0.1$、右极限只需 $\delta_+=0.5$, 则 $\delta=\min\{0.1,0.5\}=0.1$ —— 必须取小的那个, 因为双侧窗口 $(-0.1,0.1)$ 要同时落在两个单侧窗口内。
反例(前提不可省):取 $S=\{1/n:n\in\mathbb N\}\cup\{2\}$,$c=0$。 此时 $0$ 是 $S$ 的聚点,但 $S\cap(0,\infty)$ 的聚点只有 $0$, 而 $S\cap(-\infty,0)=\varnothing$,故 $0$ 不是左半边的聚点。 若强行谈左极限,定义前件恒假、任何 $L$ 都满足,定理失效。 这说明两个”半边聚点”的前提是定理的一部分。
【证明机制解说】
$\Leftarrow$ 方向的”灵光一现”是$\min$ 技巧:把两个分别给左右半边的窗口 合并成一个对称窗口,只需取两者中较小的半径。 为什么必须取 $\min$ 而不能取平均或取大者? 因为 $\delta$ 必须同时满足两个要求:$\vert x-c\vert <\delta$ 要能推出 $\vert x-c\vert <\delta_-$ 且 $\vert x-c\vert <\delta_+$。取 $\min$ 是唯一能同时保证这两条的对称选择 (取大者会破坏 $\delta_-$ 那条;取平均也可能超过较小的那个)。 这个技巧在 Lecture 13 Theorem 152(极限唯一性)里已经用过一次 ($\delta=\min\{\delta_1,\delta_2\}$),在 Lecture 8 Theorem 89(1) 里用的是 $M=\max\{M_0,M_1\}$ —— 一边取 $\min$、一边取 $\max$,方向感要清楚:
要保证 δ 同时"小于等于"两个候选 δ → 取 min (δ 越小,条件越容易满足)
要保证 M 同时"大于等于"两个候选 M → 取 max (M 越大,条件越容易满足)
为什么”$\Rightarrow$ 显然也要写”? 因为”显然”里藏着 $0<\vert x-c\vert <\delta$ 与 “$c-\delta<x<c$”之间的转换,而这个转换需要正确使用绝对值($x<c$ 时 $\vert x-c\vert =c-x$)。 把这一步写出来,才能保证读者不会在符号上翻车。
【证明技巧总结】
- $\min$ 合并窗口 / $\max$ 合并截断:左右拼整体用 $\min$;有限多项用 $\max$。
- 双向证明的分工:$\Rightarrow$ 通常是”限制/削弱条件”,$\Leftarrow$ 通常是”合并/拼装条件”。
- 否定定理结论前先检查前提:本定理要求 $c$ 是两个半边的聚点。
- 跳跃间断的判定流程:算左极限、算右极限、比较。
定理(补充,Lecture 15 Theorem 171):连续性的三个等价刻画
出处说明:这是 Lecture 15 源文件的 Theorem 171(OCW 编号), 对应 [JL] Proposition 3.2.2。Lecture 14 定义了连续性(Definition 167) 但没有给出这个等价刻画;它紧接着在下一讲出现。 由于 Assignment 8 第 2、5 题都要用它,我们前置到本讲完整证明。
定理陈述
设 $S\subset\mathbb R$,$c\in S$,$f:S\to\mathbb R$。则
- 若 $c$ 不是 $S$ 的聚点,则 $f$ 在 $c$ 处自动连续;
- 若 $c$ 是 $S$ 的聚点,则 \(f\ \text{在}\ c\ \text{连续}\iff\lim_{x\to c}f(x)=f(c);\)
- $f$ 在 $c$ 处连续 $\iff$ 对每一条满足 $x_n\in S$、$x_n\to c$ 的序列, 都有 $f(x_n)\to f(c)$。
证明策略
- 第 1 条:找出孤立点的”真空窗口”。$c$ 不是聚点意味着存在一个 $\delta_0$, 使 $S$ 在 $(c-\delta_0,c+\delta_0)$ 内除 $c$ 外什么都没有。 取 $\delta=\delta_0$,窗口里唯一可能的 $x$ 就是 $c$ 本身,误差为 $0$。
- 第 2 条:两边都靠”去掉 $0<$”来对照定义。一个方向把极限定义里的 $x\neq c$ 放宽到允许 $x=c$(这一点自动成立);另一个方向把连续定义里的 $\vert x-c\vert <\delta$ 收紧到 $0<\vert x-c\vert <\delta$(条件更强,结论自然继承)。
- 第 3 条:$(\Rightarrow)$ 直接 $\epsilon$-$\delta$ 套 $\epsilon$-$N$; $(\Leftarrow)$ 反证 + 构造 $x_n$ 使 $\vert x_n-c\vert <1/n$ 且误差 $\ge\epsilon_0$, 再用夹逼让 $x_n\to c$,最终用序列极限与 $\epsilon_0$ 的矛盾收尾。
逐步推导(第 1 条:孤立点自动连续)
- 设 $c$ 不是 $S$ 的聚点。由聚点定义的否定(Lecture 13 Definition 148), \(\exists\delta_0>0\ \text{s.t. } (c-\delta_0,c+\delta_0)\cap S\setminus\{c\}=\varnothing .\) (依据:$\forall\delta>0,\ \text{非空}$ 的否定是 $\exists\delta>0,\ \text{空}$。)
- 给定任意 $\epsilon>0$,令 $\delta:=\delta_0>0$。 (依据:第 1 步给出的 $\delta_0$;注意 $\delta_0$ 无需依赖 $\epsilon$。)
- 设 $x\in S$ 且 $\vert x-c\vert <\delta=\delta_0$。 (依据:连续性定义的前提。)
- 则 $x\in(c-\delta_0,c+\delta_0)\cap S$。 (依据:$\vert x-c\vert <\delta_0\iff c-\delta_0<x<c+\delta_0$。)
- 若 $x\neq c$,则 $x\in(c-\delta_0,c+\delta_0)\cap S\setminus\{c\}=\varnothing$,矛盾。 故必有 $x=c$。 (依据:第 1 步 + 反证。)
- 于是 $\vert f(x)-f(c)\vert =\vert f(c)-f(c)\vert =0<\epsilon$。 (依据:绝对值的正定性,Lecture 5 Theorem 50(1);$\epsilon>0$。)
- 由 $\epsilon>0$ 任意,$f$ 在 $c$ 处连续。$\blacksquare$ (依据:Definition 167。)
逐步推导(第 2 条 $(\Rightarrow)$:极限 = 函数值 $\Rightarrow$ 连续)
- 设 $\lim_{x\to c}f(x)=f(c)$,即 $\forall\epsilon>0\exists\delta>0:(x\in S\setminus\{c\}\wedge\vert x-c\vert <\delta)\Rightarrow\vert f(x)-f(c)\vert <\epsilon$。 (依据:Definition 150,其中 $L:=f(c)$。)
- 给定 $\epsilon>0$,取第 1 步的 $\delta>0$。(依据:$\exists$ 实例化。)
- 设 $x\in S$ 且 $\vert x-c\vert <\delta$。
- 二分:
- 若 $x\neq c$:则 $x\in S\setminus\{c\}$ 且 $\vert x-c\vert <\delta$,由第 1 步得 $\vert f(x)-f(c)\vert <\epsilon$。
- 若 $x=c$:则 $\vert f(x)-f(c)\vert =\vert f(c)-f(c)\vert =0<\epsilon$。 (依据:第 1 步的蕴含 + 绝对值的正定性。)
- 两种情形都成立,故 $\forall\epsilon>0\exists\delta>0:(x\in S\wedge\vert x-c\vert <\delta)\Rightarrow\vert f(x)-f(c)\vert <\epsilon$, 即 $f$ 在 $c$ 连续。$\blacksquare$ (依据:Definition 167。)
逐步推导(第 2 条 $(\Leftarrow)$:连续 $\Rightarrow$ 极限 = 函数值)
- 设 $f$ 在 $c$ 连续,即 $\forall\epsilon>0\exists\delta>0:(x\in S\wedge\vert x-c\vert <\delta)\Rightarrow\vert f(x)-f(c)\vert <\epsilon$。 (依据:Definition 167。)
- 给定 $\epsilon>0$,取第 1 步的 $\delta>0$。(依据:$\exists$ 实例化。)
- 设 $x\in S\setminus\{c\}$ 且 $\vert x-c\vert <\delta$。 (依据:Definition 150 的前提;注意 $S\setminus\{c\}\subset S$。)
- 由 $x\in S\setminus\{c\}\subset S$ 与 $\vert x-c\vert <\delta$,第 1 步的蕴含给出 $\vert f(x)-f(c)\vert <\epsilon$。 (依据:蕴含消去 + 集合包含。)
- 故 $\forall\epsilon>0\exists\delta>0:(x\in S\setminus\{c\}\wedge\vert x-c\vert <\delta)\Rightarrow\vert f(x)-f(c)\vert <\epsilon$, 即 $\lim_{x\to c}f(x)=f(c)$。$\blacksquare$ (依据:Definition 150。) 注意:这里没有说”极限存在是因为右边收敛”——恰恰相反, 我们直接构造出了极限的定义满足,而 $L=f(c)$ 就是那个极限值。
逐步推导(第 3 条 $(\Rightarrow)$:连续 $\Rightarrow$ 序列刻画)
- 设 $f$ 在 $c$ 连续。任取序列 $\{x_n\}$,$x_n\in S$,$x_n\to c$。 (依据:要对所有这样的序列验证。)
- 给定 $\epsilon>0$。由连续性,$\exists\delta>0$ 使 $x\in S\wedge\vert x-c\vert <\delta\Rightarrow\vert f(x)-f(c)\vert <\epsilon$。 (依据:Definition 167 + $\exists$ 实例化。)
- 由 $x_n\to c$(Definition:$\forall\epsilon^{\prime}\exists M\forall n\ge M,\ \vert x_n-c\vert <\epsilon^{\prime}$), 取 $\epsilon^{\prime}=\delta>0$,得 $\exists M_0\in\mathbb N$ 使 $\forall n\ge M_0,\ \vert x_n-c\vert <\delta$。 (依据:序列收敛定义 + $\exists$ 实例化。)
- 令 $M:=M_0$。设 $n\ge M$。 (依据:构造。)
- 因为 $x_n\in S$ 且 $\vert x_n-c\vert <\delta$,由第 2 步得 $\vert f(x_n)-f(c)\vert <\epsilon$。 (依据:蕴含消去。)
- 由 $\epsilon>0$ 任意,$\forall\epsilon>0\exists M\forall n\ge M,\ \vert f(x_n)-f(c)\vert <\epsilon$, 即 $f(x_n)\to f(c)$。$\blacksquare$ (依据:序列收敛定义。)
逐步推导(第 3 条 $(\Leftarrow)$:序列刻画 $\Rightarrow$ 连续)
- 设对每条 $x_n\in S$、$x_n\to c$ 的序列都有 $f(x_n)\to f(c)$。 (依据:反证的前提。)
- 反设 $f$ 在 $c$ 不连续。由 Negation 170(源文件 Negation 170), \(\exists\epsilon_0>0\ \text{s.t. }\forall\delta>0\ \exists x\in S:\ \|x-c\|<\delta\ \text{且}\ \|f(x)-f(c)\|\ge\epsilon_0 .\) (依据:Definition 167 的否定。)
- 对每个 $n\in\mathbb N$,取 $\delta=1/n>0$,由第 2 步得 \(\exists x_n\in S\ \text{s.t. }\ \|x_n-c\|<\tfrac1n\ \text{且}\ \|f(x_n)-f(c)\|\ge\epsilon_0 .\) (依据:$\forall\delta$ 实例化 + $\exists$ 实例化; 注意 $x_n$ 允许依赖 $n$,这正是量词顺序 $\forall\delta\exists x$ 所允许的。)
- 由 $0\le\vert x_n-c\vert <\frac1n$ 与 $\frac1n\to0$,用夹逼定理(Lecture 8 Theorem 82)得 $\vert x_n-c\vert \to0$,再由 Theorem 84 得 $x_n\to c$。 (依据:夹逼定理 + Theorem 84。)
- 又 $x_n\in S$,故第 1 步的假设适用,给出 $f(x_n)\to f(c)$,即 $\vert f(x_n)-f(c)\vert \to0$。 (依据:第 1 步 + Theorem 84。)
- 但由第 3 步,$\forall n,\ \vert f(x_n)-f(c)\vert \ge\epsilon_0>0$。 由 Lecture 8 Theorem 87(1)(保序性), \(0=\lim_{n\to\infty}\|f(x_n)-f(c)\|\ge\epsilon_0>0,\) 这是矛盾。 (依据:Theorem 87(1) + 极限唯一性;$0\ge\epsilon_0>0$ 不可能。)
- 故反设不成立,$f$ 在 $c$ 处连续。$\blacksquare$ (依据:反证法。)
具体示例(把数值走一遍)
(a)孤立点自动连续。 取 $S=\mathbb Z$(整数集),$c=5$, $f(x)=x^2$(其实任何 $f$ 都行)。$5$ 不是 $\mathbb Z$ 的聚点: 取 $\delta_0=\frac12$,则 $(4.5,5.5)\cap\mathbb Z\setminus\{5\}=\varnothing$ ✓。 于是对任意 $\epsilon>0$(比如 $\epsilon=10^{-6}$),取 $\delta=\frac12$: 窗口内唯一的整数是 $5$,$\vert f(5)-f(5)\vert =0<10^{-6}$ ✓。自动连续,不用算。 (这正是 [JL] Exercise 3.2.12 的内容。)
(b)极限 = 函数值。 $f(x)=3x+1$,$c=2$。Lecture 13 Example 153 已证 $\lim_{x\to2}f=7$,而 $f(2)=7$,故连续。 $\epsilon=0.03$ 时取 $\delta=\frac{0.03}{1+3}=0.0075$; 验算 $x=2.005$:$\vert x-2\vert =0.005<0.0075$,$\vert f(x)-7\vert =0.015<0.03$ ✓(Python 核对)。
(c)序列刻画。 $f(x)=x^2$,取 $x_n=1+\frac1n\to1$, 则 $f(x_n)=(1+\frac1n)^2\to1=f(1)$ ✓。这正是 Theorem 158 的序列证明的重演。
反例(序列刻画的反面)
$f(x)=1\ (x\neq0)$,$f(0)=2$,$c=0$。取 $x_n=\frac1n\to0$, 则 $f(x_n)=1\to1\neq2=f(0)$,序列刻画直接判定不连续—— 比 $\epsilon_0=1$ 的证法更省事,这也说明序列刻画在”证不连续”时特别好用: 只要找到一条序列让输出收敛到错误的值(或发散)即可。
【证明机制解说】
第 1 条的思想是“孤立点附近没有别的点,因此没有约束”。 这是一个极其容易被忽略的细节:很多学生把”连续”等同于”图像一笔画”, 于是觉得定义域是 $\mathbb Z$ 这种散点的函数”处处断”; 但按定义它们处处连续,因为在每个整数点附近, 函数根本没有”邻居”可以比较。连续性是局部性质, 它只约束”定义域内的点”,不约束定义域外的空白。
第 3 条的 $(\Leftarrow)$ 方向是全定理最有技术含量的部分, 其思想是“把连续性的失败量化为一条序列”。 关键观察:不连续的定义是 $\exists\epsilon_0\forall\delta\exists x(\dots)$, 其中的 $x$ 允许依赖 $\delta$。既然 $\delta$ 可以任意小, 我们就让 $\delta=\frac1n$ 跑一遍,每一步抽出一个”坏点” $x_n$, 于是把不可数的 $\delta$ 集合压缩成可数的序列。 这条序列 $x_n\to c$(被 $\frac1n$ 夹住), 但 $f(x_n)$ 始终离 $f(c)$ 至少 $\epsilon_0$——矛盾。
如果要”自己发明”这个证明,可以这样想:我们要把”$\forall\delta\exists x$” 变成”$\exists\{x_n\}$”。最自然的做法就是让 $\delta$ 取一个趋于 $0$ 的序列 ($\frac1n$ 是最常用的选择),每次取出对应的 $x$。 这正是 Lecture 13 Theorem 157 里 $(\Leftarrow)$ 方向用过的同一招 (当时取 $0<\vert x_n-c\vert <\frac1n$ 且 $\vert f(x_n)-L\vert \ge\epsilon_0$)。 同一个技巧在极限与连续两个场景中复用,是极好的记忆锚点。
【证明技巧总结】
- 孤立点判定:先问”$c$ 是 $S$ 的聚点吗?”不是 → 连续免费。
- ”$\frac1n$ 量化法”:把 $\forall\delta\exists x$ 中的 $\delta$ 取为 $\frac1n$, 抽出一条反例序列,再用夹逼 + 保序性制造矛盾。
- 序列刻画的两个用途:证连续(流水线翻译);证不连续(找一条坏序列, 比 $\epsilon$-$\delta$ 简单得多)。
- 连续定义里 $x=c$ 无害:写证明时不要怕”取 $x=c$”,那一步误差为 $0$。
—##### 定理(补充,[JL] Proposition 3.2.5 / Lecture 15 Theorem 174):连续函数的代数运算
出处说明:Lecture 15 源文件 Theorem 174 陈述了这三条但写 “These proofs are left to the reader.” [JL] 给的是 Proposition 3.2.5。Final 第 2(b) 题正是本条的第 2 项(乘积), 所以下面把完整证明写出,供考试直接使用。
定理陈述(补充)
设 $f:S\to\mathbb R$、$g:S\to\mathbb R$ 在 $c\in S$ 连续。则
- $f+g$ 在 $c$ 连续;
- $f\cdot g$ 在 $c$ 连续;
- 若 $\forall x\in S,\ g(x)\neq0$,则 $\dfrac fg$ 在 $c$ 连续。
证明策略
不用 $\epsilon$-$\delta$,用序列刻画 + 上一条的代数运算法则(J1–J3)。 这是本讲的”再分红”:连续性的序列刻画(Theorem 171 第 3 条)+ 极限的代数运算(J1–J3)= 连续的代数运算,零额外难度。
逐步推导(第 1 项:$f+g$)
- 设 $c$ 是 $S$ 的聚点或孤立点,分两种情形处理(因为 Theorem 171 的两条分支前提不同)。 情形 A:$c$ 是 $S$ 的聚点。 (依据:情形划分。)
- 由 Theorem 171 第 2 条,$f$ 连续 $\Rightarrow\lim_{x\to c}f(x)=f(c)$; 同理 $\lim_{x\to c}g(x)=g(c)$。 (依据:Theorem 171(2) 的 $(\Leftarrow)$ 方向。)
- 由 J1(和的极限法则),$\lim_{x\to c}(f+g)(x)=f(c)+g(c)=(f+g)(c)$。 (依据:本笔记定理 J1,其前提”两个极限都存在”已在第 2 步满足。)
- 由 Theorem 171 第 2 条反向,$f+g$ 在 $c$ 连续。 (依据:Theorem 171(2) 的 $(\Rightarrow)$ 方向。)
- 情形 B:$c$ 不是 $S$ 的聚点。 由 Theorem 171 第 1 条,$f$ 与 $g$ 都在 $c$ 连续 (自动连续),而任何函数在孤立点都连续,故 $f+g$ 也在 $c$ 连续。 (依据:Theorem 171(1) 对 $f+g$ 再用一次。)
- 两种情形都成立,第 1 项证毕。$\blacksquare$
逐步推导(第 2 项:$fg$,Final 第 2(b) 题的标准答案)
- 设 $c\in S$。
- 情形 A:$c$ 是 $S$ 的聚点。 由 Theorem 171 第 2 条, $\lim_{x\to c}f(x)=f(c)$ 且 $\lim_{x\to c}g(x)=g(c)$。 (依据:Theorem 171(2),连续性 $\Rightarrow$ 极限等于函数值。)
- 由 J2(积的极限法则,其自身依据是 Lecture 8 Theorem 89(3)), \(\lim_{x\to c}(fg)(x)=\Bigl(\lim_{x\to c}f(x)\Bigr)\Bigl(\lim_{x\to c}g(x)\Bigr)=f(c)\,g(c)=(fg)(c).\) (依据:J2 + 第 2 步。注意 Theorem 89(3) 的证明用到”$\{g(x_n)\}$ 有界”, 而这条由”收敛序列必有界”(Lecture 8)保证,链条完整。)
- 由 Theorem 171 第 2 条反向,$fg$ 在 $c$ 连续。$\blacksquare$ (依据:Theorem 171(2)。)
- 情形 B:$c$ 不是 $S$ 的聚点。 由 Theorem 171(1),$fg$ 在 $c$ 连续。$\blacksquare$
逐步推导(第 3 项:$f/g$)
- 设 $c\in S$,$\forall x\in S,\ g(x)\neq0$。
- 情形 A:$c$ 是 $S$ 的聚点。 由 Theorem 171(2), $\lim_{x\to c}f(x)=f(c)$、$\lim_{x\to c}g(x)=g(c)$。 (依据:Theorem 171(2)。)
- 由 $g(x)\neq0\ \forall x\in S$ 的假设,特别地 $g(c)\neq0$。 (依据:全称实例化,$c\in S$。这一步不可省:若 $g(c)=0$ 则 $f/g$ 在 $c$ 无定义。)
- 由 J3(商的极限法则),$\lim_{x\to c}\frac fg(x)=\frac{f(c)}{g(c)}=(\frac fg)(c)$。 (依据:J3;其两个前提——$g(c)\neq0$ 与 “$g(x_n)\neq0$ 对一切 $n$”—— 分别由第 3 步与假设 $\forall x\in S\ g(x)\neq0$ 保证。)
- 由 Theorem 171(2) 反向,$f/g$ 在 $c$ 连续。$\blacksquare$ (依据:Theorem 171(2)。)
推论(补充):常数倍、绝对值、平方根
- $cf$ 连续($c\in\mathbb R$ 常数):取 $g\equiv c$(常函数连续,见下文)后用乘积法则。
- $\vert f\vert $ 连续:在聚点情形用 J4($\lim\vert f\vert =\vert \lim f\vert =\vert f(c)\vert $)与 Theorem 171(2); 在孤立点情形用 Theorem 171(1)。
- $\sqrt f$ 连续(要求 $f\ge0$):在聚点情形, 先由 $f$ 连续得 $f(x_n)\to f(c)$,再由 Lecture 8 Theorem 91 ($\sqrt{\cdot}$ 与极限交换:$x_n\to x,x_n\ge0\Rightarrow\sqrt{x_n}\to\sqrt x$)得 $\sqrt{f(x_n)}\to\sqrt{f(c)}$;最后用 Theorem 171(3) 翻译回连续。 这里必须要求 $f\ge0$,否则 $\sqrt f$ 无定义。
验算:连续性的代数运算(把 $\epsilon$ 取成数字)
$f(x)=x$(连续,这是恒等函数)、$g(x)=x$,$c=3$。由乘积法则 $x^2$ 连续。 取 $\epsilon=0.01$,$\delta=\min\{1,\frac{0.01}{2\cdot3+1}\}=\frac1{700}\approx0.0014286$。 验算 $x=3.0014$:$\vert x^2-9\vert =0.008402<0.01$ ✓(Python)。$7\delta=0.01$,恰好卡在边界, 说明这个 $\delta$ 是紧的。
再验算商:$f(x)=x^2$,$g(x)=x+1$,$c=2$。$f(2)=4$,$g(2)=3\neq0$, $(\frac fg)(2)=\frac43$。取 $x=2.001$:$\frac{x^2}{x+1}=\frac{4.004001}{3.001}=1.334222$, 而 $\frac43=1.333333$,误差 $8.9\times10^{-4}$(Python 核对通过)。
【证明机制解说】
这里的核心思想是“连续性的所有代数性质都是极限代数性质的免费推论”。 链条是这样的:
连续性 (Theorem 171(2)) ⟺ lim f = f(c) ← 把连续翻译成极限等式
极限的代数运算 (J1–J4) ⟹ lim(fg) = (lim f)(lim g) ← 在极限层做运算
Theorem 171(2) 反向 ⟹ fg 连续 ← 翻译回连续
所以证明中不出现任何 $\epsilon$ 和 $\delta$。这与 $\epsilon$-$\delta$ 直接证明相比, 节省的不只是篇幅,更是思路:直接证明需要”先证局部有界再控误差”一大堆技术准备, 而在序列层,这些准备早在 Lecture 8 就完成了。
必须提醒的一个细节:孤立点情形不能省略。因为 Theorem 171(2) 只覆盖聚点情形, 如果 $c$ 是孤立点(例如 $S=\mathbb Z$),”$\lim_{x\to c}f(x)=f(c)$”这句话 根本没有定义(极限只在聚点处谈)。正确写法是引用 Theorem 171(1): 孤立点处一切函数都连续,所以 $fg$ 也连续。考试中如果把这两种情形混为一谈, 严格说是有逻辑漏洞的(虽然很多教材默认 $S$ 是区间从而回避了这个问题)。
【证明技巧总结】
- 连续 + 代数运算 = 连续:一律走”翻译成极限 → 用极限运算法则 → 翻译回来”。
- 除法的两个前提:$g(c)\neq0$ 与 $g$ 在整个 $S$ 上非零,一个都不能漏。
- 孤立点/聚点分情形:这是严谨性要求,尤其当 $S$ 不是区间时。
- $\sqrt f$ 需要 $f\ge0$:否则函数本身无定义,谈不上连续。
定理(补充,[JL] Theorem 3.2.6 / Lecture 15 Theorem 173):多项式与有理函数的连续性
出处说明:Lecture 15 源文件 Theorem 173 用序列刻画证明了多项式连续; [JL] 的路线是”常函数与恒等函数连续 + 代数运算 + 归纳”。两条路线都对, 我们把 [JL] 路线写出(因为它展示了归纳结构),并指出与源文件路线的等价性。
定理陈述(补充)
若 $f$ 是多项式,即 $f(x)=a_dx^d+\cdots+a_1x+a_0$($a_i\in\mathbb R$), 则 $f$ 在整个 $\mathbb R$ 上连续。 若有理函数 $R(x)=\dfrac{p(x)}{q(x)}$($p,q$ 为多项式), 则 $R$ 在其定义域 $\{x\in\mathbb R:q(x)\neq0\}$ 上连续。
证明策略
“从两块积木出发,用代数运算搭起整座大厦”。两块积木是:
- 常函数 $f(x)\equiv a$ 连续(取 $\delta=1$,误差恒为 $0$);
- 恒等函数 $f(x)=x$ 连续(取 $\delta=\epsilon$,误差恰为 $\vert x-c\vert $)。
然后:由乘积法则得到 $x^k$ 连续(对 $k$ 归纳);由数乘法则得到 $a_kx^k$ 连续; 由加法法则(对项数归纳)得到整个多项式连续。有理函数再用商法则。
逐步推导
- 常函数连续:设 $f\equiv a$($a\in\mathbb R$)。给定 $\epsilon>0$,取 $\delta=1$(或任何正数)。 若 $\vert x-c\vert <\delta$,则 $\vert f(x)-f(c)\vert =\vert a-a\vert =0<\epsilon$ ✓。 (依据:Definition 167;绝对值的正定性。)
- 恒等函数连续:设 $f(x)=x$。给定 $\epsilon>0$,取 $\delta=\epsilon>0$。 若 $\vert x-c\vert <\delta$,则 $\vert f(x)-f(c)\vert =\vert x-c\vert <\delta=\epsilon$ ✓。 (依据:Definition 167。)
- $x^k$ 连续($k\in\mathbb N$):对 $k$ 归纳。
- $k=1$:即第 2 步。
- 归纳步骤:设 $x^k$ 连续,则由乘积法则(本笔记第 2 项), $x^{k+1}=x^k\cdot x$ 是两个连续函数之积,故连续。 (依据:数学归纳法 + 乘积法则。)
- $a_kx^k$ 连续:$a_k$ 是常函数(连续),$x^k$ 连续, 由乘积法则 $a_kx^k$ 连续。 (依据:乘积法则。)
- 有限和连续:对项数做归纳。设 $h_1,\dots,h_m$ 都连续,则 $h_1+\cdots+h_m$ 连续(每加一项用一次加法法则)。 (依据:数学归纳法 + 和的法则。)
- 于是 $f(x)=a_dx^d+\cdots+a_0$ 是有限个连续函数之和,故连续。 (依据:第 4、5 步。)
- 有理函数:$R=p/q$ 是 $p$、$q$ 之商。在 $D=\{x:q(x)\neq0\}$ 上, $q$ 处处非零,由商的法则 $R$ 在 $D$ 上连续。$\blacksquare$ (依据:商的法则,其前提 $g(c)\neq0$ 对每个 $c\in D$ 由 $D$ 的定义保证。)
与源文件路线的对照:源文件 Lecture 15 Theorem 173 的证明是 “任取 $x_n\to c$,由 Lecture 8 的序列极限法则 $\lim f(x_n)=a_d(\lim x_n)^d+\cdots+a_0=f(c)$,再由序列刻画得连续”。 两条路线逻辑等价,但源文件路线更短——因为它把归纳的负担也转嫁给了序列定理 (序列版本的代数运算本身就包含了归纳)。这正是”结构复用”的又一次体现。
验算(把 $\delta$ 取成数字)
- 取恒等函数 $f(x)=x$,$c=7$,$\epsilon=0.01$:由第 2 步取 $\delta=\epsilon=0.01$。 验算 $x=7.009$:$\vert f(x)-f(7)\vert =0.009<0.01$ ✓(Python)。
- 取 $f(x)=x^2-3x+1$,$c=2$:$f(2)=4-6+1=-1$。 取 $\epsilon=0.05$:因为 $f(x)+1=x^2-3x+2=(x-2)(x-1)$, 对 $\vert x-2\vert <1$ 有 $\vert x-1\vert <2$,故 $\vert f(x)-f(2)\vert =\vert x-2\vert \vert x-1\vert <2\vert x-2\vert $, 取 $\delta=\min\{1,\frac{0.05}{2}\}=0.025$。 验算 $x=2.02$:$\vert f(x)+1\vert =\vert (0.02)(1.02)\vert =0.0204<0.05$ ✓(Python)。
反例(有理函数的定义域必须排除零点)
$R(x)=\dfrac1{x^2-1}$ 在 $x=\pm1$ 处无定义,所以”在 $x=1$ 处连续”这句话 既不真也不假,而是没有意义(连续性要求在 $c$ 处有定义)。 同理 $\dfrac{x^2-1}{x-1}$ 在 $x=1$ 无定义,尽管 $\lim_{x\to1}\frac{x^2-1}{x-1}=\lim_{x\to1}(x+1)=2$ 存在。 这正是”极限存在但函数无定义”的典型,也是 Lecture 13 Example 165 提到的 “$\lim_{x\to0^-}f=0$,$\lim_{x\to0^+}f=1$,although $f(0)$ is undefined”的同一类现象。
【证明机制解说】
这个证明的思想是“代数的可组合性”。整个构造可以画成一棵生成树:
常数函数 (连续) 恒等函数 x (连续)
│ │
│ ├── 乘积 ──→ x² ──乘积──→ x³ ──→ ...
│ │
└──── 乘积 ───────────┴──→ a_k x^k (连续)
│
有限和(归纳)──→ 多项式 (连续)
│
商法则 ──→ 有理函数 (在其定义域上连续)
这个”生成树”思维是分析课程的主线之一:先确立最简单的构件, 再用封闭性定理(运算封闭、复合封闭、取极限封闭)向外扩张。 只要封闭性定理证一次,就永久可用。
【证明技巧总结】
- 构件 + 封闭性 = 整类函数:这是把”逐点 $\epsilon$-$\delta$”升级为”整体结论”的标准范式。
- 归纳的两个层次:幂次归纳($x^k$)与项数归纳(有限和),别混淆。
- 定义域先行:涉及除法/根号前,先把定义域写清楚。
定理(补充,[JL] Theorem 3.2.7 / Lecture 15 Theorem 175):复合函数的连续性
定理陈述(补充)
设 $B\subset\mathbb R$,$A\subset\mathbb R$,$g:A\to B$,$f:B\to\mathbb R$。 若 $g$ 在 $c\in A$ 连续,且 $f$ 在 $g(c)\in B$ 连续,则 $f\circ g$ 在 $c$ 连续。
证明策略
两条路都写:
- 路线 1(源文件 Lecture 15 Theorem 175 的做法,三行):用序列刻画。 $x_n\to c\Rightarrow g(x_n)\to g(c)\Rightarrow f(g(x_n))\to f(g(c))$。
- 路线 2($\epsilon$-$\delta$,两次数 $\epsilon$-$\delta$): 先把外层的 $\epsilon$ 换成内层的 $\delta_g$,再把 $\delta_g$ 换成 $\delta_f$。 这条路线展示了$\delta$ 的选取顺序,是本讲必须掌握的技能。
逐步推导(路线 1:序列刻画,三行)
- 任取序列 $\{x_n\}$,$x_n\in A$,$x_n\to c$。 (依据:序列刻画要求任意。)
- 由 $g$ 在 $c$ 连续与 Theorem 171(3),$g(x_n)\to g(c)$。 (依据:Theorem 171(3) 的 $(\Rightarrow)$。)
- 注意 $g(x_n)\in B$ 对一切 $n$(因为 $g$ 的值域含于 $B$), 且 $g(x_n)\to g(c)$,故序列 $\{g(x_n)\}$ 是 $B$ 中收敛到 $g(c)$ 的序列。 (依据:$g:A\to B$ 的值域条件。)
- 由 $f$ 在 $g(c)$ 连续与 Theorem 171(3),$f(g(x_n))\to f(g(c))$。 (依据:Theorem 171(3) 对 $f$ 使用。)
- 即 $(f\circ g)(x_n)\to(f\circ g)(c)$。由第 1 步序列任意 + Theorem 171(3), $f\circ g$ 在 $c$ 连续。$\blacksquare$ (依据:Theorem 171(3) 的 $(\Leftarrow)$。)
逐步推导(路线 2:$\epsilon$-$\delta$,注意 $\delta$ 的嵌套顺序)
- 给定任意 $\epsilon>0$。 (依据:要证的目标定义。)
- 第一层(外层 $f$):由 $f$ 在 $g(c)$ 连续, \(\exists\delta_g>0\ \text{s.t. }\ \forall y\in B,\ \|y-g(c)\|<\delta_g\Rightarrow\|f(y)-f(g(c))\|<\epsilon .\) (依据:Definition 167 应用于 $f$、点 $g(c)$、误差上界 $\epsilon$。 注意这里把外层的 $\epsilon$ 用作 $f$ 的误差上界。这一步给出的 $\delta_g$ 可能依赖 $g(c)$ 与 $\epsilon$,但不依赖 $x$。)
- 第二层(内层 $g$):把 $\delta_g$ 当作新的”误差上界”, 由 $g$ 在 $c$ 连续, \(\exists\delta_f>0\ \text{s.t. }\ \forall x\in A,\ \|x-c\|<\delta_f\Rightarrow\|g(x)-g(c)\|<\delta_g .\) (依据:Definition 167 应用于 $g$、点 $c$、误差上界 $\delta_g>0$ ——这一步合法的前提正是第 2 步保证了 $\delta_g>0$。)
- 令 $\delta:=\delta_f>0$。 (依据:命名。)
- 设 $x\in A$ 且 $\vert x-c\vert <\delta=\delta_f$。 (依据:目标定义的前提。)
- 由第 3 步的蕴含,$\vert g(x)-g(c)\vert <\delta_g$。 (依据:蕴含消去。)
- 又 $g(x)\in B$(值域条件),把第 6 步的 $y:=g(x)\in B$ 代入第 2 步的蕴含, 得 $\vert f(g(x))-f(g(c))\vert <\epsilon$。 (依据:第 2 步的蕴含消去;$y=g(x)$ 满足 $y\in B$ 与 $\vert y-g(c)\vert <\delta_g$。)
- 即 $\vert (f\circ g)(x)-(f\circ g)(c)\vert <\epsilon$。由 $\epsilon>0$ 任意, $f\circ g$ 在 $c$ 连续。$\blacksquare$ (依据:Definition 167。)
具体数值验算(两次 $\epsilon$-$\delta$,全部落成数字)
取 $g(x)=2x$,$f(y)=y^2$,故 $(f\circ g)(x)=4x^2$,取 $c=1$,$g(c)=2$。
- 给定外层 $\epsilon=0.04$。对 $f(y)=y^2$ 在 $y_0=2$ 处: $\vert y^2-4\vert =\vert y-2\vert \vert y+2\vert $,对 $\vert y-2\vert <1$ 有 $\vert y+2\vert <5$, 故取 $\delta_g=\min\{1,\frac{0.04}{5}\}=\min\{1,0.008\}=0.008$。 (验算:$y=2.007\Rightarrow\vert y^2-4\vert =\vert 0.007\vert \vert 4.007\vert =0.028049<0.04$ ✓,Python 核对。)
- 再把 $\delta_g=0.008$ 当作误差上界,对 $g(x)=2x$ 在 $c=1$ 处: $\vert 2x-2\vert =2\vert x-1\vert <0.008\iff\vert x-1\vert <0.004$,故取 $\delta_f=0.004$。
- 综合:$\delta=0.004$。
- 验算:取 $x=1.003$,$\vert x-1\vert =0.003<0.004$; $g(x)=2.006$,$\vert g(x)-g(1)\vert =0.006<0.008$ ✓; $(f\circ g)(x)=4(1.003)^2=4.024036$,$\vert 4.024036-4\vert =0.024036<0.04$ ✓(Python 核对)。 两层都通过。
反例(顺序搞反就会出错)
常见错误是”先给 $g$ 找 $\delta$,再给 $f$ 找 $\delta$”—— 即把上文的第 2、3 步顺序调换。那样得到的 $\delta_f$ 会依赖一个假的 $f$-窗口,无法保证 $\vert g(x)-g(c)\vert $ 落进 $f$ 要求的范围内。 正确的顺序永远是由外向内:先定 $f$ 的 $\delta_g$,再为达到 $\delta_g$ 去定 $g$ 的 $\delta_f$。 一个具体的思维图像:
x ──(g 的 δf-窗口)──→ g(x) ──(f 的 δg-窗口)──→ f(g(x))
|x-c| < δf ⇒ |g(x)-g(c)| < δg ⇒ |f(g(x))-f(g(c))| < ε
目标 δ = δf 中间的"传递量"是 δg 最外层目标是 ε
另一个反例(前提不可省):$g$ 在 $c$ 连续、$f$ 在 $g(c)$ 连续,两个条件都要。 取 $g\equiv0$(连续),取 $f(y)=1\ (y\neq0)$、$f(0)=5$(在 $y=0$ 不连续)。 则 $f\circ g\equiv5$……实际上这是常数,连续——所以这个例子不理想。 换个方向:取 $g(x)=0\ (x\neq0)$、$g(0)=0$,这不改。真正需要说明的是: “$f$ 连续”这个条件不能换成”$f$ 在别处连续”。 取 $g(x)=x$(连续),$f(y)=1\ (y\neq0)$、$f(0)=5$(在 $0$ 不连续), 则 $f\circ g=f$ 在 $0$ 处不连续。可见”$f$ 在 $g(c)$ 这一点连续”是必需的。
【证明机制解说】
复合的连续性有一个非常漂亮的”一句话证明”(路线 1): 连续性在序列语言里就是”可以与极限交换位置”, 而复合就是连续做两次交换:
\[\lim_{n\to\infty}f(g(x_n))=f\Bigl(\lim_{n\to\infty}g(x_n)\Bigr)=f\Bigl(g\bigl(\lim_{n\to\infty}x_n\bigr)\Bigr)=f(g(c)).\]$\epsilon$-$\delta$ 路线(路线 2)的价值在于揭示”$\delta$ 的嵌套”: 外层函数的 $\delta$ 变成了内层函数的”$\epsilon$”。 这个”把一个证明的输出当作另一个证明的输入”的模式, 在分析中反复出现(例如 Lecture 17 的 Lipschitz 与一致连续、 Lecture 19 的链式法则、Lecture 24 的极限交换)。 把这个模式叫“误差传递链 (error relay)” 会很形象: 误差 $\epsilon$ 从最外层出发,被逐层翻译成越来越小的中间指标, 最后落到最内层的 $\delta$。
为什么路线 2 里 $y\in B$ 的限定必须显式写出? 因为 $f$ 只在 $B$ 上有定义, 而第 2 步的连续定义里的 $y$ 必须取自 $f$ 的定义域。 在路线 1 里这个限定由”$g$ 的值域含于 $B$”隐含地保证, 在路线 2 里如果忘记写,逻辑链上就出现了一个未经许可的代入。 这是一个常被忽略的严谨性细节。
【证明技巧总结】
- 复合连续性的最省力证法:序列刻画,两行。
- $\delta$ 嵌套顺序:由外向内(先 $f$ 的 $\delta_g$,再 $g$ 的 $\delta_f$)。
- 定义域追踪:代入外层函数前,先确认内层输出落在外层定义域内。
- “极限交换”视角:连续 $\iff$ 可与 $\lim$ 交换;复合 = 交换两次。
定理(补充,Assignment 8 第 5 题):连续性的拓扑刻画
出处说明:Assignment 8 第 5 题原文: “Let $f:\mathbb R\to\mathbb R$. Recall that if $U\subset\mathbb R$, the inverse image of $U$ is the set $f^{-1}(U):=\{x\in\mathbb R:f(x)\in U\}$. Prove that $f$ is continuous if and only if for every open set $U\subset\mathbb R$, $f^{-1}(U)$ is open.” 它的经典出处是 [JL] §3.2 的练习,以及更一般的 §7.5。 Lecture 14 源文件没有这一条,但它是本讲连续概念的”下一站”, 也是本讲最重要的补充。
定理陈述(补充)
设 $f:\mathbb R\to\mathbb R$(定义域取全空间 $\mathbb R$ 是为了让”开集”的定义直接可用; 对一般 $S\subset\mathbb R$ 需把”开”改成”在 $S$ 中的相对开”,见文末说明)。则
\[f\ \text{连续}\iff \forall U\subset\mathbb R\ \text{开},\ f^{-1}(U)\ \text{是开集}.\]其中”开”用的是 Definition D 的工作定义: $U$ 开 $\iff\forall x\in U\exists\epsilon>0,\ (x-\epsilon,x+\epsilon)\subset U$。
证明策略
关键是把两个定义”接上”:
- 连续的 $\epsilon$-$\delta$ 定义讨论的是”$\vert x-c\vert <\delta$ 蕴含 $f(x)\in(f(c)-\epsilon,f(c)+\epsilon)$”, 也就是”以 $f(c)$ 为中心的开区间“的原像包含”以 $c$ 为中心的某个开区间”。
- 拓扑定义讨论的是”任意开集 $U$ 的原像”。
于是两个方向的策略分别是:
- $(\Rightarrow)$ 连续 $\Rightarrow$ 原像开:给定开集 $U$ 与点 $c\in f^{-1}(U)$, 先用开集定义取 $\epsilon$ 使 $(f(c)-\epsilon,f(c)+\epsilon)\subset U$, 再用连续定义取 $\delta$,于是 $(c-\delta,c+\delta)\subset f^{-1}(U)$。 “连续的 $\epsilon$ 恰好是开集定义需要的 $\epsilon$”——这是全部秘密。
- $(\Leftarrow)$ 原像开 $\Rightarrow$ 连续:给定 $c$ 与 $\epsilon$, 构造开集 $U=(f(c)-\epsilon,f(c)+\epsilon)$,则 $c\in f^{-1}(U)$; 由原像开定义取出 $\delta>0$ 使 $(c-\delta,c+\delta)\subset f^{-1}(U)$, 这正是连续定义要的 $\delta$。
逐步推导($(\Rightarrow)$:连续 $\Rightarrow$ 每个开集的原像开)
- 设 $f$ 在 $\mathbb R$ 上连续,$U\subset\mathbb R$ 是开集。 (依据:定理前提。)
- 要证 $f^{-1}(U)$ 是开集,按 Definition D,只需证 \(\forall c\in f^{-1}(U)\ \exists\delta>0\ \text{s.t. } (c-\delta,c+\delta)\subset f^{-1}(U).\) (依据:开集定义的展开。)
- 取任意 $c\in f^{-1}(U)$。 (依据:$\forall$ 引入的开始。)
- 由原像定义,$f(c)\in U$。 (依据:$f^{-1}(U):=\{x:f(x)\in U\}$。)
- 由 $U$ 是开集与 Definition D(对点 $f(c)\in U$ 实例化), \(\exists\epsilon>0\ \text{s.t. } \bigl(f(c)-\epsilon,f(c)+\epsilon\bigr)\subset U .\) (依据:开集定义 + $\exists$ 实例化。)
- 对第 5 步得到的 $\epsilon>0$,由 $f$ 在 $c$ 连续(Definition 167), \(\exists\delta>0\ \text{s.t. }\ \forall x\in\mathbb R,\ \|x-c\|<\delta\Rightarrow\|f(x)-f(c)\|<\epsilon .\) (依据:Definition 167 + $\exists$ 实例化。 注意:这里正好用第 5 步的 $\epsilon$ 作为连续定义中的误差上界, 这一步是”两个定义的桥梁”。)
- 断言 $(c-\delta,c+\delta)\subset f^{-1}(U)$。 (依据:要证的目标。)
- 证明第 7 步:取任意 $x\in(c-\delta,c+\delta)$。 (依据:集合包含的定义。)
- 则 $\vert x-c\vert <\delta$(由第 8 步)。 (依据:$c-\delta<x<c+\delta\iff\vert x-c\vert <\delta$。)
- 由第 6 步的蕴含,$\vert f(x)-f(c)\vert <\epsilon$,即 $f(c)-\epsilon<f(x)<f(c)+\epsilon$。 (依据:蕴含消去 + $\vert a\vert <\epsilon\iff-\epsilon<a<\epsilon$,Lecture 5 Theorem 50(5)。)
- 由第 5 步的包含关系 $(f(c)-\epsilon,f(c)+\epsilon)\subset U$,得 $f(x)\in U$。 (依据:包含关系 + 第 10 步。)
- 由原像定义,$x\in f^{-1}(U)$。 (依据:$f(x)\in U$。)
- 由第 8 步 $x$ 任意,$(c-\delta,c+\delta)\subset f^{-1}(U)$ ✓。 (依据:$\forall$ 引入。)
- 由第 3 步 $c$ 任意、第 6 步给了 $\delta>0$,得”$\forall c\in f^{-1}(U)\exists\delta>0$, 以 $c$ 为中心半径 $\delta$ 的开区间含于 $f^{-1}(U)$”,即 $f^{-1}(U)$ 开。$\blacksquare$ (依据:Definition D。)
逐步推导($(\Leftarrow)$:每个开集的原像开 $\Rightarrow$ 连续)
- 设 $\forall U\subset\mathbb R$ 开,$f^{-1}(U)$ 开。 (依据:定理前提。)
- 要证 $f$ 连续,按 Definition 167,只需证 \(\forall c\in\mathbb R\ \forall\epsilon>0\ \exists\delta>0\ \text{s.t. }\ \|x-c\|<\delta\Rightarrow\|f(x)-f(c)\|<\epsilon .\) (依据:连续性定义的展开。注意 $\mathbb R$ 上每点都是聚点,故这是全部要求。)
- 取任意 $c\in\mathbb R$ 与任意 $\epsilon>0$。 (依据:两次 $\forall$ 引入。)
- 构造开集 $U:=\bigl(f(c)-\epsilon,\ f(c)+\epsilon\bigr)$。 (依据:构造。)
- 断言 $U$ 是开集。 (依据:要证。)
- 证明第 5 步:取任意 $y\in U$,即 $f(c)-\epsilon<y<f(c)+\epsilon$。 令 $\eta:=\min\{y-(f(c)-\epsilon),\ (f(c)+\epsilon)-y\}$。 两个量都是正数(由 $y$ 严格位于区间内部),故 $\eta>0$。 若 $\vert z-y\vert <\eta$,则 $z>y-\eta\ge y-(y-(f(c)-\epsilon))=f(c)-\epsilon$ 且 $z<y+\eta\le y+((f(c)+\epsilon)-y)=f(c)+\epsilon$,即 $z\in U$。 故 $(y-\eta,y+\eta)\subset U$,$U$ 开。$\square$ (依据:Definition D。这一步是”开区间是开集”的具体证明, 对应 Assignment 3 第 5(a) 题。)
- 由第 1 步(对 $U$ 实例化)与第 5 步,$f^{-1}(U)$ 是开集。 (依据:$\forall U$ 实例化 + 蕴含消去。)
- 又 $f(c)\in U$(因为 $\vert f(c)-f(c)\vert =0<\epsilon$),故 $c\in f^{-1}(U)$。 (依据:原像定义。)
- 由 $f^{-1}(U)$ 是开集与 Definition D(对点 $c\in f^{-1}(U)$ 实例化), \(\exists\delta>0\ \text{s.t. } (c-\delta,c+\delta)\subset f^{-1}(U).\) (依据:开集定义 + $\exists$ 实例化。这个 $\delta$ 就是连续定义要的 $\delta$。)
- 断言 $\delta$ 有效:设 $x\in\mathbb R$ 且 $\vert x-c\vert <\delta$。 (依据:目标蕴含的前提。)
- 则 $x\in(c-\delta,c+\delta)\subset f^{-1}(U)$,故 $f(x)\in U$。 (依据:第 9 步 + 原像定义。)
- 由 $U$ 的定义,$f(c)-\epsilon<f(x)<f(c)+\epsilon$,即 $\vert f(x)-f(c)\vert <\epsilon$。 (依据:第 4 步 + Lecture 5 Theorem 50(5)。)
- 由第 10 步的 $x$ 任意、第 3 步的 $c$ 与 $\epsilon$ 任意, $f$ 在 $\mathbb R$ 上连续。$\blacksquare$ (依据:Definition 167。)
具体示例(把 $\epsilon,\delta$ 落成数字)
取 $f(x)=x^2$,$U=(1,4)$。$f^{-1}(U)=(-2,-1)\cup(1,2)$。
- 取 $c=1.5\in f^{-1}(U)$,则 $f(c)=2.25\in U=(1,4)$。 $U$ 给出的最大 $\epsilon$ 是 $\min\{2.25-1,4-2.25\}=\min\{1.25,1.75\}=1.25$。 取 $\epsilon=1$(安全)。 由 $f(x)=x^2$ 在 $c=1.5$ 连续:$\vert x^2-2.25\vert =\vert x-1.5\vert \vert x+1.5\vert $, 对 $\vert x-1.5\vert <1$ 有 $\vert x+1.5\vert <4$,故取 $\delta=\min\{1,\frac14\}=0.25$。 验算 $x=1.7$:$\vert x-1.5\vert =0.2<0.25$,$\vert x^2-2.25\vert =2.89-2.25=0.64<1$ ✓, 且 $f(x)=2.89\in(1,4)$ ✓(Python 核对)。 同时 $1.7\in(1.5-0.25,1.5+0.25)=(1.25,1.75)\subset(1,2)\subset f^{-1}(U)$ ✓。
- 取 $c=-1.5$(在负半支):$f(c)=2.25$,同法得 $\delta=0.25$, 窗口 $(-1.75,-1.25)\subset(-2,-1)\subset f^{-1}(U)$ ✓。
反例(不连续函数会把某个开集的原像弄成非开集)
取阶梯函数
\[f(x)=\begin{cases}1,&x\geq0\\ 0,&x<0\end{cases}\]取开集 $U=(0.5,1.5)$。则 $f^{-1}(U)=\{x:f(x)\in(0.5,1.5)\}=\{x:f(x)=1\}=[0,\infty)$。 $[0,\infty)$ 不是开集:点 $0\in[0,\infty)$,但任何 $\epsilon>0$ 给出的 $(-\epsilon,\epsilon)$ 都含负点,其 $f$ 值为 $0\notin U$。 故 $f^{-1}(U)\not\subset$……准确地说 $(-\epsilon,\epsilon)\not\subset f^{-1}(U)$, $0$ 没有呼吸空间。这从拓扑角度再次确认了阶梯函数在 $0$ 处不连续, 与 Theorem 166 的左右极限分析($0\neq1$)完全一致。 两种语言给出同一结论,这是极好的交叉验证。
再一个反例(可去间断的拓扑见证)
$f(x)=1\ (x\neq0)$,$f(0)=2$。取 $U=(0.5,1.5)$ 开。 $f^{-1}(U)=\{x\neq0\}\cup\varnothing=\mathbb R\setminus\{0\}$。 $\mathbb R\setminus\{0\}$ 不是开集($0$ 不在里面,但……更准确地说: $0\notin f^{-1}(U)$,而 $f^{-1}(U)$ 的补集是 $\{0\}$, 问题在于 $f^{-1}(U)$ 中任一点确实都有呼吸空间,所以 $\mathbb R\setminus\{0\}$ 却是开集?—— 不,$\mathbb R\setminus\{0\}=(-\infty,0)\cup(0,\infty)$,它是开集! 所以这个 $U$ 没有暴露不连续。)换一个 $U$:取 $U=(1.5,2.5)$ 开。 则 $f^{-1}(U)=\{x:f(x)=2\}=\{0\}$,而 $\{0\}$ 不是开集($0$ 的任意邻域都含 $\neq0$ 的点, 其 $f$ 值为 $1\notin U$)。 所以 $\{0\}$ 这个单点集的原像非开,正是可去间断的拓扑指纹。 这个例子很有教学价值:它说明必须”对所有开集”检查,只试一个 $U$ 可能漏掉。
【证明机制解说】
这条定理的”灵光一现”是看穿了两个定义共用同一个 $\epsilon$:
连续性的定义: ∀ε ∃δ : |x-c|<δ ⇒ f(x) ∈ (f(c)-ε, f(c)+ε)
└──────────┬──────────┘
开集的定义: U 开 ⟺ ∀y∈U ∃ε : (y-ε, y+ε) ⊂ U
└─────┬─────┘
当 y = f(c) 时,两者是同一个 ε!
也就是说:连续性说的是”以 $f(c)$ 为中心的小开区间的原像包含以 $c$ 为中心的小开区间“, 而拓扑定义说的是”任意开集的原像开”。 从一个(中心化的)推广到另一个(任意的)靠的是开集的定义: 任意开集在每个点附近都含有一个以该点为中心的开区间, 所以”中心化版本”逐点成立就能拼出”任意版本”。
反过来,从”任意”到”中心化”更简单:直接把以 $f(c)$ 为中心的开区间当作那个”任意开集”。 这就是数学中常见的”最强形式 = 对最一般的对象成立“的思维方式。
【证明机制的进一步解说:为什么这个刻画重要?】
- 它不依赖度量。整个命题里只出现”开集”这个概念, 而开集可以用”拓扑”(一族满足并、有限交封闭且含空集与全集的集合)来公理化定义, 不需要距离、不需要 $\epsilon$。因此这个定理成为连续映射在一般拓扑空间中的定义。 历史上,正是这一观察把”连续”从 $\mathbb R$ 的专属概念变成了拓扑学的核心概念。
- 它把”点态性质”变成”整体性质”。$\epsilon$-$\delta$ 是逐点的(每个 $c$ 一个 $\delta$), 而拓扑刻画是整体的一句话说清楚。这使得很多定理的陈述与证明变短 (例如”连续函数的复合连续”在拓扑语言里是”原像的原像还是原像”, 一行写完:$(f\circ g)^{-1}(U)=g^{-1}(f^{-1}(U))$,两个开集的原像还是开集)。
- 它是后续课程的接口。将来学度量空间、拓扑空间、泛函分析, 连续性的定义就是这条。Rudin、Munkres 等教材都从这里出发。
- 它给出了判断不连续的新工具:找一个开集 $U$ 使 $f^{-1}(U)$ 非开。 我们在上文的两个反例中都用了这个工具,效果非常好。
关于定义域的一般情形(严谨性补充):如果 $f$ 的定义域是 $S\subsetneq\mathbb R$ (本课程中常见),那么上述定理要改成”相对开 (relatively open)“版本: $f:S\to\mathbb R$ 连续 $\iff$ 对每个开集 $U\subset\mathbb R$, $f^{-1}(U)$ 是在 $S$ 中相对开的,即 $\forall c\in f^{-1}(U)\exists\delta>0,\ (c-\delta,c+\delta)\cap S\subset f^{-1}(U)$。 证明与上文逐字相同,只是把 $(c-\delta,c+\delta)$ 全部换成 $(c-\delta,c+\delta)\cap S$ (因为连续定义里的 $x$ 本来就限定在 $S$ 内,第 6 步给出的条件也是关于 $x\in S$ 的)。 Assignment 8 第 5 题把定义域取成 $\mathbb R$,正是为了避开这个技术细节。
【证明技巧总结】
- 两个方向各有”桥梁”:$(\Rightarrow)$ 用开集定义产出 $\epsilon$ 喂给连续性; $(\Leftarrow)$ 用连续性的 $\epsilon$ 造出开集 $U$。
- “逐点中心化 ⟺ 整体任意化”:这是开集定义的标准操作模式。
- “可去间断”的拓扑指纹:单点集的原像非开; “跳跃间断”的拓扑指纹:左闭半轴型集合的原像非开(如 $[0,\infty)$)。
- 检验不连续要”对所有开集”:只试一个 $U$ 可能漏判(见上文反例)。
定理(补充,Assignment 8 第 2 题):$\mathbb Q$ 上取 $0$、无理数上取 $2x$
出处说明:Assignment 8 第 2 题原文: “Let $f(x)=0$ if $x\in\mathbb Q$, $f(x)=2x$ if $x\notin\mathbb Q$. Prove that $f$ is continuous at $x=0$ and discontinuous at $x=1$.” 它精确对应 [JL] Example 3.2.6 / Exercise 3.2.6 这一类”稠密拼接”函数。 源文件 Lecture 14 没有这个例子,但它是本讲连续性定义的绝佳练习题, 也是”用 $\epsilon$-$\delta$ 做完整计算”的样板。
定理陈述(补充)
设
\[f(x)=\begin{cases}0,&x\in\mathbb Q,\\ 2x,&x\notin\mathbb Q.\end{cases}\]则 $f$ 在 $x=0$ 处连续,在 $x=1$ 处不连续。
证明策略
- 在 $0$ 处:注意 $f(0)=0$($0\in\mathbb Q$)。关键的统一估计是 \(\|f(x)-f(0)\|=\|f(x)\|\le 2\|x\|\qquad\text{对一切}\ x\in\mathbb R ,\) 因为无论 $x$ 是有理数($\vert f(x)\vert =0$)还是无理数($\vert f(x)\vert =\vert 2x\vert =2\vert x\vert $), 这个上界都成立。取 $\delta=\epsilon/2$ 即可。 这个”分情形但取最坏上界”的技巧是本题的核心。
- 在 $1$ 处:$f(1)=0$($1\in\mathbb Q$)。取 $\epsilon_0=1$。 对任意 $\delta>0$,在 $(1-\delta,1+\delta)$ 里找一个无理数 $x$, 则 $f(x)=2x\approx2$,而 $f(1)=0$,误差约 $2$,远超 $\epsilon_0$。 需要用到 $\mathbb Q$ 与 $\mathbb R\setminus\mathbb Q$ 在 $\mathbb R$ 中都稠密 (Assignment 3 第 1 题:任意 $x<y$ 之间存在无理数)。
逐步推导(在 $0$ 处连续)
- 注意 $0\in\mathbb Q$,故 $f(0)=0$。 (依据:$f$ 的定义中 $x\in\mathbb Q$ 的分支。)
- 断言:$\forall x\in\mathbb R,\ \vert f(x)\vert \le2\vert x\vert $。 (依据:要证的分情形断言。)
- 证明第 2 步:任取 $x\in\mathbb R$。二分:
- 情形 $x\in\mathbb Q$:$f(x)=0$,故 $\vert f(x)\vert =0\le2\vert x\vert $ ✓(因为 $\vert x\vert \ge0$)。
- 情形 $x\notin\mathbb Q$:$f(x)=2x$,故 $\vert f(x)\vert =\vert 2x\vert =2\vert x\vert $ ✓(取等号)。 (依据:$f$ 的分段定义 + 绝对值的乘法性质。)
- 给定任意 $\epsilon>0$,令 $\delta:=\dfrac{\epsilon}{2}>0$。 (依据:构造。因为 $\epsilon>0$,所以 $\delta>0$ 合法。)
- 设 $x\in\mathbb R$ 且 $\vert x-0\vert <\delta$,即 $\vert x\vert <\epsilon/2$。 (依据:连续定义的前提。)
- 则由第 2 步与第 5 步, \(\|f(x)-f(0)\|=\|f(x)\|\le2\|x\|<2\cdot\frac{\epsilon}{2}=\epsilon .\) (依据:第 2 步的估计 + 第 5 步 + 代数。)
- 由 $\epsilon>0$ 任意,$f$ 在 $0$ 处连续。$\blacksquare$ (依据:Definition 167。)
验算(把 $\epsilon$ 落成数字)
取 $\epsilon=0.01$,则 $\delta=0.005$。
- 取有理点 $x=0.0048$:$\vert x\vert =0.0048<0.005$,$f(x)=0$,$\vert f(x)-f(0)\vert =0<0.01$ ✓。
- 取无理点 $x=0.0049\sqrt2$ 的近似值 $x=0.006929\ldots$——这个超出了窗口,换用 $x=0.001\sqrt2\approx0.0014142$:$\vert x\vert =0.0014142<0.005$, $f(x)=2x=0.0028284$,$\vert f(x)-f(0)\vert =0.0028284<0.01$ ✓。
- Python 核对:$x=0.004$ 时 $\vert f(x)\vert =0.008<0.01$ ✓; $x=0.0049$ 时 $\vert f(x)\vert =0.0098<0.01$ ✓(对无理点取此值)。 极端情形 $x\to0.005$ 时误差 $0.01$ 恰好触界,说明 $\delta=\epsilon/2$ 是紧的。
逐步推导(在 $1$ 处不连续)
- 注意 $1\in\mathbb Q$,故 $f(1)=0$。 (依据:$f$ 的分段定义。)
- 令 $\epsilon_0:=1>0$。 (依据:Negation 170 要求选出 $\epsilon_0$。)
- 任取 $\delta>0$。 (依据:Negation 170 的 $\forall\delta>0$。)
- 我们需要在 $(1-\delta,1+\delta)$ 中找一个无理数。由 $\mathbb Q$ 与 $\mathbb R\setminus\mathbb Q$ 的稠密性(Assignment 3 第 1 题:$\forall x<y\ \exists i\in\mathbb R\setminus\mathbb Q,\ x<i<y$), 取 $x=1,\ y=1+\delta$,得无理数 $i$ 使 $1<i<1+\delta$。 (依据:Assignment 3 第 1 题;也可用更一般的”任意非退化区间含无理点”。)
- 记这个 $i$ 为 $x$。则 $\vert x-1\vert =i-1\in(0,\delta)$,故 $\vert x-1\vert <\delta$ ✓。 (依据:第 4 步的 $1<i<1+\delta$。)
- 且 $x\notin\mathbb Q$,故 $f(x)=2x$。 (依据:$f$ 的分段定义。)
- 于是 \(\|f(x)-f(1)\|=\|2x-0\|=2x>2\cdot1=2\ \ge\ 1=\epsilon_0 .\) (依据:$x>1$ + $\vert f(1)\vert =0$ + 代数。)
- 由第 3 步 $\delta>0$ 任意,我们已证明 \(\exists\epsilon_0=1>0\ \text{s.t. }\forall\delta>0\ \exists x\in\mathbb R:\ \|x-1\|<\delta\ \text{且}\ \|f(x)-f(1)\|\ge\epsilon_0 ,\) 这正是 Negation 170 的形式,故 $f$ 在 $1$ 处不连续。$\blacksquare$ (依据:Negation 170。)
验算(把 $\epsilon_0$ 与 $\delta$ 落成数字)
- 取 $\delta=0.1$:无理数 $x=1+\frac{0.1}{\sqrt2}\approx1.0707107$ 落在 $(1,1.1)$ 内, $\vert x-1\vert =0.0707<0.1$ ✓,而 $\vert f(x)-f(1)\vert =\vert 2(1.0707107)-0\vert =2.1414\ge1$ ✓(Python 核对)。
- 取 $\delta=0.001$:无理数 $x=1+0.001/\sqrt2\approx1.0007071$, $\vert f(x)-f(1)\vert =2.0014142\ge1$ ✓(Python 核对:$0.0014142$ 与 $2.0014$)。
- 注意:$\epsilon_0=1$ 也可以用 $\epsilon_0=2$(当 $\delta$ 足够小时 $2x>2$) 或 $\epsilon_0=0.5$(更容易满足)。选 $\epsilon_0=1$ 是最稳的, 因为 $2x\ge2$ 只要 $x\ge1$,与 $\delta$ 无关。
一个更强的观察(补充)
同样的论证可以证明:$f$ 在每一个 $x_0\neq0$ 处都不连续, 且只在 $x=0$ 处连续。 (对 $x_0\neq0$:若 $x_0\in\mathbb Q$ 则 $f(x_0)=0$,取无理点列逼近得误差 $\approx2\vert x_0\vert >0$; 若 $x_0\notin\mathbb Q$ 则 $f(x_0)=2x_0\neq0$,取有理点列逼近得误差 $\approx\vert 2x_0\vert >0$。 关键是 $x_0\neq0$ 时两个分支的值 $0$ 与 $2x_0$ 不相等。) 而在 $x=0$ 处两支的值 $0=2\cdot0$ 恰好相等,这就是连续性的几何含义: “两个稠密分支在这一点上汇合”。这与 Lecture 15 的 Dirichlet 函数 ($\mathbb Q$ 上 $1$、无理数上 $0$,处处不连续)形成了鲜明对照: Dirichlet 函数没有任何一点让两支汇合。
反例对照表
| 函数 | 有理点取值 | 无理点取值 | 两支相等的点 | 连续点集 |
|---|---|---|---|---|
| Dirichlet 函数(Lecture 15 Thm 178) | $1$ | $0$ | 无 | $\varnothing$ |
| Assignment 8 第 2 题 | $0$ | $2x$ | 仅 $x=0$ | $\{0\}$(补充结论) |
| $f\equiv$ 常数 | $c$ | $c$ | 全部点 | $\mathbb R$ |
关于 [JL] Exercise 3.2.11(Assignment 8 第 3 题)的联系(补充)
Assignment 8 第 3 题是 [JL] Exercise 3.2.11:“Let $f:\mathbb R\to\mathbb R$ be continuous. Suppose $f(c)>0$. Show that there exists an $\alpha>0$ such that for all $x\in(c-\alpha,c+\alpha)$, we have $f(x)>0$.” 它是”连续函数保持符号”的命题,证明只需在定义中取 $\epsilon_0=\frac{f(c)}{2}$: 由连续性取 $\delta>0$ 使 $\vert x-c\vert <\delta\Rightarrow\vert f(x)-f(c)\vert <\frac{f(c)}{2}$, 于是 $f(x)>f(c)-\frac{f(c)}{2}=\frac{f(c)}{2}>0$。 取 $\alpha=\delta$ 即得。 注意这里必须取 $\frac{f(c)}{2}$ 而不是 $f(c)$: 取 $f(c)$ 只能得到 $f(x)>0$ 的非严格版本在极限意义下成立, 取一半才能得到严格不等式(这正是 [JL] 在 §3.2 强调”通常预留 $\epsilon=\frac{f(c)}2$”的原因)。 数值验算:若 $f(c)=3$,取 $\epsilon=1.5$,则 $f(x)>3-1.5=1.5>0$ ✓(Python 核对)。
关于 [JL] Exercise 3.2.14(Assignment 8 第 4 题)的联系(补充)
Assignment 8 第 4 题是 [JL] Exercise 3.2.14:“Suppose $f:[-1,0]\to\mathbb R$ and $g:[0,1]\to\mathbb R$ are continuous and $f(0)=g(0)$. Define $h:[-1,1]\to\mathbb R$ by $h(x):=f(x)$ if $x<0$ and $h(x):=g(x)$ if $x>0$. Show that $h$ is continuous.” (注意题目中区间写作 $[-1,0]$ 与 $[0,1]$;$h$ 在 $0$ 处的值由 $f(0)=g(0)$ 单值确定。) 这是”拼接函数“的标准题,其证明骨架与本讲的一切都相关:
- 对 $c\in(-1,0)$:$h$ 在 $c$ 附近与 $f$ 相同,由 $f$ 连续(并注意 $h(x)=f(x)$ 对 $\vert x-c\vert $ 足够小的一切 $x$ 成立),得 $h$ 连续。 严格做法:取 $\delta_0=\frac{\vert c\vert }{2}>0$,则 $\vert x-c\vert <\delta_0\Rightarrow x<0$, 于是 $h(x)=f(x)$,从而 $\vert h(x)-h(c)\vert =\vert f(x)-f(c)\vert <\epsilon$。
- 对 $c\in(0,1]$:同理,用 $g$ 的连续性。
- 对 $c=0$(关键点):给定 $\epsilon>0$。
- 由 $f$ 在 $0$ 处右连续($f$ 定义在 $[-1,0]$ 上,”在 $0$ 连续”意味着 从左边逼近)取 $\delta_1>0$ 使 $-1\le x<0,\ \vert x\vert <\delta_1\Rightarrow\vert f(x)-f(0)\vert <\epsilon$;
- 由 $g$ 在 $0$ 处右连续取 $\delta_2>0$ 使 $0\le x\le1,\ \vert x\vert <\delta_2\Rightarrow\vert g(x)-g(0)\vert <\epsilon$;
- 取 $\delta=\min\{\delta_1,\delta_2\}>0$(又一次 $\min$ 技巧!)。
- 若 $\vert x\vert <\delta$ 且 $x<0$,则 $h(x)=f(x)$、$h(0)=f(0)$,故 $\vert h(x)-h(0)\vert =\vert f(x)-f(0)\vert <\epsilon$;
- 若 $x>0$,则 $h(x)=g(x)$、$h(0)=g(0)$,故 $\vert h(x)-h(0)\vert =\vert g(x)-g(0)\vert <\epsilon$;
- 若 $x=0$,误差为 $0<\epsilon$。 三种情形都成立,$h$ 在 $0$ 连续。
- 综合,$h$ 在 $[-1,1]$ 上连续。$\blacksquare$
这道题与本讲 Theorem 166 的关系:$h$ 在 $0$ 处连续的本质是 “左极限 = 右极限 = 函数值“,即 $\lim_{x\to0^-}h=f(0)$、$\lim_{x\to0^+}h=g(0)$, 而 $f(0)=g(0)$。证明中用的正是 Theorem 166 的 $\Leftarrow$ 方向的 $\min$ 技巧, 只不过这里没有用”单侧极限”的语言,而是直接分情形讨论。 建议读者把两种写法都练一遍,体会它们说的是同一件事。
—#### 与教材的对应
对应 [JL] §3.1(Limits of functions)
| [JL] 编号 | 内容 | 本讲对应 |
|---|---|---|
| Definition 3.1.1 | 聚点 (cluster point) | Lecture 13 Definition 148(源文件) |
| Proposition 3.1.2 | 聚点 $\iff$ 存在 $S\setminus\{x\}$ 中序列 $x_n\to x$ | Lecture 13 Theorem 149 |
| Definition 3.1.3 | 函数极限的 $\epsilon$-$\delta$ 定义 | Lecture 13 Definition 150 |
| Proposition 3.1.4 | 极限唯一性 | Lecture 13 Theorem 152 |
| Example 3.1.5 | $\lim_{x\to c}x^2=c^2$ | Lecture 14 Theorem 158(用序列刻画) |
| Lemma 3.1.7 | 函数极限的序列刻画(iff) | Lecture 13 Theorem 157;Lecture 14 用它 |
| Proposition 3.1.9 | 极限与序关系 | Lecture 14 Theorem 160 |
| Corollary 3.1.10 | 夹逼定理的函数版 | 源文件提及”analogs of the Squeeze Theorem”;本笔记 J5 |
| Corollary 3.1.11 | 夹逼($f\le g\le h$ 版本) | 同上 |
| Corollary 3.1.12 | 极限的代数运算(和、积、商、绝对值) | 源文件提及”limits of algebraic operations”;本笔记 J1–J3 |
| Corollary 3.1.13 | $\lim\vert f\vert =\vert \lim f\vert $ | 源文件提及”limits of absolute values”;本笔记 J4 |
| Proposition 3.1.15 | 单侧极限与双侧极限的关系 | Lecture 14 Theorem 166 |
§3.1 的核心命题:序列刻画(Lemma 3.1.7)是这一节的枢纽, 它把 §3.1 后半部分的所有推论都变成序列定理的免费搬运(源文件原句: “You may read the end of Section 3.1.3 [L] for this.”)。
对应 [JL] §3.2(Continuous functions)
| [JL] 编号 | 内容 | 本讲对应 |
|---|---|---|
| Definition 3.2.1 | 连续的定义 | Lecture 14 Definition 167(源文件,逐字一致) |
| Proposition 3.2.2 | 连续性的三条等价刻画(孤立点、极限=函数值、序列刻画) | Lecture 15 Theorem 171;本笔记前置完整证明 |
| Example 3.2.3 | $f(x)=1/x$ 在 $(0,\infty)$ 连续 | 本笔记”多项式与有理函数”一节 |
| Example 3.2.6 / Exercise 3.2.6 | $\mathbb Q$ 上 $0$、无理数上 $2x$ | Assignment 8 第 2 题;本笔记完整证明 |
| Proposition 3.2.5 | 连续函数的代数运算 | Lecture 15 Theorem 174;本笔记完整证明 |
| Theorem 3.2.6 | 多项式连续 | Lecture 15 Theorem 173;本笔记完整证明 |
| Theorem 3.2.7 | 复合函数连续 | Lecture 15 Theorem 175;本笔记完整证明 |
| §3.2.3 Discontinuous functions | $\varepsilon$-$\delta$ 的否定形式 | Lecture 14 Negation 170 |
| Example 3.2.13 可去间断 (removable discontinuity) | $\frac{x^2-1}{x-1}$ 型 | 本笔记”有理函数”反例 |
| [JL] §7.5.3 Continuity and topology | 连续 $\iff$ 开集原像开 | Assignment 8 第 5 题;本笔记完整证明 |
对应 OCW Assignment 8(Reading Sections 3.1, 3.2)
原始题目(hw_all.txt 中 hw/hw8.pdf 段落)与本讲的对应关系:
- Exercise 3.1.3 —— 证明 [JL] Corollary 3.1.11(即本笔记的 J5,夹逼定理的函数版)。 练什么:把序列夹逼定理通过序列刻画搬运到函数极限, 体会”函数极限定理不需要重证”这一结构复用思想。 (考据说明:[JL] 第 3 版把 Exercise 3.1.3 定为”Prove Corollary 3.1.11”; 本题正是源文件那句 “Similarly, we have analogs of the Squeeze Theorem…” 的具体化。)
- $\mathbb Q$ 上 $f(x)=0$、无理数上 $f(x)=2x$,证在 $0$ 连续、在 $1$ 不连续 —— 练什么:用 $\epsilon$-$\delta$ 定义做完整的连续/不连续证明, 特别是”稠密分支取最坏上界”与”找一条坏序列/坏点”两种技术。 对应 [JL] Example 3.2.6 与 Exercise 3.2.6 类问题。本笔记 Part 3 给了完整证明。
- Exercise 3.2.11 —— $f$ 连续、$f(c)>0$,证 $\exists\alpha>0$ 使 $(c-\alpha,c+\alpha)$ 上 $f>0$。 练什么:连续函数的局部保号性,关键技巧是取 $\epsilon=f(c)/2$(预留余量)。 本笔记给出了含数值验算的完整证明。
- Exercise 3.2.14 —— $f:[-1,0]\to\mathbb R$、$g:[0,1]\to\mathbb R$ 连续且 $f(0)=g(0)$, 定义 $h(x)=f(x)\ (x<0)$、$h(x)=g(x)\ (x>0)$,证 $h$ 连续。 练什么:分段拼接函数的连续性,核心是接点处用 $\delta=\min\{\delta_1,\delta_2\}$ 合并左右两侧的窗口(与 Theorem 166 的 $\Leftarrow$ 方向同构)。 本笔记给出了完整三种情形的证明。
- 连续 $\iff$ 每个开集的原像开 —— 练什么:连续性的拓扑刻画,需要同时用到 ① $U$ 开 $\iff$ 每点带 $\epsilon$-邻域(Midterm 第 2 题 / Assignment 3 第 5 题的工作定义); ② 连续的 $\epsilon$-$\delta$ 定义; ③ 原像与包含关系的操作。 这是本讲最”高级”的一题,也是把连续性推广到一般拓扑空间的原型。本笔记完整证明。
对应 Midterm 第 2 题
Midterm 第 2 题原文(hw_all.txt):
A subset of real numbers $U\subset\mathbb R$ is open if for all $x\in U$, there exists $\epsilon>0$ such that $(x-\epsilon,x+\epsilon)\subset U$. A subset $F\subset\mathbb R$ is closed if $F^c$ is open. (a) State what it means to say $U$ is not open. (b) Prove that if $U$ is not open, then there exists $x\in U$ and a sequence $\{x_n\}_n$ of elements of $U^c$ such that $\lim_n x_n=x$. (c) Suppose $F\subset\mathbb R$ has the following property: for every convergent sequence $\{x_n\}_n$ of elements of $F$ we have $\lim_n x_n\in F$. Prove that $F$ is closed. Hint: Argue by contradiction using (b).
与本讲的联系(三条,都很实质):
- 第 (a) 问是量词否定的练习,与源文件 Negation 170 完全同型的技巧: 把 $\forall x\exists\epsilon(\dots)$ 否定成 $\exists x\forall\epsilon(\dots)$。 标准答案: \(U\ \text{不是开集}\iff\exists x\in U\ \text{s.t. }\forall\epsilon>0,\ (x-\epsilon,x+\epsilon)\not\subset U .\) 而 $(x-\epsilon,x+\epsilon)\not\subset U$ 等价于 $\exists y\notin U$ 使 $\vert y-x\vert <\epsilon$。
- 第 (b) 问是”用序列刻画把聚点/开集性质翻译出来”的练习, 证明思路与本讲 Theorem 171 第 3 条 $(\Leftarrow)$ 方向用过的 “取 $\epsilon=\frac1n$ 抽出序列“技巧一模一样: 由 (a) 的结论,$\forall n\exists x_n\in U^c$ 使 $\vert x_n-x\vert <\frac1n$, 再由夹逼得 $x_n\to x$。 (顺带可得:$x$ 是 $U^c$ 的聚点,这正是”$U$ 开 $\iff$ $U^c$ 无自身聚点”的另一说法。)
- 第 (c) 问用 (b) 反证:若 $F$ 不闭,则 $F^c$ 不开,由 (b) 存在 $x\in F^c$ 与 $F$ 中序列 $x_n\to x$(注意 $F=(F^c)^c$,所以 $U^c=F$), 于是 $F$ 中序列收敛到 $F$ 外一点,与题设矛盾。 这道题说明”序列刻画”不仅能刻画极限与连续,还能刻画拓扑性质(闭性)。
对应 Final 第 2 题
Final 第 2 题原文(hw_all.txt):
- (a) Give explicit examples satisfying the stated conditions. … (b) (5 points) Let $f:S\to\mathbb R$ and $g:S\to\mathbb R$ be functions continuous at $c\in S$. Prove that the product $fg:S\to\mathbb R$ is continuous at $c$.
- 第 (b) 问就是本笔记 Part 3 的”连续函数的代数运算“第 2 项, 完整证明已在上面给出。答题要点: ① 分聚点/孤立点两种情形(或引用 [JL] Proposition 3.2.2 处理孤立点); ② 聚点情形把连续翻译成 $\lim f=f(c)$、$\lim g=g(c)$; ③ 用极限的乘法法则(Lecture 8 Theorem 89(3),其证明依赖”收敛序列有界”); ④ 翻译回连续。 不要用 $\epsilon$-$\delta$ 硬做——那样需要”局部有界”的额外准备,冗长且易错。
- 第 1 题 (i)(Complete the negations:$f$ 在 $c$ 不连续)正是 Negation 170。 标准写法:$\exists\epsilon_0>0$ 使 $\forall\delta>0\ \exists x\in S$, $\vert x-c\vert <\delta$ 且 $\vert f(x)-f(c)\vert \ge\epsilon_0$。
- 第 4 题 (a)(i)(可导 $\Rightarrow$ 连续)在 Lecture 17/19 讲, 但它用的正是本讲的连续定义与极限运算法则。
与教材的对应
- 对应 [JL] §3.1(Limits of functions)、§3.2(Continuous functions)。本讲把 Lecture 13 的 序列刻画彻底吃透,并第一次给出连续性的完整理论(左右极限、连续性三等价、拓扑刻画)。
- Assignment 8(Reading §3.1, 3.2):Exercise 3.1.3 用序列刻画验证函数极限; 第 2 题 $f(x)=0$($x\in\mathbb Q$)、$f(x)=2x$($x\notin\mathbb Q$),证 $f$ 在 $0$ 连续、 在 $1$ 不连续——练”用两个序列(有理/无理各取一列)判定连续性”,本题完整解答见上文 「$\mathbb Q$ 上取 $0$、无理数上取 $2x$」一节。
- Assignment 9 第 5 题:$\cos x$ 是 Lipschitz 的、$x^{1/3}$ 在 $[0,1]$ 上一致连续但非 Lipschitz——练”一致连续与 Lipschitz 的严格强弱关系”(本讲只用到连续性,一致连续见 Lecture 17)。
- Midterm 第 1 题:Complete the negations($f$ 在 $c$ 不连续)——正是 Negation 170; Midterm 第 2、3 题用序列刻画处理具体极限,Midterm 第 4 题练 $\epsilon$-$\delta$ 与 序列刻画的互译。
- Final 第 2 题:(a) 举出满足指定条件的显式例子;(b) 证两个在 $c$ 连续的函数之积在 $c$ 连续——解答要点见上文(分聚点/孤立点两情形 + Lecture 8 Theorem 89(3))。
- Final 第 1 题 (i):写出”$f$ 在 $c$ 不连续”的完整否定式(= Negation 170)。
与其他讲次的关联
- 依赖 Lecture 13(Limits of Functions)——本讲的”发动机”: Lecture 13 Theorem 157(函数极限的序列刻画,iff)是本讲 Theorem 158、159 第 2 项、 160、以及全部 J1–J5 的唯一工具; Lecture 13 Definition 150($\epsilon$-$\delta$ 极限定义)是本讲 Theorem 166 与 Theorem 171 第 2 条里 $(\Leftarrow)$/$(\Rightarrow)$ 对照的基准; Lecture 13 Definition 148(聚点)决定了单侧极限与连续性中”孤立点自动连续”的讨论方式。 没有 Lecture 13 的序列刻画,本讲的所有”计算型”证明都要重写。
- 依赖 Lecture 8(Squeeze Theorem and Operations)——本讲的”零件库”: Theorem 82(夹逼)、Theorem 84($x_n\to x\iff\vert x_n-x\vert \to0$)、 Theorem 87(1)(保序性)、Theorem 89(1)(3)(4)(和、积、商)、 Theorem 91($\sqrt{\cdot}$ 与极限交换)、Theorem 93($\vert \cdot\vert $ 与极限交换)。 本讲的 J1–J5 逐条对应它们。特别地,Theorem 89(3) 的证明里用到的 “收敛序列必有界“是本讲乘积法则链条上不可缺的一环(常见误区之一见下节)。
- 依赖 Lecture 5(Absolute Value;Definition 49、Theorem 50): $\vert a\vert <\epsilon\iff-\epsilon<a<\epsilon$(Theorem 50(5))是 Theorem 166 与拓扑刻画中把绝对值不等式翻译成区间包含的关键; $\vert ab\vert =\vert a\vert \vert b\vert $(Theorem 50(3))是定理 159 第 2 项夹逼的依据。
- 依赖 Assignment 3 第 5 题 / Midterm 第 2 题(开集的定义与性质): 连续性的拓扑刻画(Assignment 8 第 5 题)必须用 “$U$ 开 $\iff$ 每点有一个 $\epsilon$-邻域含于 $U$”这个工作定义, 并且在 $(\Leftarrow)$ 方向要证明开区间是开集(即 Assignment 3 第 5(a) 题的结论)。
- 为 Lecture 15 铺路:Lecture 15 Theorem 171(连续性的三条等价刻画) 是紧接着本讲的定理,本笔记已前置证明; Lecture 15 Theorem 172($\sin,\cos$ 连续)、Theorem 173(多项式连续, 完全用序列刻画)、Theorem 174(代数运算)、Theorem 175(复合)、 Theorem 178(Dirichlet 函数处处不连续)都在本讲的定义与工具之上直接展开。 Lecture 15 的 Dirichlet 函数是”Assignment 8 第 2 题”的极端版本: 前者两支永不相等,后者只在 $x=0$ 汇合。
- 为 Lecture 16(Min/Max Theorem 与 IVT)铺路: Lecture 16 的极值定理与介值定理的陈述里”$f$ 在 $[a,b]$ 上连续” 用的是本讲的 Definition 167;其证明还要用到本讲的序列刻画 (Bolzano–Weierstrass 抽出收敛子列 → 用序列刻画得 $f(x_{n_k})\to f(c)$)。
- 为 Lecture 17(一致连续)铺路: 一致连续的定义就是把本讲 Definition 167 里的 $\delta$ 从”依赖 $c$”改成”不依赖 $c$”。 本讲”$f(x)=x^2$ 在 $c$ 处取 $\delta=\min\{1,\frac{\epsilon}{2\vert c\vert +1}\}$”的例子 正好说明了 $\delta$ 依赖 $c$ 的方式,是理解一致连续的最好的起点。
关键要点
序列刻画是本讲的总钥匙(Lecture 13 Theorem 157): \(\lim_{x\to c}f(x)=L\iff \forall\{x_n\}\subset S\setminus\{c\},\ x_n\to c:\ f(x_n)\to L .\) 它是一座双向桥。桥的一边是函数语言($\epsilon$-$\delta$,处理连续统上的 $\forall x$), 另一边是序列语言($\epsilon$-$N$)。任何已证的序列定理都能沿桥搬到函数层,零成本。
单侧极限与双侧极限的关系(Theorem 166): \(\lim_{x\to c}f(x)=L\iff\lim_{x\to c^-}f(x)=\lim_{x\to c^+}f(x)=L .\) 前提是 $c$ 同时是 $S\cap(-\infty,c)$ 与 $S\cap(c,\infty)$ 的聚点。 证明的 $(\Leftarrow)$ 方向靠 $\delta=\min\{\delta_-,\delta_+\}$; $(\Rightarrow)$ 方向靠”把 $0<\vert x-c\vert <\delta$ 按符号拆成两半”。 推论(最常用的形式):左右极限存在但不相等 $\Rightarrow$ 双侧极限不存在(跳跃间断)。
连续的定义(Definition 167)与极限定义只差两处: \(\forall\epsilon>0\ \exists\delta>0\ \text{s.t. }\ \bigl(x\in S\ \wedge\ \|x-c\|<\delta\bigr)\Rightarrow\|f(x)-f(c)\|<\epsilon .\) ① 去掉了 $0<$(允许 $x=c$,此时两边自动为 $0$); ② 右端参照值是 $f(c)$ 而不是外部候选值 $L$。 一句话记住:连续 = 极限存在且恰好等于函数值($c$ 为聚点时)。 而若 $c$ 是 $S$ 的孤立点,$f$ 自动连续(Theorem 171 第 1 条)。
连续性有五种等价表述,考试按需选用: ① $\epsilon$-$\delta$ 定义;② $\lim_{x\to c}f(x)=f(c)$($c$ 为聚点时); ③ 序列刻画:$x_n\to c\Rightarrow f(x_n)\to f(c)$(对一切 $S$ 中序列); ④ 拓扑刻画:每个开集的原像是开集; ⑤ 换一种记忆:连续 $\iff$ 可以与 $\lim$ 交换位置。 证连续用 ②③,证不连续用 ③(找坏序列)或 Negation 170,做题用 ④。
“构件 + 封闭性”的生成模式(本讲的第二大主题): \(\text{常数}、\ x\ \text{连续}\ \xrightarrow{\text{和·积·商}}\ \text{多项式}、\text{有理函数连续};\qquad f,g\ \text{连续}\Rightarrow f+g,\ fg,\ f/g,\ cf,\ \|f\|,\ \sqrt f,\ f\circ g\ \text{连续}.\) 除法要 $g(c)\neq0$(且 $g$ 在 $S$ 上处处非零);$\sqrt f$ 要 $f\ge0$; 复合要”$g$ 在 $c$ 连续 且 $f$ 在 $g(c)$ 连续”。 证明一气呵成:全都走”翻译成极限 → 用序列运算法则 → 翻译回来”,不写一个 $\delta$。
黄金法则:$\min$ 合并”且”,$\max$ 合并”或”。 要 $\delta$ 同时满足两个上界 → 取 $\delta=\min\{\delta_1,\delta_2\}$; 要 $N$ 同时超过两个门槛 → 取 $N=\max\{N_0,N_1\}$。 本讲 Theorem 166、Assignment 8 第 4 题(拼接函数)都用 $\min$; Lecture 8 Theorem 89 用 $\max$。
常见误区与注意事项
误区 1:把 $x_n\to c$ 理解成”存在某条序列”,而不是”对任意序列”。
- 错误做法:想证 $\lim_{x\to c}f(x)=L$,只验证了 $x_n=c+\frac1n$ 这一条序列就有 $f(x_n)\to L$, 然后宣布极限存在。
- 为什么错:序列刻画是一个 iff,其中”$2.$”是 $\forall\{x_n\}$(全称量词)。只验一条序列,甚至连”极限存在”都推不出来。 反例:$f(x)=\vert x\vert /x$ 在 $c=0$,取 $x_n=\frac1n$(正数)得 $f(x_n)=1\to1$, 但取 $x_n=-\frac1n$ 得 $-1\to-1$,极限根本不存在。
- 正确做法:证存在性要用”任取一条序列”($\forall$ 引入), 然后只能靠序列的普遍定理,不能靠具体构造。 反过来,证不存在只需一条坏序列——这里的量词方向是相反的,别搞混。
误区 2:序列刻画里忘记 $x_n\in S\setminus\{c\}$,把 $x_n\equiv c$ 代进去。
- 错误做法:为了”验证”$\lim_{x\to0}f(x)=f(0)$,就取 $x_n=0$ 常序列, 发现 $f(x_n)\to f(0)$,于是断言连续。
- 为什么错:极限定义里 $x\neq c$。(在连续性的序列刻画里允许 $x_n=c$, 但那是因为连续的定义允许 $x=c$;在极限的序列刻画里不行。) 把 $x_n\equiv c$ 代进去,只能验证 $f(c)\to f(c)$,是恒真的废话。
- 正确做法:严格区分两个序列刻画的条件: 极限版要求 $x_n\in S\setminus\{c\}$;连续版允许 $x_n\in S$(可含 $c$)。 在证连续的 $(\Leftarrow)$ 时,如果要用反证构造坏序列,构造出的 $x_n$ 可能恰好等于 $c$ 吗?可能——但这没有关系, 因为 Negation 170 里允许 $\vert x-c\vert <\delta$(含 $x=c$), 而 $x=c$ 时误差为 $0<\epsilon_0$ 不可能满足 $\ge\epsilon_0$, 所以自动地 $x_n\neq c$。这个细节值得自己想清楚。
误区 3:量词否定写错——从”$\vert x-c\vert <\delta\Rightarrow\vert f(x)-f(c)\vert <\epsilon$” 否定成”$\vert x-c\vert <\delta\Rightarrow\vert f(x)-f(c)\vert \ge\epsilon$”。
- 错误做法:把蕴含的否定写成”前件不变、后件取反”。
- 为什么错:$\neg(P\Rightarrow Q)$ 等价于 $P\wedge\neg Q$,不是 $P\Rightarrow\neg Q$。 另外”$\forall\delta\exists x$”的顺序不能交换——$x$ 依赖 $\delta$。
- 正确做法:源文件 Negation 170 的完整形式: \(\exists\epsilon_0>0\ \forall\delta>0\ \exists x\in S:\ \|x-c\|<\delta\ \wedge\ \|f(x)-f(c)\|\ge\epsilon_0 .\) 注意最后是 $\ge$ 而不是 $>$(见定义 C 的反例说明)。 实际做题时,$x$ 通常取成 $\delta/2$、$\frac1n$ 或某个依赖 $\delta$ 的无理数。
误区 4:把”$f$ 在 $c$ 处不连续”与”$\lim_{x\to c}f(x)$ 不存在”混为一谈。
- 错误做法:看到不连续就去找”极限不存在”的证据。
- 为什么错:可去间断 (removable discontinuity) 的例子 $f(x)=1\ (x\neq0)$、$f(0)=2$ 满足 $\lim_{x\to0}f(x)=1$(极限存在), 但在 $0$ 处不连续,因为 $1\neq2=f(0)$。 不连续有三种典型样态: | 类型 | 例子 | 左右极限 | 双侧极限 | 与 $f(c)$ 的关系 | |—|—|—|—|—| | 可去间断 removable | $1\ (x\neq0)$,$2\ (x=0)$ | 都是 $1$ | $=1$ 存在 | $\neq f(0)=2$ | | 跳跃间断 jump | $0\ (x<0)$,$1\ (x\geq0)$ | $0$ 与 $1$ | 不存在 | $f(0)=1$,两侧不等 | | 振荡间断(本质) | $\sin(1/x)\ (x\neq0)$,$0\ (x=0)$ | 都不存在 | 不存在 | 无从比较 |
- 正确做法:判断不连续时,先问三个问题: ① $f(c)$ 有定义吗?② $\lim_{x\to c}f(x)$ 存在吗?③ 两者相等吗? 任一条不满足(在 $c$ 为聚点的情形)就是不连续。
误区 5:在证明”$fg$ 连续”时,直接写 $\vert f(x)g(x)-f(c)g(c)\vert \le\vert f(x)\vert \vert g(x)-g(c)\vert +\vert g(c)\vert \vert f(x)-f(c)\vert $ 然后说”后面是 $0$”。
- 错误做法:写成”$\vert f(x)\vert $ 有界,所以第一项趋于 $0$”——但 $\vert f(x)\vert $ 有界不是免费的, 需要先证;而且”趋于 $0$”在 $\epsilon$-$\delta$ 语言里需要把 $\epsilon$ 分配成两份。
- 为什么错:这正是 Lecture 8 Theorem 89(3) 的证明里需要”收敛序列有界”的原因。 在 $\epsilon$-$\delta$ 里做,必须: ① 先由 $f$ 在 $c$ 连续得存在 $\delta_1$ 使 $\vert f(x)\vert <\vert f(c)\vert +1$(先证局部有界); ② 再分配 $\epsilon$,取 $\delta=\min\{\delta_1,\delta_2,\delta_3\}$; ③ 最后拼出 $\vert fg-f(c)g(c)\vert <\epsilon$。步骤冗长。
- 正确做法:走序列路线。任取 $x_n\to c$, 由序列刻画 $f(x_n)\to f(c)$、$g(x_n)\to g(c)$, 由 Lecture 8 Theorem 89(3) 得 $f(x_n)g(x_n)\to f(c)g(c)$, 再由序列刻画翻译回连续。五行写完,且不用碰 $\delta$。 这正是 Final 第 2(b) 题的推荐解法。
误区 6:忽略”孤立点自动连续”,导致在 $S=\mathbb Z$ 这类定义域上判错。
- 错误做法:看到 $f:\mathbb Z\to\mathbb R$,说”整数点之间都是断的,所以不连续”。
- 为什么错:连续的 $\epsilon$-$\delta$ 定义只约束定义域内的点。 取 $\delta=\frac12$,窗口 $(c-\frac12,c+\frac12)$ 内唯一的整数是 $c$ 本身, 误差为 $0$。所以任何函数在 $\mathbb Z$ 上都连续。
- 正确做法:先判断”$c$ 是不是 $S$ 的聚点”。 不是 → 连续免费(Theorem 171 第 1 条); 是 → 用”极限 = 函数值”或序列刻画。 这也是 [JL] Exercise 3.2.12 的答案。
误区 7:商的极限漏条件。
- 错误做法:只验证 $M\neq0$ 就写 $\lim\frac fg=\frac LM$。
- 为什么错:$\frac{f(x_n)}{g(x_n)}$ 要有定义,必须 $g(x_n)\neq0$。 这是 Lecture 8 Theorem 89(4) 的显式前提 (”若 $\forall n\in\mathbb N,\ y_n\neq0$ 且 $y\neq0$”)。 在函数版里对应”$\forall x\in S,\ g(x)\neq0$”。
- 正确做法:两条都写。另外注意商法则的另一个隐蔽前提是分母极限非零, 它保证 $\left\vert \frac1{g(x_n)}\right\vert $ 有界(用 $\vert y\vert /2$ 的下界保护)。 记忆口诀:分子分母都要”离零远一点”。
误区 8:把拓扑刻画里的”开集原像是开集”错记成”开集的像是开集”。
- 错误做法:用 $f$ 把开集 $U$ 映成 $f(U)$ 并声称 $f(U)$ 开。
- 为什么错:连续函数不保持开集。反例:$f(x)=x^2$(连续), $U=(-1,1)$ 是开集,但 $f(U)=[0,1)$,不是开集($0$ 处没有呼吸空间)。 连续函数保持的是紧集(Final 第 3 题 (b))与连通集, 开集的对应性质要用”开映射“(open mapping)另行定义。
- 正确做法:永远用原像。原像与并、交、差交换得好 ($f^{-1}(C\cap D)=f^{-1}(C)\cap f^{-1}(D)$,Midterm 第 1(a) 题), 而像不保持交,这就是原像在这套理论中不可替代的原因。
误区 9:把 $\delta=\min\{\delta_-,\delta_+\}$ 写成 $\max$。
- 错误做法:觉得”两边都要覆盖,取大的更保险”。
- 为什么错:$\delta$ 的作用是”窗口半径“,窗口越小条件越容易满足。 若取 $\delta=\max\{\delta_-,\delta_+\}=\delta_+$(设 $\delta_+>\delta_-$), 则存在 $x$ 满足 $\vert x-c\vert <\delta_+$ 但 $\vert x-c\vert \ge\delta_-$, 即落在左半边的”盲区”里,无法用左极限的结论。证明立刻断裂。
- 正确做法:$\delta=\min$;对称地,序列证明里 $N=\max$。判断口诀: ”$\delta$ 取小,$N$ 取大”。
思考题(带答案)
Q1.($\epsilon$-$\delta$ 计算题) 用连续的 $\epsilon$-$\delta$ 定义(Definition 167)证明 $f(x)=x^3$ 在 $c=2$ 处连续。 并把 $\epsilon$ 取成具体数字 $\epsilon=0.1$,算出对应的 $\delta$,再取一个点验算。
答案
**第一步:把 $\\vert f(x)-f(c)\\vert $ 因式分解,找出它与 $\\vert x-c\\vert $ 的关系。** $$ \|x^3-2^3\|=\|x-2\|\,\|x^2+2x+4\| . $$ (依据:立方差公式 $a^3-b^3=(a-b)(a^2+ab+b^2)$,取 $a=x,b=2$。) **第二步:控制第二个因子 $\\vert x^2+2x+4\\vert $。** 这是本题的唯一技术点。思路:**先把 $x$ 限制在 $c$ 的一个固定邻域内**, 让第二个因子有一个与 $x$ 无关的上界。 先试 $\\vert x-2\\vert <1$,即 $1<x<3$。在这个范围内: $$ x^2+2x+4<3^2+2\cdot3+4=9+6+4=19 . $$ 又 $x^2+2x+4=(x+1)^2+3>0$,故在 $\\vert x-2\\vert <1$ 时 $$ \|x^2+2x+4\|=x^2+2x+4<19 . $$ (依据:多项式在区间端点的单调性估计;也可用 $x<3$ 直接逐项放缩: $x^2<9$、$2x<6$、$4=4$,三者相加得 $<19$。 **注意这里的 $19$ 就是 $c=2$ 处的 $\\vert 2c\\vert +1$ 型上界的一个具体化: $19=2\\cdot9+1$,而 $3\\vert c\\vert +1=7$ 是更粗的估计,两者都可以用。**) **第三步:给定任意 $\\epsilon>0$,令** $$ \delta:=\min\Bigl\{1,\ \frac{\epsilon}{19}\Bigr\}>0 . $$ (依据:构造。$\\epsilon>0\\Rightarrow\\frac{\\epsilon}{19}>0$,故 $\\delta>0$。 **取 $\\min\\{1,\\cdot\\}$ 的原因**:$\\frac{\\epsilon}{19}$ 负责把误差压到 $\\epsilon$ 以下, $1$ 负责保证第二步的估计($\\vert x-2\\vert <1$)成立。两个要求必须同时满足, 所以取 $\\min$——这就是"**$\\min$ 合并两个约束**"的标准用法。) **第四步:验证。** 设 $x\\in\\mathbb R$ 且 $\\vert x-2\\vert <\\delta$。 1. 由 $\\delta\\le1$,得 $\\vert x-2\\vert <1$,于是第 2 步给出 $\\vert x^2+2x+4\\vert <19$。 (依据:$\\delta\\le1$ + 第 2 步。) 2. 于是 $$ \|f(x)-f(2)\|=\|x-2\|\cdot\|x^2+2x+4\|<\|x-2\|\cdot19<19\delta\le19\cdot\frac{\epsilon}{19}=\epsilon . $$ (依据:第 1 步 + $\\vert x-2\\vert <\\delta$ + $\\delta\\le\\frac\\epsilon{19}$ + 代数。) 3. 由 $\\epsilon>0$ 任意,$f$ 在 $2$ 处连续。$\\blacksquare$ (依据:Definition 167。) **具体数字:$\\epsilon=0.1$。** $$ \delta=\min\Bigl\{1,\frac{0.1}{19}\Bigr\}=\frac{0.1}{19}\approx0.00526316 . $$ **验算(Python3 核对):** - 取 $x=2+\\delta=2.0052631$:$\\vert x-2\\vert =0.0052631$, $\\vert x^3-8\\vert =0.0633235$。**注意这个值小于 $19\\delta=0.1$** ✓(Python 算得 $19\\delta=0.1$)。 - 取 $x=2.0052$(略小于 $\\delta$):$\\vert x^3-8\\vert =0.0625624<0.1$ ✓。 - 取 $x=2.0053$(略大于 $\\delta$):$\\vert x^3-8\\vert =0.0637687<0.1$(仍然安全, 说明我们的估计有富余;但 ${}<0.1$ 并不保证,必须靠 $\\delta$ 的保证)。 - **对比**:若错误地取 $\\delta=\\frac{\\epsilon}{2\\vert c\\vert +1}=\\frac{0.1}{5}=0.02$, 则 $x=2.019$ 时 $\\vert x^3-8\\vert =\\vert 0.019\\vert \\vert 4.076361\\vert =0.0774<0.1$ 仍然成立, 但 $x=2.0199$ 时 $\\vert x^3-8\\vert \\approx0.0811$, 到 $x=2.0249$ 时 $\\vert x^3-8\\vert \\approx0.1015>0.1$ **失败**! (因为 $2\\vert c\\vert +1=5$ 低估了 $x^2+2x+4\\approx19$ 的真实量级。) **教训**:$\\delta=\\frac{\\epsilon}{2\\vert c\\vert +1}$ 这个公式只对 $f(x)=x^2$ 有效, 对 $x^3$ 必须重新估界。**不要背公式,要背方法。** **证明机制解说**:整道题的机制是"**分解 + 局部有界**"。 $\\vert f(x)-f(c)\\vert $ 分解成"小的因子 $\\vert x-c\\vert $"乘"局部有界的因子"。 前者由 $\\delta$ 控制,后者由 $\\min\\{1,\\cdot\\}$ 中的 $1$ 控制。 这个"**把 $\\delta$ 中的一个固定余量(这里是 $1$)用于保证有界性, 另一个部分用于保证精确度**"的模式,是 $\\epsilon$-$\\delta$ 证明中最常用的套路, 与 Lecture 13 Example 154($\\sqrt x$)的"分母放缩到 $\\sqrt c$"是同一思想。 **技巧总结**: - 见到多项式差,先因式分解出 $\\vert x-c\\vert $。 - 局部有界:先用 $\\delta\\le1$ 把 $x$ 关进 $[c-1,c+1]$,再逐项放缩。 - $\\delta=\\min\\{1,\\frac{\\epsilon}{B}\\}$,其中 $B$ 是局部界。Q2.(判断并证明连续性;含可去间断与跳跃间断) 考察两个函数:
\[f(x)=\begin{cases}\dfrac{x^2-1}{x-1},&x\neq1,\\[4pt] 3,&x=1,\end{cases} \qquad g(x)=\begin{cases}0,&x<0,\\ 1,&x=0,\\ 2,&x>0 .\end{cases}\]分别判断 $f$ 在 $x=1$、$g$ 在 $x=0$ 处是否连续;若不连续,指出间断类型 (可去间断 removable discontinuity / 跳跃间断 jump discontinuity)并给出证明。
答案
**(一)$f$ 在 $x=1$ 处:可去间断。** **第 1 步:算 $f(1)$。** 由分段定义,$f(1)=3$。 **第 2 步:算 $\\lim_{x\\to1}f(x)$。** 在 $x\\neq1$ 时, $$ \frac{x^2-1}{x-1}=\frac{(x-1)(x+1)}{x-1}=x+1 . $$ (依据:平方差公式 + 约分,**约分合法的前提正是 $x\\neq1$**, 这恰好与极限定义要求的 $0<\\vert x-1\\vert $ 吻合。) 于是对任意序列 $x_n\\in\\mathbb R\\setminus\\{1\\}$、$x_n\\to1$, $$ f(x_n)=x_n+1\to1+1=2 $$ (依据:Lecture 8 Theorem 89(1)(和的极限法则)+ $x_n\\to1$; 再依 Lecture 13 Theorem 157 翻译回函数极限。) 故 $\\lim_{x\\to1}f(x)=2$。 **用 $\\epsilon$-$\\delta$ 复核**:取任意 $\\epsilon>0$,令 $\\delta=\\epsilon>0$。 若 $0<\\vert x-1\\vert <\\delta$,则 $\\vert f(x)-2\\vert =\\vert (x+1)-2\\vert =\\vert x-1\\vert <\\epsilon$ ✓。 (依据:Definition 150 + 代数。) **数值验算**:$\\epsilon=0.01\\Rightarrow\\delta=0.01$。取 $x=1.0099$: $\\vert x-1\\vert =0.0099<0.01$,$\\vert f(x)-2\\vert =\\vert (x^2-1)/(x-1)-2\\vert =0.0099000<0.01$ ✓(Python 核对)。 再取 $x=0.999$:$\\vert f(x)-2\\vert =\\vert 1.999-2\\vert =0.001<0.01$ ✓。 **第 3 步:比较极限与函数值。** $$ \lim_{x\to1}f(x)=2\neq3=f(1). $$ 由 Theorem 171 第 2 条($1$ 是 $\\mathbb R$ 的聚点),**$f$ 在 $1$ 处不连续**。$\\blacksquare$ **第 4 步:判定类型。** 两个单侧极限都存在且相等(都是 $2$), 即 $\\lim_{x\\to1^-}f=\\lim_{x\\to1^+}f=2$,但 $f(1)=3\\neq2$。 这种"极限存在、只是函数值放错了位置"的间断叫**可去间断 (removable discontinuity)**: 只要把定义改成 $f(1)=2$,函数立刻在整个 $\\mathbb R$ 上连续。 **"可去"的含义就是"改一个点的值就能修好"。** **拓扑视角的交叉验证**:取开集 $U=(2.5,3.5)$,则 $f^{-1}(U)=\\{1\\}$,而单点集 $\\{1\\}$ **不是开集**。 故由 Assignment 8 第 5 题的拓扑刻画,$f$ 不连续。 (注意:若取 $U=(1.5,2.5)$(开),则 $f^{-1}(U)=\\mathbb R\\setminus\\{1\\}$, 这是开集,没有暴露问题。**这说明拓扑判定必须对所有开集进行, 只试一个 $U$ 可能漏判**——这是本题想传递的重要概念。) **(二)$g$ 在 $x=0$ 处:跳跃间断。** **第 1 步:算 $g(0)$。** 由分段定义,$g(0)=1$。 **第 2 步:算两个单侧极限。** - $\\lim_{x\\to0^-}g(x)=0$:取任意 $\\epsilon>0$,令 $\\delta=1$。 若 $x\\in\\mathbb R$ 且 $-1<x<0$,则 $g(x)=0$,$\\vert g(x)-0\\vert =0<\\epsilon$ ✓。 (依据:Definition 161 + $x<0$ 分支。) - $\\lim_{x\\to0^+}g(x)=2$:同样取 $\\delta=1$。若 $0<x<1$,则 $g(x)=2$, $\\vert g(x)-2\\vert =0<\\epsilon$ ✓。 (依据:Definition 163 + $x>0$ 分支。) **第 3 步:比较单侧极限。** $0\\neq2$,由 Theorem 166 的逆否命题, **双侧极限 $\\lim_{x\\to0}g(x)$ 不存在**。$\\blacksquare$ **第 4 步:判定类型。** 两个单侧极限都存在但**不相等**, 这叫**跳跃间断 (jump discontinuity)**,跳跃高度为 $\\vert 2-0\\vert =2$。 注意此时 $g(0)=1$ 与两个单侧极限都不等,但**"跳跃"的本质是两侧不相等**, 而不是"函数值与极限不等"——后者是可去间断的特征。 **用 $\\epsilon$-$\\delta$(Negation 170)直接证不连续**(作为交叉验证): 取 $\\epsilon_0=1$。对任意 $\\delta>0$,取 $x=\\frac{\\delta}{2}\\in(0,\\delta)$, 则 $\\vert x-0\\vert =\\frac\\delta2<\\delta$ 而 $\\vert g(x)-g(0)\\vert =\\vert 2-1\\vert =1\\ge\\epsilon_0$ ✓。 故 $g$ 在 $0$ 处不连续。 (数值验算:$\\delta=1\\Rightarrow x=0.5$,$\\vert g(0.5)-g(0)\\vert =\\vert 2-1\\vert =1\\ge1$ ✓,Python 核对。) **(三)两种间断的对照表** | | $f$ 在 $x=1$ | $g$ 在 $x=0$ | |---|---|---| | $f(c)$ | $3$ | $1$ | | $\\lim_{x\\to c^-}$ | $2$ | $0$ | | $\\lim_{x\\to c^+}$ | $2$ | $2$ | | 双侧极限 | $2$(存在) | 不存在(两侧不等) | | 与 $f(c)$ 的关系 | $2\\neq3$ | 无从比较 | | 间断类型 | **可去间断** | **跳跃间断** | | 如何修复 | 把 $f(1)$ 改成 $2$ | 无法只改一点修好 | | 拓扑指纹 | 单点集的原像非开 | 半轴型集合(如 $[0,\\infty)$)的原像非开 | **证明机制解说**: 判连续的标准流程是**三问**:① $f(c)$ 有定义?② $\\lim_{x\\to c}f(x)$ 存在? ③ 两者相等?任何一问否定,就不连续。 **算出单侧极限再比较**是判定间断类型的最快方法: 两侧都存在且相等但不等于函数值 $\\to$ 可去; 两侧都存在但不相等 $\\to$ 跳跃; 至少一侧不存在 $\\to$ 本质间断(如 $\\sin(1/x)$ 在 $0$)。 **技巧总结**: - 分式函数先约分(但牢记约分要求 $x\\neq c$),再算极限。 - 分段函数在断点处**必须**分左右计算,不能直接代。 - 可去 vs 跳跃的分界线是"**左右极限是否相等**", 不是"函数值是否等于极限"。Q3.(概念理解题) 设 $f:\mathbb R\to\mathbb R$ 在 $c$ 处连续,且 $f(c)>0$。 证明:存在 $\alpha>0$,使得对一切 $x\in(c-\alpha,c+\alpha)$ 都有 $f(x)>0$。 (这是 Assignment 8 第 3 题 / [JL] Exercise 3.2.11。) 再回答:为什么取 $\epsilon=\frac{f(c)}{2}$,而不是 $\epsilon=f(c)$?
答案
**第一部分:证明。** **第 1 步:选定 $\\epsilon$。** 令 $$ \epsilon:=\frac{f(c)}{2}>0 . $$ (依据:构造。因为假设 $f(c)>0$,所以 $\\frac{f(c)}2>0$, 可以合法地把它喂给连续性定义中的 "$\\forall\\epsilon>0$"。) **第 2 步:调用连续性。** 由 $f$ 在 $c$ 连续(Definition 167), 对第 1 步的 $\\epsilon>0$,存在 $\\delta>0$ 使得 $$ \forall x\in\mathbb R,\quad \|x-c\|<\delta\ \Rightarrow\ \|f(x)-f(c)\|<\frac{f(c)}{2} . $$ (依据:Definition 167 + $\\exists$ 实例化。) **第 3 步:把绝对值不等式翻译成双侧夹逼。** 由 Lecture 5 Theorem 50(5) ($\\vert a\\vert <y\\iff-y<a<y$),对满足 $\\vert x-c\\vert <\\delta$ 的 $x$: $$ -\frac{f(c)}{2}<f(x)-f(c)<\frac{f(c)}{2} . $$ (依据:Theorem 50(5)。) **第 4 步:只保留左半边不等式。** $$ f(x)>f(c)-\frac{f(c)}{2}=\frac{f(c)}{2}>0 . $$ (依据:第 3 步 + 代数 + 第 1 步 $f(c)>0$。) **第 5 步:取 $\\alpha:=\\delta>0$。** 则对一切 $x\\in(c-\\alpha,c+\\alpha)$ (等价于 $\\vert x-c\\vert <\\delta$)都有 $f(x)>0$。$\\blacksquare$ (依据:第 2、4 步 + $\\alpha=\\delta$ 的命名。) **数值验算**:设 $f(c)=3$,$c=0$。取 $\\epsilon=\\frac32=1.5>0$。 由连续性存在 $\\delta>0$ 使 $\\vert x\\vert <\\delta\\Rightarrow\\vert f(x)-3\\vert <1.5$, 即 $1.5<f(x)<4.5$,故 $f(x)>1.5>0$ ✓(Python 核对:$3-1.5=1.5>0$)。 若取 $\\epsilon=3$,则只能得到 $0<f(x)<6$,即 $f(x)>0$—— 这个结论**也对**,但它是"恰好严格",一旦连续性带来的是 $\\vert f(x)-f(c)\\vert \\le3$(非严格),结论就退化成 $f(x)\\ge0$, 无法排除 $f(x)=0$。**取一半是为了留出安全余量。** **第二部分:为什么取 $\\frac{f(c)}{2}$?** 三条理由,从浅到深: 1. **为了保证严格不等式。** 连续性给出的是 $\\vert f(x)-f(c)\\vert <\\epsilon$, 即 $f(x)>f(c)-\\epsilon$。要让这个下界**严格大于 $0$**, 必须 $f(c)-\\epsilon>0$,即 $\\epsilon<f(c)$。 取 $\\epsilon=f(c)$ 恰好落在边界上,只会得到 $f(x)>0$ 的"极限版本": 形式上仍是 $f(x)>0$(因为 $\\vert f(x)-f(c)\\vert <f(c)$ 是严格的), 但**没有任何余量**——这一点在处理复合或后续估计时非常危险。 取 $\\frac{f(c)}{2}$ 则留下 $f(x)>\\frac{f(c)}{2}$,余量充足。 2. **与"证明的稳健性"有关。** 数学证明中普遍采用"**预留一半**"的习惯: 要证明 $A>0$,就先造出一个安全垫 $\\frac A2>0$,然后证明 $B>\\frac A2$。 同一个习惯在 Lecture 8 Theorem 87(1)($\\vert y_n-y\\vert <\\frac{x-y}{2}$)、 Lecture 13 Theorem 152($\\vert f(x)-L_1\\vert <\\frac\\epsilon2$)里都出现过。 **"$\\frac{\\cdot}{2}$ 技巧"是本课程的通用工具。** 3. **它是"局部保号性 (sign preservation)"的一般原理。** 推广一下: 若 $f(c)>a$($a$ 为某常数),取 $\\epsilon=\\frac{f(c)-a}{2}$, 就能得到 $f(x)>a$ 在 $c$ 附近成立。 同理,"$f(c)\\neq0$ $\\Rightarrow$ $f$ 在 $c$ 附近不为零"也可以用这条原理 (取 $\\epsilon=\\frac{\\vert f(c)\\vert }{2}$),而这一条**正是商法则 $f/g$ 连续性的隐藏前提**: 要谈 $1/g$ 的连续性,必须知道 $g$ 在 $c$ 附近不取零值。 **所以本题不是孤立的练习,它是连续代数运算理论的一块地基。** **概念延伸:与"极限保号性"的区别与联系。** 本命题是"**连续性版本**"的保号性,需要 $f(c)>0$(函数值本身非零)。 另有一个"**极限版本**":若 $\\lim_{x\\to c}f(x)=L>0$, 则存在 $\\delta>0$ 使 $f(x)>\\frac L2>0$ 当 $0<\\vert x-c\\vert <\\delta$。 注意极限版本**不涉及 $f(c)$**,即使 $f(c)=-100$ 也成立 (例如 Lecture 13 Example 155 的函数:$\\lim_{x\\to0}f=1>0$, 但 $f(0)=2$——本例 $f(0)$ 恰好也 $>0$;若把 $f(0)$ 改成 $-100$, 极限版本仍然给出"$0$ 的邻域内 $f>\\frac12$",只有 $x=0$ 那一点是例外)。 **这两条的联系与差别,正是"极限不关心 $f(c)$"这句话的又一体现。** **技巧总结**: - 要证明"某点附近某个严格不等式成立",先算**余量**, 取余量的一半作 $\\epsilon$,再用连续性的 $\\delta$ 得到邻域。 - 遇到除法或倒数的连续性,务必先想"分母离零有多远"。 - "$\\frac{\\cdot}{2}$ 技巧"在 $\\epsilon$-$\\delta$ 世界里几乎处处可用, 它是把"严格"与"非严格"分开的标准手法。附:本讲全部核心公式速查(供复习)
┌─────────────────────────────────────────────────────────────────────────────┐
│ 序列刻画(Lecture 13 Thm 157,本讲的发动机) │
│ lim_{x→c} f(x) = L ⟺ ∀{x_n}⊂S\{c}, x_n→c : f(x_n)→L │
├─────────────────────────────────────────────────────────────────────────────┤
│ 单侧极限(Def 161/163)与双侧极限(Thm 166) │
│ lim_{x→c} f = L ⟺ lim_{x→c⁻} f = lim_{x→c⁺} f = L │
│ 证明的 ⇐ 方向: δ = min{δ₋, δ₊} │
├─────────────────────────────────────────────────────────────────────────────┤
│ 连续(Def 167) │
│ ∀ε>0 ∃δ>0 : x∈S ∧ |x-c|<δ ⇒ |f(x)-f(c)|<ε │
│ 与极限定义的两处差别:① 去掉 0< ② 参照值是 f(c) 而非 L │
│ c 为聚点时: 连续 ⟺ lim_{x→c} f = f(c) │
│ c 为孤立点时: 自动连续 │
│ 序列刻画: 连续 ⟺ ∀{x_n}⊂S, x_n→c : f(x_n)→f(c) │
│ 拓扑刻画: 连续 ⟺ ∀开集 U, f⁻¹(U) 开 │
├─────────────────────────────────────────────────────────────────────────────┤
│ 不连续(Negation 170) │
│ ∃ε₀>0 ∀δ>0 ∃x∈S : |x-c|<δ ∧ |f(x)-f(c)| ≥ ε₀ │
├─────────────────────────────────────────────────────────────────────────────┤
│ 封闭性 │
│ f,g 连续 ⟹ f+g, fg, f/g (g≠0), cf, |f|, √f (f≥0), f∘g 连续 │
│ 常数、x 连续 ⟹ 多项式连续 ⟹ 有理函数在其定义域上连续 │
└─────────────────────────────────────────────────────────────────────────────┘
附:阶梯函数与可去间断的 ASCII 图像
(1) 跳跃间断 jump discontinuity: f(x)=0 (x<0), f(x)=1 (x≥0), c=0
▲ y
│
1 ┤ ●━━━━━━━━━━━━━━━━━━━━
│ ┃
│ ┃ ← 跳跃高度 1
━━━━━━━━━━━━━━━━━━━━━━━━━━━━┿━━━━━━━━━○ ← 空心点: 左侧取不到
0 ┤ ┃ lim_{x→0⁻} f = 0
│ ┃ lim_{x→0⁺} f = 1
────────────────────────────┼─────────┼──────────→ x
0 │ 1
c=0
❌ 双侧极限不存在(左右极限 0 ≠ 1)→ 跳跃间断
(2) 可去间断 removable discontinuity: f(x)=1 (x≠0), f(0)=2, c=0
▲ y
2 ┤ ○ ← f(0)=2(孤立的"钉")
│
1 ┤ ━━━━━━━━╳━━━━━━━━ ← 极限 = 1
│ ↑
│ 空心点 (0,1): 极限值在此
────────────────────────────┼─────────┼──────────→ x
0 │ 0
c=0
⚠️ 双侧极限存在(= 1),但 f(0) = 2 ≠ 1 → 可去间断
✔ 修复办法:令 f(0) := 1,立刻连续
(3) 振荡间断(本质间断): f(x)=sin(1/x) (x≠0), c=0
▲ y
1 ┤▌█▌█▌█▌█▌█ ← 无限次振荡,(0,1) 内取无穷多次
│▌█▌█▌█▌█▌█
0 ┤▌█▌█▌█▌█▌█
│▌█▌█▌█▌█▌█
-1 ┤▌█▌█▌█▌█▌█
────────────────────────────┼───────────────→ x
0
❌ 左右极限都不存在 → 本质间断(不可去、不可跳)
✔ 乘上 x 之后: f(x)=x·sin(1/x) 在 0 处连续(Thm 159 第 2 项)
