Lecture 15: The Continuity of Sine and Cosine and the Many Discontinuities of Dirichlet’s Function(正弦余弦的连续性与 Dirichlet 函数的处处不连续)

目录 · ← l14 · l16 →

Lecture 15: The Continuity of Sine and Cosine and the Many Discontinuities of Dirichlet’s Function(正弦余弦的连续性与 Dirichlet 函数的处处不连续)

概述

上一讲(Lecture 14)我们有了连续性的 $\epsilon$-$\delta$ 定义(Definition 167),也第一次见到了”用序列来刻画函数极限”的想法。本讲要做的第一件事,是把这个想法升级成一条可以真正干活的定理:Theorem 171 指出,$f$ 在 $c$ 连续当且仅当“任何收敛到 $c$ 的序列 $x_n$,其像序列 $f(x_n)$ 都收敛到 $f(c)$”。这条序列刻画 (sequential characterization of continuity) 是整门课此后最常用的工具——本讲几乎所有的证明都建立在它上面。

有了这台机器,本讲一口气解决两类问题:

  1. 证明”好函数”是连续的:Theorem 172 证明 $\sin x$ 与 $\cos x$ 在整个 $\mathbb{R}$ 上连续;Theorem 173 证明多项式处处连续;Theorem 174 证明连续函数的和、积、商连续;Theorem 175 证明复合保持连续。它们的证明都不再需要从零开始凑 $\delta$,而是”把已知的连续函数拼装起来”。
  2. 造出”坏函数”:Question 177 问”是否每个 $f:\mathbb{R}\to\mathbb{R}$ 都至少在某一点连续?” Theorem 178 用 Dirichlet 函数 (Dirichlet function) \(f(x)=\begin{cases}1,&x\in\mathbb{Q}\\0,&x\in\mathbb{R}\setminus\mathbb{Q}\end{cases}\) 给出了否定回答:它在每一个实数点都不连续。

所以本讲回答的问题是:连续性如何用序列来检验?三角函数的连续性为什么如此容易?以及”处处不连续的函数”到底长什么样?

核心定义与直观解释

(定义:连续,源文件 Definition 167,回顾)

  • 严格定义:设 $S\subset\mathbb{R}$,$c\in S$。称 $f:S\to\mathbb{R}$ 在 $c$ 连续 (continuous at $c$),如果 \(\forall\epsilon>0\ \exists\delta>0\ \text{s.t.}\ \forall x\in S,\ \vert x-c\vert <\delta\ \Longrightarrow\ \vert f(x)-f(c)\vert <\epsilon .\) 若 $f$ 在 $U\subset S$ 的每一点都连续,称 $f$ 在 $U$ 上连续。

  • 直观解释(”它到底在说什么?”):想象你在画 $y=f(x)$ 的图像。你希望”输出的小误差由输入的小误差保证”。挑战者给你一个误差预算 $\epsilon$(比如 $\epsilon=0.01$),你必须报出一个”安全半径” $\delta$,使得只要输入落在 $c$ 的 $\delta$-邻域里,输出就一定落在 $f(c)$ 的 $\epsilon$-邻域里。

                    y
                    ↑
        f(c)+ε ─ ─ ─┼─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
                    │      ┌─────────┐
                    │      │ 图像必须 │
           f(c) ─ ─ ┼─ ─ ─ ─│ 完全落在 │─ ─ ─
                    │      │ 这个盒子里│
        f(c)-ε ─ ─ ─┼─ ─ ─ ─┴─────────┴─ ─ ─
                    │   ↑         ↑
                    │   c-δ   c   c+δ        → x
  • 为什么需要”$\delta$ 可以依赖 $c$”这个条件? 因为这是逐点连续的定义。Lecture 17 会把它升级成”一致连续 (uniform continuity)”,要求一个 $\delta$ 对全体 $c$ 同时有效。本讲 $\sin,\cos$ 的证明之所以漂亮,就是因为算出来的 $\delta=\epsilon$ 根本不依赖 $c$——这正是它们一致连续(乃至 Lipschitz 连续)的伏笔。

  • 具体示例(把 $\epsilon$ 取成具体数字):取 $f=\sin$,$c=\pi/6$,$\epsilon=0.01$。Theorem 172 的证明将给出 $\delta=\epsilon=0.01$。验算(python3math.sin):

    $\sin(\pi/6)=0.4999999999999999$,而 \(\left\vert \sin\!\left(\tfrac{\pi}{6}+0.01\right)-\sin\!\left(\tfrac{\pi}{6}\right)\right\vert =0.0086351099093314<0.01 .\) 在 $\vert x-c\vert <0.01$ 的整个窗口上取上确界也可数值求得: \(\sup_{\vert x-\pi/6\vert <0.01}\vert \sin x-\sin(\pi/6)\vert \approx 0.0086807546<0.01 .\) 可见 $\delta=0.01$ 是够用的(而且有余量——因为真实的 Lipschitz 常数是 $1$,而上确界出现在窗口端点,比 $\delta$ 略小是因为 $\cos$ 因子 $<1$)。

  • 反例(条件不可省):源文件 Example 169 的 \(f(x)=\begin{cases}1,&x\neq0\\2,&x=0\end{cases}\) 在 $c=0$ 不连续。它的否定形式(源文件 Negation 170)是: \(f\ \text{在}\ c\ \text{不连续}\iff \exists\epsilon_0>0\ \forall\delta>0\ \exists x\in S:\ \vert x-c\vert <\delta\ \text{且}\ \vert f(x)-f(c)\vert \ge\epsilon_0 .\) 源文件的证明取 $\epsilon_0=1$,对任意 $\delta>0$ 取 $x=\delta/2$: \(\vert x-0\vert =\delta/2<\delta,\qquad \vert f(x)-f(0)\vert =\vert 1-2\vert =1\ge1=\epsilon_0 .\) 注意这里$\delta$ 依赖的对象:$\epsilon_0$ 是”存在一个坏的预算”,$\delta$ 是”任给”,$x$ 是”存在一个反例点”。三个量词的顺序一个都不能动。

(定义:Dirichlet 函数,源文件 Theorem 178 中定义)

  • 严格定义: \(f:\mathbb{R}\to\mathbb{R},\qquad f(x)=\begin{cases}1,&x\in\mathbb{Q}\\0,&x\in\mathbb{R}\setminus\mathbb{Q}\end{cases}\) 源文件在 Theorem 178 中给出这个定义,并称它为 Dirichlet 函数 (Dirichlet function)

  • 直观解释(”它到底在说什么?”):请把这个函数的图像在脑子里画出来。它在有理点上高度为 $1$,在无理点上高度为 $0$。由于有理数与无理数在实数轴上互相缠绕、彼此稠密(Lecture 5 Theorem 43),你在任何一个开区间 $(a,b)$ 里都能同时找到有理数和无理数——所以它的图像在每一条竖直线附近都同时在高度 $0$ 和高度 $1$ 上”闪”。它不是一条曲线,而是两条稠密点云的叠加

   Dirichlet 函数在任意小区间里的"密集跳跃"(示意)

   y=1  •  •   •• • ••  • •• •  • ••  •  •• • •   ← 有理点(稠密)
        │╲ │╱ │╲│╱│╲╱│╲│╱╲│╱│╲╱│╲│╱╲│╱│╲╱│  ← 没有"跳跃线",
        │ ╲│╱ ╲╱ ╲│╱ ╲│╱ ╲╱ ╲│╱ ╲│╱ ╲╱ ╲│╱     只有孤立点,
   y=0  • • ••• •  •••  • •• • •  • • •••  • ••   ← 无理点(也稠密)
        └──┬───┬────┬───┬────┬───┬────┬──→ x
          0  0.2  0.4 0.6  0.8  1.0

   放大任意一段 (c-δ, c+δ):
   里面既有无数的 •(高 1),也有无数的 •(高 0)。
   所以无论 δ 多小,"输出误差"都能达到 |1-0| = 1。
  • 为什么需要这个函数? 因为在微积分里形成的直觉是”函数图像都是连着的曲线”。Dirichlet 函数彻底打破了这个直觉:它是一个在每一点都”碎掉”的函数。更深刻的是,它说明了“连续”是一个非常强的条件,而不是”默认成立”的性质——Question 177 问”是否存在一点 $c$ 使 $f$ 在 $c$ 连续”,答案竟然是”不一定”。

  • 具体示例(把 $\epsilon/\delta$ 取成具体数字):取 $c=\sqrt{2}$(无理点,$f(c)=0$),$\epsilon_0=1/2$。检验者声称 $\delta=0.001$ 可以工作。我们只需在 $(\sqrt2-0.001,\ \sqrt2+0.001)$ 里找到一个有理数 $q$,就有 $\vert q-\sqrt2\vert <0.001$ 而 $\vert f(q)-f(c)\vert =\vert 1-0\vert =1\ge\epsilon_0$。数值上(python3fractions):
    • $140/99=1.4141414141\cdots$,$\vert 140/99-\sqrt2\vert =7.2148\times10^{-5}<0.001$。✓
    • 所以 $\delta=0.001$ 立刻被击破。若把 $\delta$ 缩小到 $10^{-6}$,取 $1393/985=1.4142131979\cdots$,$\vert 1393/985-\sqrt2\vert =3.6440\times10^{-7}<10^{-6}$,照样击破。无论 $\delta$ 多小,稠密性总是愿意提供一个反例——这正是证明的关键机制。
  • 反例(对照):作为对照,Assignment 8 第 2 题的函数 \(f(x)=\begin{cases}0,&x\in\mathbb{Q}\\2x,&x\notin\mathbb{Q}\end{cases}\) 在 $x=0$ 连续、在 $x=1$ 不连续。可见”有理/无理型病态定义”并不必然处处不连续:在 $x=0$ 处两个分支的值吻合($0$ 与 $2\cdot0=0$),所以它幸免。

(定义:Lipschitz 连续,补充概念,源文件未定义,来自 Assignment 9)

【补充/前向引用】 本讲源文件没有给出下面这个定义。但 Theorem 172 的证明会顺带产生它,而它在 Lecture 17 与 Assignment 9 中会正式登场,所以在这里提前点出。

  • 严格定义:设 $S\subset\mathbb{R}$,$f:S\to\mathbb{R}$。若 $\exists L\ge0$ 使得 \(\forall x,y\in S,\quad \vert f(x)-f(y)\vert \le L\vert x-y\vert ,\) 则称 $f$ 在 $S$ 上 Lipschitz 连续 (Lipschitz continuous),$L$ 称为一个 Lipschitz 常数

  • 直观解释:这是连续性的定量加强版。”$\epsilon$-$\delta$ 版”只要求”输入小 $\Rightarrow$ 输出小”,而 Lipschitz 版直接给出统一的汇率:输出差不超过输入差的 $L$ 倍。几何上,$L$ 是图像所有割线斜率的绝对值上界。

  • 为什么需要这个条件? 因为它自动蕴含一致连续(Assignment 9 第 4 题要你证:取 $\delta=\epsilon/L$ 即可),而一致连续是 Lecture 17 的主角。但反过来不成立:Assignment 9 第 5(b) 题要你证 $f(x)=x^{1/3}$ 在 $[0,1]$ 上一致连续但不是 Lipschitz 连续——因为它在 $0$ 附近割线斜率趋于 $\infty$。

  • 具体示例:本讲定理将给出 $\vert \sin x-\sin c\vert \le\vert x-c\vert $,故 $\sin$ 在 $\mathbb{R}$ 上 Lipschitz 连续,$L=1$。数值验证:在 $[-10,10]$ 上网格扫描所有割线斜率 $\frac{\vert \sin x-\sin y\vert }{\vert x-y\vert }$,最大值 $\approx 0.9999999992<1$,与 $L=1$ 吻合(python3 验证)。$\cos$ 同理,最大值 $\approx 0.9999999991$。

  • 反例:$f(x)=x^{2}$ 在 $[0,1]$ 上 Lipschitz($L=2$,因为 $\vert x^2-c^2\vert \le\vert x+c\vert \vert x-c\vert \le2\vert x-c\vert $),但在 $\mathbb{R}$ 上 Lipschitz(割线斜率 $\vert x+c\vert $ 无界)——这正说明 Lipschitz 性质依赖定义域

(定义:间断点的三类,补充概念)

【补充】 本讲源文件没有给间断点分类(源文件 Lecture 14 的 Negation 170 只写了”不连续”的否定)。下面三类是标准教材内容,在此作为背景补上,并在”定理与完整证明”里各配一个完整验证。

设 $c$ 是定义域 $S$ 的聚点(cluster point,源文件 Definition 148),$f$ 在 $c$ 不连续。

类型严格条件直观图像本讲/本课程例子
可去间断 (removable discontinuity)单侧极限 $\lim_{x\to c^-}f$、$\lim_{x\to c^+}f$ 存在且相等(记作 $L$),但 $f(c)\neq L$ 或 $f(c)$ 无定义图像上只有一个”洞”或”挪错的点”Example 169 的 $f$($L=1\neq2=f(0)$)
跳跃间断 (jump discontinuity)两个单侧极限存在但不相等图像在某处”跳一下”Lecture 14 Example 165 的阶跃函数 $\lim_{x\to0^-}=0,\ \lim_{x\to0^+}=1$
本质间断 (essential discontinuity)至少一个单侧极限不存在图像剧烈振荡或爆掉$f(x)=\sin(1/x)$ 在 $c=0$;Dirichlet 函数在任意 $c$(见下文)

为什么需要把间断点分类? 因为”不连续”这个否定命题信息量太少:它只告诉你”$\exists\epsilon_0\forall\delta\exists x$”,却分不清”图像只是破了个洞”还是”图像彻底失控”。分类让你知道能补救多少:可去间断改一个点就能变连续;跳跃间断只需在两个区间上分别连续;本质间断则无可救药。

具体示例:$f(x)=1/x$ 在 $c=0$(若扩充定义 $f(0)=0$)属于本质间断,因为 $\lim_{x\to0^+}1/x$ 不存在(无界)。

反例:$f(x)=\sin(1/x)$($x\neq0$,$f(0)=0$)在 $0$ 处是跳跃间断。数值验证(python3):取 $x_n=\frac{1}{\pi/2+2\pi n}$,得 $x_0=0.63661977,\ x_1=0.12732395,\ x_2=0.07073553,\ x_3=0.04897075$,而 $\sin(1/x_n)=1$ 对每个 $n$ 都成立。于是 $x_n\to0^+$ 但 $f(x_n)=1\not\to0$,右极限不存在,故为本质间断

定理与完整证明(核心)

定理 171(连续性的序列刻画;源文件 Theorem 171)

  • 定理陈述:设 $S\subset\mathbb{R}$,$c\in S$,$f:S\to\mathbb{R}$。则
    1. 若 $c$ 不是 $S$ 的聚点,则 $f$ 在 $c$ 连续。
    2. 若 $c$ 是 $S$ 的聚点,则 $f$ 在 $c$ 连续 $\iff$ $\lim_{x\to c}f(x)=f(c)$。
    3. $f$ 在 $c$ 连续 $\iff$ 对每一个满足 $x_n\in S$、$x_n\to c$ 的序列 $\{x_n\}$,都有 $f(x_n)\to f(c)$。
  • 证明策略:三个部分各有各的武器。
    • 第 1 部分用“邻域里只剩 $c$ 一个点”这一事实:非聚点意味着存在一个空邻域,那么 $x$ 除了等于 $c$ 之外别无选择,误差恒为 $0$,因此任何 $\delta$ 都行。
    • 第 2 部分比较两个定义的唯一差别:函数极限定义里有 $0<\vert x-c\vert $(排除 $c$ 本身),连续定义里没有。补上 $x=c$ 这一点不会破坏不等式,因为那时左右都是 $0$。源文件把这一部分”留作练习”,下面给出完整证明。
    • 第 3 部分是本讲的发动机。正向是”$\epsilon$-$\delta$ 与 $\epsilon$-$N$ 的接力”;反向用反证 + 取 $\delta=1/n$ 造序列,这是分析里极其常用的”对角线式构造”。
  • 逐步推导

    (1) 证明第 1 部分。

    1. 设 $\epsilon>0$。(依据:要证 $\forall\epsilon>0\exists\delta$)
    2. 因 $c$ 不是聚点,由聚点定义(Definition 148)的否定,$\exists\delta_0>0$ 使 $(c-\delta_0,c+\delta_0)\cap S=\{c\}$。(依据:非聚点的定义)
    3. 取 $\delta=\delta_0$。(依据:构造)
    4. 设 $x\in S$ 且 $\vert x-c\vert <\delta$。则 $x\in(c-\delta,c+\delta)\cap S=\{c\}$,故 $x=c$。(依据:第 2 步)
    5. 于是 $\vert f(x)-f(c)\vert =\vert f(c)-f(c)\vert =0<\epsilon$。(依据:$x=c$ 与 $\epsilon>0$)
    6. 故 $f$ 在 $c$ 连续。$\blacksquare$

    (2) 证明第 2 部分(源文件留作练习,此处补全)。 设 $c$ 是 $S$ 的聚点。

    ($\Leftarrow$)设 $\lim_{x\to c}f(x)=f(c)$。

    1. 设 $\epsilon>0$。(依据:$\forall\epsilon>0$)
    2. 由函数极限的 $\epsilon$-$\delta$ 定义(源文件 Definition 150),$\exists\delta>0$ 使得若 $x\in S$ 且 $0<\vert x-c\vert <\delta$,则 $\vert f(x)-f(c)\vert <\epsilon$。(依据:极限定义)
    3. 现设 $x\in S$ 且 $\vert x-c\vert <\delta$。分两种情形:
      • 若 $x\neq c$,则 $0<\vert x-c\vert <\delta$,由第 2 步得 $\vert f(x)-f(c)\vert <\epsilon$;
      • 若 $x=c$,则 $\vert f(x)-f(c)\vert =0<\epsilon$。
    4. 两种情形都成立,故 $f$ 在 $c$ 连续。$\blacksquare$

    ($\Rightarrow$)设 $f$ 在 $c$ 连续。

    1. 设 $\epsilon>0$。(依据:要证极限定义中的 $\forall\epsilon>0\exists\delta$)
    2. 由连续性定义,$\exists\delta>0$ 使得 $\forall x\in S$,$\vert x-c\vert <\delta\Rightarrow\vert f(x)-f(c)\vert <\epsilon$。(依据:Definition 167)
    3. 若 $x\in S$ 且 $0<\vert x-c\vert <\delta$,则特别有 $\vert x-c\vert <\delta$,故由第 2 步 $\vert f(x)-f(c)\vert <\epsilon$。(依据:条件的加强化——$0<\vert x-c\vert <\delta$ 蕴含 $\vert x-c\vert <\delta$)
    4. 故按 Definition 150 有 $\lim_{x\to c}f(x)=f(c)$。$\blacksquare$

    (3) 证明第 3 部分之正向:连续 $\Rightarrow$ 序列刻画。

    1. 假设 $f$ 在 $c$ 连续。设 $\{x_n\}$ 满足 $x_n\in S$ 且 $x_n\to c$。(依据:命题的假设)
    2. 设 $\epsilon>0$。(依据:要证 $f(x_n)\to f(c)$,即 $\forall\epsilon>0\exists M\forall n\ge M$)
    3. 由连续性,$\exists\delta>0$ 使得若 $x\in S$ 且 $\vert x-c\vert <\delta$,则 $\vert f(x)-f(c)\vert <\epsilon$。(依据:Definition 167)
    4. 因 $x_n\to c$($\epsilon$-$N$ 定义,取同一个 $\epsilon$ 换成 $\delta$ 的角色),$\exists M_0\in\mathbb{N}$ 使得 $\forall n\ge M_0$,$\vert x_n-c\vert <\delta$。(依据:收敛的 $\epsilon$-$N$ 定义)
    5. 取 $M=M_0$。则 $\forall n\ge M$:$\vert x_n-c\vert <\delta$,且 $x_n\in S$,故由第 3 步 $\vert f(x_n)-f(c)\vert <\epsilon$。(依据:第 3、4 步)
    6. 故 $f(x_n)\to f(c)$。(依据:$\epsilon$-$N$ 定义)$\blacksquare$

    (4) 证明第 3 部分之反向:序列刻画 $\Rightarrow$ 连续(反证)。

    1. 假设:对每个满足 $x_n\in S,\ x_n\to c$ 的序列都有 $f(x_n)\to f(c)$。(依据:命题假设)
    2. 反设 $f$ 在 $c$ 连续。(依据:反证法)
    3. 则 $\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$。(依据:源文件 Negation 170,即连续性定义的否定)
    4. 对每个 $n\in\mathbb{N}$,取 $\delta=1/n>0$,由第 3 步得到 $x_n\in S$ 满足 \(\vert x_n-c\vert <\frac1n\quad\text{且}\quad\vert f(x_n)-f(c)\vert \ge\epsilon_0 .\) (依据:第 3 步 + 选择公理式的逐项选取,这是”构造序列”的标准手法)
    5. $0\le\vert x_n-c\vert <\frac1n$ 且 $\frac1n\to0$,由夹逼定理 (Squeeze Theorem)(Lecture 8 Theorem 82)得 $\vert x_n-c\vert \to0$,即 $x_n\to c$。(依据:夹逼定理)
    6. 由第 1 步的假设($x_n\to c$ 且 $x_n\in S$),应有 $f(x_n)\to f(c)$。由 Lecture 8 Theorem 84($x_n\to x\iff\vert x_n-x\vert \to0$),$f(x_n)\to f(c)$ 等价于 $\vert f(x_n)-f(c)\vert \to0$,故该序列的极限为 $0$。(依据:第 1 步 + Theorem 84)
    7. 另一方面,第 4 步给出 $\vert f(x_n)-f(c)\vert \ge\epsilon_0>0$ 对所有 $n$ 成立。由 Lecture 8 Theorem 87(1)(若 $x_n\le y_n$ 对全体 $n$ 且两者收敛,则 $\lim x_n\le\lim y_n$),把常数列 $\{\epsilon_0\}$ 与 $\{\vert f(x_n)-f(c)\vert \}$ 相比,得 $\epsilon_0\le\lim_{n\to\infty}\vert f(x_n)-f(c)\vert $,于是 \(0=\lim_{n\to\infty}\vert f(x_n)-f(c)\vert \ge\epsilon_0>0,\) 矛盾。(依据:第 6 步与序关系的传递性)
    8. 矛盾说明反设不成立,故 $f$ 在 $c$ 连续。$\blacksquare$
  • 【证明机制解说】 这个证明的精髓全在第 (4) 部分。我们面对的是一个否定命题:”$f$ 不连续”意味着 \(\exists\epsilon_0\ \forall\delta\ \exists x\ \bigl(\vert x-c\vert <\delta\ \wedge\ \vert f(x)-f(c)\vert \ge\epsilon_0\bigr).\) 注意这个命题里有一个自由变量 $\delta$:只要 $\delta$ 一变,反例点 $x$ 就可以跟着变。我们要把它升级成一条序列——方法是把 $\delta$ 依次取成 $\delta=1,1/2,1/3,\dots$,于是得到一串反例点 $x_1,x_2,x_3,\dots$,每个都满足 $\vert x_n-c\vert <1/n$。取 $1/n$ 而不是别的,是因为我们需要一个趋于 $0$ 的量来做夹逼,而 $1/n$ 是课程里现成的、被 Archimedes 性质保证趋于 $0$ 的序列(Lecture 5 Theorem 43(i))。

    这个”把 $\forall\delta$ 的自由选择实例化成 $\delta=1/n$,从而把逐点存在性拧成一条序列“是分析中最重要的构造技巧之一。Lecture 9 的 Bolzano–Weierstrass 证明里有它的影子,Lecture 16 的极值定理证明里也用它。如果你要自己重新发明这个证明,思路应该是这样:

    “序列刻画说’每个序列都行’。反证就是找一条不行的序列。连续性的否定给了我一堆零散的坏点,每给定一个半径都能抓到一个。我需要把它们串起来让半径趋于 $0$——那就让半径本身是 $1/n$。”

    另外,正向证明里有一个漂亮的变量角色互换:收敛定义里的”$\epsilon$”位置,被我们塞进了连续性的”$\delta$”。同一句话”$\forall\epsilon>0\exists N$”,既可以读成”误差”,也可以读成”半径”。$\epsilon$ 和 $\delta$ 只是字母,它们是可以互相扮演对方的。

  • 【证明技巧总结】
    1. ”$\delta=1/n$ 造序列”(反证不连续 $\Rightarrow$ 造出坏序列)——本讲及 Lecture 16、17 反复使用。
    2. ”$\epsilon/\delta$ 角色互换”(用连续性的 $\delta$ 去当收敛定义里的 $\epsilon$)——从”函数的一致性”翻译到”序列的收敛性”的通用桥。
    3. “极限保不等式方向”($y_n\ge\epsilon_0\ \forall n\Rightarrow\lim y_n\ge\epsilon_0$)——把的 $\epsilon$ 结论升级为的 $\ge$ 结论,从而与 $0$ 相撞产生矛盾。
    4. “补上被排除的那一点”(第 2 部分:把 $0<\vert x-c\vert $ 改成 $\vert x-c\vert $ 不影响结果,因为 $x=c$ 时误差为 $0$)。

引理 15.A(三角函数的四条前置事实;源文件 Theorem 172 证明开头所列)

  • 引理陈述:本课程从单位圆的几何定义出发,把下列事实当作已知(源文件原话:”From their definitions in terms of the unit circle, we have that $\sin^2(x)+\cos^2(x)=1$. Also note the following:”):
    1. $\forall x\in\mathbb{R}$,$\vert \sin x\vert \le1$ 且 $\vert \cos x\vert \le1$;
    2. $\forall x\in\mathbb{R}$,$\vert \sin x\vert \le\vert x\vert $;
    3. 和角公式:$\sin(a+b)=\cos a\sin b+\sin a\cos b$;
    4. 和差化积公式:$\sin a-\sin b=2\sin\!\left(\dfrac{a-b}{2}\right)\cos\!\left(\dfrac{a+b}{2}\right)$;
    5. (由 1 得到的)$\sin^2x+\cos^2x=1$。

    【关于”这些事实从哪来”的诚实交代】 本课程是分析课,但它在三角函数上不重起炉灶。源文件明确写着这些事实来自”单位圆定义”,并把它们与 $\sin^2+\cos^2=1$ 并列列出,没有在 Lecture 15 里证明它们。这与 Final Assignment 首页的明确授权完全一致:

    “You may freely use any knowledge of the functions $\sin x$, $\cos x$, $e^x$ and $\log x$ (the natural logarithm) that you retained from calculus.”

    也就是说:在本课程中,三角函数的几何定义与基本恒等式是被”自由使用”的已知知识。$\vert \sin x\vert \le\vert x\vert $ 的几何来源是”弦长不超过弧长“:单位圆上角度为 $x$ 的弦长为 $2\vert \sin(x/2)\vert $,对应弧长为 $\vert x\vert $,于是 $2\vert \sin(x/2)\vert \le\vert x\vert $,即 $\vert \sin(x/2)\vert \le\vert x\vert /2$;把 $x$ 换成 $2x$ 就得到 $\vert \sin x\vert \le\vert x\vert $。这个不等式在本讲里是关键的一步(见下文定理 172 的第 5 步)。

    若要在分析体系内部严格重建三角函数(完全不依赖几何直观),标准做法是用幂级数 \(\sin x:=\sum_{n=0}^\infty\frac{(-1)^n x^{2n+1}}{(2n+1)!},\qquad \cos x:=\sum_{n=0}^\infty\frac{(-1)^n x^{2n}}{(2n)!}\) 定义它们,再从级数推出全部恒等式。这属于本教材第二卷 §11.4(Complex exponential and trigonometric functions)的内容,本课程不展开

  • 由上述事实推出的两条”补充推论”(源文件列出,此处标明为补充,并给出推导):
    • 补充推论 1(倍角/半角):$\cos 2x=1-2\sin^2x$,等价地 $\sin^2x=\dfrac{1-\cos 2x}{2}$。 推导:由和角公式的”$\cos$ 版本”。先用事实 3 导出 $\cos$ 的和角公式:对任意 $t$ 有 $\cos t=\sin(t+\pi/2)$(这是单位圆定义中 $\cos,\sin$ 相差 $\pi/2$ 相位的直接结果,也是源文件证明 $\cos$ 连续时所使用的等式)。于是 \(\cos(x+y)=\sin\!\left(x+y+\tfrac{\pi}{2}\right)=\sin\!\left(x+\left(y+\tfrac{\pi}{2}\right)\right)=\cos x\sin\!\left(y+\tfrac{\pi}{2}\right)+\sin x\cos\!\left(y+\tfrac{\pi}{2}\right)=\cos x\cos y-\sin x\sin y,\) 最后一步用了 $\sin(y+\pi/2)=\cos y$ 与 $\cos(y+\pi/2)=-\sin y$。取 $y=x$ 得 $\cos 2x=\cos^2x-\sin^2x$;再由事实 5 的 $\cos^2x=1-\sin^2x$,得 $\cos 2x=1-2\sin^2x$。$\blacksquare$ 数值核对python3):$x=1.2$ 时 $\cos 2.4=-0.7373937155$,$1-2\sin^2 1.2=-0.7373937155$。✓
    • 补充推论 2($\cos$ 的和差化积): \(\cos x-\cos c=-2\sin\!\left(\frac{x+c}{2}\right)\sin\!\left(\frac{x-c}{2}\right).\) 推导:$\cos x-\cos c=\sin(x+\pi/2)-\sin(c+\pi/2)$,对事实 4 取 $a=x+\pi/2,\ b=c+\pi/2$: \(=2\sin\!\left(\frac{x-c}{2}\right)\cos\!\left(\frac{x+c}{2}+\frac{\pi}{2}\right)=2\sin\!\left(\frac{x-c}{2}\right)\cdot\left(-\sin\!\left(\frac{x+c}{2}\right)\right),\) 即得。$\blacksquare$ 数值核对python3):$x=1.0,c=0.5$ 时两式之差为 $0.0$(机器精度内);$x=3.0,c=2.0$ 时为 $1.1\times10^{-16}$。✓
  • 【证明机制解说】 值得停下来看清一件事:源文件把 $\vert \sin x\vert \le\vert x\vert $ 与和角公式并列成”注意以下事实”,而不是当成定理去证。这是刻意的课程设计:Lecture 15 的目标不是重建三角函数,而是展示连续性的序列/拼装机器有多强。把三角恒等式当”零件”,把连续性定理当”机床”——这正是为什么 Lecture 14–15 之后,你可以一口气宣布”$\cos(1/x^2)^2$ 在 $(0,\infty)$ 上连续”(源文件 Example 176(ii))而不写任何 $\epsilon$-$\delta$

  • 【证明技巧总结】
    1. “承认零件、专注装配”:分析课允许你把初等函数的初等性质当作既得知识(Final Assignment 明确授权),把精力放在逻辑结构上。
    2. “弦长 ≤ 弧长” 是 $\vert \sin x\vert \le\vert x\vert $ 的唯一几何来源——记住这个图像,比记公式可靠。
    3. ”$\cos t=\sin(t+\pi/2)$” 是把 $\sin$ 的全部结果免费搬运给 $\cos$ 的传送带(源文件正是这么做的)。

定理 172($\sin$ 与 $\cos$ 在 $\mathbb{R}$ 上连续;源文件 Theorem 172)

  • 定理陈述:函数 $f(x)=\sin x$ 与 $g(x)=\cos x$ 都在 $\mathbb{R}$ 上连续。

  • 证明策略:目标是控制 $\vert \sin x-\sin c\vert $。直接摊开 $\epsilon$-$\delta$ 无从下手,因为 $\sin$ 本身没有代数表达式。关键动作是”和差化积”:把 $\sin x-\sin c$ 写成两个因子的乘积 \(2\sin\!\left(\frac{x-c}{2}\right)\cos\!\left(\frac{x+c}{2}\right).\) 这个分解的好处是一个因子只含 $x-c$(可控),另一个因子的绝对值被 $1$ 卡住(一致有界)。于是乘积被”$2\times$(可控量)$\times1$”控制住,而可控量 $\vert \sin((x-c)/2)\vert $ 又被 $\vert x-c\vert /2$ 控制。三块拼起来恰好给出 $\vert x-c\vert $,于是 $\delta=\epsilon$ 就够了。

这个”拆成一个可控因子乘一个一致有界因子“的结构,与 Lecture 8 证明乘积极限 $\lim x_ny_n=xy$ 时把 $x_ny_n-xy$ 拆成 $(x_n-x)y_n+(y_n-y)x$、再用”$\{y_n\}$ 有界”吸收掉 $\vert x_n-x\vert $ 前面的系数,是同一个思想。请看下表对照:

步骤Lecture 8 乘积极限Lecture 15 $\sin$ 连续
目标$\lvert x_ny_n-xy\rvert$$\lvert\sin x-\sin c\rvert$
关键变形加一项减一项:$(x_n-x)y_n+(y_n-y)x$和差化积:$2\sin\frac{x-c}{2}\cos\frac{x+c}{2}$
有界因子$\exists B\ge0,\ \lvert y_n\rvert\le B$(因收敛必有界)$\left\lvert\cos\frac{x+c}{2}\right\rvert\le1$(因余弦值域在 $[-1,1]$)
小因子$\lvert x_n-x\rvert\to0$$\left\lvert\sin\frac{x-c}{2}\right\rvert\le\frac{\lvert x-c\rvert}{2}$
结论乘积 $\to0$,用夹逼定理乘积 $\le\lvert x-c\rvert<\delta=\epsilon$
  • 逐步推导

    1. 设 $c\in\mathbb{R}$ 任意固定。(依据:要证在每一点连续,即 $\forall c$)
    2. 设 $\epsilon>0$。(依据:$\forall\epsilon>0\exists\delta$)
    3. 取 $\delta=\epsilon$。(依据:构造;注意这个 $\delta$ 不依赖 $c$,这是后面要强调的)
    4. 设 $x\in\mathbb{R}$ 且 $\vert x-c\vert <\delta$。(依据:连续性定义的条件部分)
    5. 和差化积:由引理 15.A 事实 4,取 $a=x,\ b=c$: \(\sin x-\sin c=2\sin\!\left(\frac{x-c}{2}\right)\cos\!\left(\frac{x+c}{2}\right).\) (依据:和差化积公式)
    6. 取绝对值(利用 $\vert uv\vert =\vert u\vert \vert v\vert $,源文件 Lecture 5 Theorem 50(3)): \(\vert \sin x-\sin c\vert =\left\vert 2\sin\!\left(\frac{x-c}{2}\right)\cos\!\left(\frac{x+c}{2}\right)\right\vert =2\left\vert \sin\!\left(\frac{x-c}{2}\right)\right\vert \cdot\left\vert \cos\!\left(\frac{x+c}{2}\right)\right\vert .\) (依据:绝对值的乘法性质)
    7. 下界界住余弦因子:对任意实数 $u=\frac{x+c}{2}$,由引理 15.A 事实 1, \(\left\vert \cos\!\left(\frac{x+c}{2}\right)\right\vert \le1 .\) (依据:$\vert \cos u\vert \le1$)
    8. 界住正弦因子:对 $u=\frac{x-c}{2}$,由引理 15.A 事实 2, \(\left\vert \sin\!\left(\frac{x-c}{2}\right)\right\vert \le\left\vert \frac{x-c}{2}\right\vert =\frac{\vert x-c\vert }{2}.\) (依据:$\vert \sin u\vert \le\vert u\vert $)
    9. 合并第 6–8 步: \(\vert \sin x-\sin c\vert \le2\cdot\frac{\vert x-c\vert }{2}\cdot1=\vert x-c\vert .\) (依据:第 7、8 步代入第 6 步;乘法的不等式保序性,因为两个因子都非负)
    10. 代入 $\delta$:$\vert x-c\vert <\delta=\epsilon$。(依据:第 3、4 步)
    11. 故 $\vert \sin x-\sin c\vert <\epsilon$。(依据:第 9、10 步的传递性)
    12. 由于 $c$ 任意,$\sin$ 在 $\mathbb{R}$ 上连续。$\blacksquare$

    源文件此处写作 \(\vert \sin x-\sin c\vert =2\left\vert \sin\frac{x-c}{2}\cos\frac{x+c}{2}\right\vert \le2\left\vert \sin\frac{x-c}{2}\right\vert \le2\frac{\vert x-c\vert }{2}=\vert x-c\vert <\delta=\epsilon .\) 中间的第二步(丢掉 $\vert \cos\vert $ 因子)用的就是 $\vert \cos\vert \le1$,第三步用的就是 $\vert \sin u\vert \le\vert u\vert $。与上面第 6–9 步完全一致,只是省略了拆开写的中间量。

    (2) $\cos$ 的连续性——源文件的路线(用复合 + 序列刻画)。

    1. 回忆恒等式 $\forall x\in\mathbb{R}$,$\cos x=\sin(x+\pi/2)$。(依据:单位圆定义)
    2. 设 $c\in\mathbb{R}$,设 $\{x_n\}$ 满足 $x_n\to c$。(依据:准备使用序列刻画 Theorem 171(3))
    3. 由收敛序列的加法律(Lecture 8),$x_n+\pi/2\to c+\pi/2$。(依据:$\lim(x_n+a)=\lim x_n+a$)
    4. 第 1 步已证 $\sin$ 在 $\mathbb{R}$ 上连续,故由序列刻画, \(\lim_{n\to\infty}\sin\!\left(x_n+\frac{\pi}{2}\right)=\sin\!\left(c+\frac{\pi}{2}\right).\) (依据:Theorem 171(3) 的正向)
    5. 于是 \(\lim_{n\to\infty}\cos x_n=\lim_{n\to\infty}\sin\!\left(x_n+\frac{\pi}{2}\right)=\sin\!\left(c+\frac{\pi}{2}\right)=\cos c .\) (依据:第 1、3、4 步)
    6. 由序列刻画(Theorem 171(3) 的反向),$\cos$ 在 $c$ 连续;$c$ 任意,故 $\cos$ 在 $\mathbb{R}$ 上连续。$\blacksquare$

    (3) $\cos$ 的连续性——直接的和差化积路线(补充写法,与原路线等价)。

    1. 设 $c\in\mathbb{R}$,$\epsilon>0$,取 $\delta=\epsilon$。(依据:构造)
    2. 设 $\vert x-c\vert <\delta$。由补充推论 2, \(\cos x-\cos c=-2\sin\!\left(\frac{x+c}{2}\right)\sin\!\left(\frac{x-c}{2}\right).\) (依据:补充推论 2)
    3. 取绝对值并用 $\vert {-1}\vert =1$、$\vert uv\vert =\vert u\vert \vert v\vert $: \(\vert \cos x-\cos c\vert =2\left\vert \sin\!\left(\frac{x+c}{2}\right)\right\vert \cdot\left\vert \sin\!\left(\frac{x-c}{2}\right)\right\vert .\) (依据:绝对值的乘法性质,Lecture 5 Theorem 50(2)(3))
    4. 由 $\vert \sin u\vert \le1$(引理 15.A 事实 1)与 $\vert \sin u\vert \le\vert u\vert $(事实 2): \(\vert \cos x-\cos c\vert \le2\cdot1\cdot\frac{\vert x-c\vert }{2}=\vert x-c\vert <\delta=\epsilon .\) (依据:与 $\sin$ 的情形完全平行的两步估计)
    5. 故 $\cos$ 在 $c$ 连续,$c$ 任意故在 $\mathbb{R}$ 上连续。$\blacksquare$
  • 【证明机制解说】 这个证明的”灵光一现”在于:我们不必知道 $\sin$ 具体是多少,只需要知道它”差得不多”。而”差得不多”的信息恰好可以被和差化积打包成”一半的差角”——角减半是个压缩动作,$\vert x-c\vert $ 变成 $\vert x-c\vert /2$,再乘上前面的系数 $2$ 恰好抵消,只剩下 $\cos$ 因子需要被封顶,而它的封顶值是现成的 $1$。

    如果你要自己重新发明它,思考路径是这样的:

    “我要估 $\vert \sin x-\sin c\vert $。$\sin$ 没有代数表达式,但我有一堆恒等式。哪个恒等式能把变成乘积?——和差化积。为什么我要乘积?因为我需要其中一个因子随 $x\to c$ 变小,另一个因子不随 $x$ 乱跑。$\sin((x-c)/2)$ 随 $x\to c$ 变小,$\cos((x+c)/2)$ 反正有界。完美。”

    这正是“小 × 有界 = 小”这条黄金法则的又一次胜利。请把这条法则背下来,它在 Lecture 8(乘积极限)、Lecture 15(三角函数连续)、Lecture 21(黎曼积分估计)、Lecture 24(Weierstrass M-判别法)里会以不同面目反复出现。

    下面是这个证明的分解结构图——把 $\vert \sin x-\sin c\vert $ 看成两棵”因子树”,一棵负责变小,一棵负责封顶:

   |sin x - sin c|
          |
          |  和差化积(引理 15.A 事实 4)
          v
   2 · | sin((x-c)/2) | · | cos((x+c)/2) |
        \_______/          \________/
            |                   |
   "可控因子"(随 x→c 变小)  "有界因子"(被 1 封顶)
            |                   |
   |sin u| <= |u|          |cos u| <= 1
            |                   |
            v                   v
        |x-c| / 2              1
            \_______  _______/
                    \/
   2 · (|x-c|/2) · 1  =  |x-c|   <  delta = epsilon
                             ^         ^
                             |         |
                  连续性定义的条件    我们选的 δ(不依赖 c!)

   与 Lecture 8 乘积极限证明的同构关系:
     |x_n y_n - x y| = |(x_n-x) y_n + (y_n-y) x|
                        \_____/   \__/   \_____/  \_/
                        可控       有界    可控     有界
                        (→0)   (|y_n|≤B)(→0) (|x|固定)
   ---------------------------------------------------------
   共同骨架:把目标量拆成一个"会变小的因子"×"被封顶的因子",
             再乘上一个常数。变小的部分负责吃掉 epsilon,
             有界的部分保证它不会被放大到失控。

另一个值得注意的机制是源文件处理 $\cos$ 的方式:它没有重新做一遍估计,而是用 $\cos x=\sin(x+\pi/2)$ 把一个新问题归约到一个旧问题。这是数学中最高效的思维模式——“能不能不改证明,只改问题?”

  • 【证明技巧总结】
    1. “和差化积”:证三角函数的连续性 = 和差化积 + 把 $\vert \sin u\vert \le\vert u\vert $ 用上。$\sin$ 与 $\cos$ 各自走一遍(或把 $\cos$ 归约到 $\sin$)。
    2. “小 × 有界”:$2\left\vert \sin\frac{x-c}{2}\right\vert \left\vert \cos\frac{x+c}{2}\right\vert \le 2\cdot\frac{\vert x-c\vert }{2}\cdot1$。与 Lecture 8 乘积极限同构。
    3. ”$\delta=\epsilon$ 而且不依赖 $c$”:算出来的 $\delta$ 恰好只含 $\epsilon$。这不是巧合,而是副产品——Lipschitz 连续性
    4. “归约而非重做”:$\cos x=\sin(x+\pi/2)$ 让 $\cos$ 的结果免费得到。
    5. “序列刻画搬运加法律”:$x_n\to c\Rightarrow x_n+a\to c+a$ 用的是 Lecture 8 的序列极限运算,而不是 $\epsilon$-$\delta$。
  • 【副产品:Lipschitz 连续(前向引用)】 第 9 步给出的是更强的结论: \(\vert \sin x-\sin c\vert \le 1\cdot\vert x-c\vert \quad\text{与}\quad\vert \cos x-\cos c\vert \le1\cdot\vert x-c\vert ,\qquad \forall x,c\in\mathbb{R}.\) 也就是说 $\sin$ 与 $\cos$ 都是 Lipschitz 连续 的,Lipschitz 常数 $L=1$。这件事将在下面几处被反复使用:

    • Lecture 17:一致连续 (uniform continuity) 的正式定义要求 $\delta$ 不许依赖 $c$,而本讲的 $\delta=\epsilon$ 已经满足这一点;
    • Assignment 9 第 4 题:Lipschitz $\Rightarrow$ 一致连续,取 $\delta=\epsilon/L$;
    • Assignment 9 第 5(a) 题:”Prove that $f(x)=\cos x$ is Lipschitz continuous on $\mathbb{R}$” —— 正是本讲的副产品。

现在就把它记下来:本讲顺手证明了 Assignment 9 第 5(a) 题

定理 173(多项式处处连续;源文件 Theorem 173)

  • 定理陈述:设 $f$ 是多项式,即 $f(x)=a_dx^d+\cdots+a_1x+a_0$($a_0,\dots,a_d\in\mathbb{R}$,$d\in\mathbb{N}\cup\{0\}$)。则 $f$ 在整个 $\mathbb{R}$ 上连续。

  • 证明策略:不再做任何估计,而是把多项式看成”常数函数与恒等函数的反复乘加”,然后用序列刻画 + Lecture 8 的极限运算法则一次性升级。这是”拼装式证明“的第一次示范。

  • 逐步推导
    1. 设 $c\in\mathbb{R}$,设 $\{x_n\}$ 满足 $x_n\to c$。(依据:准备用序列刻画 Theorem 171(3))
    2. 由 Lecture 8 中”$\lim x_n^k=(\lim x_n)^k$”(可由乘法律对 $k$ 归纳证明),$\forall k$,$x_n^k\to c^k$。(依据:序列乘法的归纳)
    3. 由数乘法则,$a_kx_n^k\to a_kc^k$。(依据:Lecture 8 数乘法则)
    4. 由加法律(对有限项反复使用), \(\lim_{n\to\infty}f(x_n)=\lim_{n\to\infty}\left(a_dx_n^d+\cdots+a_1x_n+a_0\right)=a_dc^d+\cdots+a_1c+a_0=f(c).\) (依据:Lecture 8 极限的加法与数乘法则,有限次使用)
    5. 由序列刻画,$f$ 在 $c$ 连续;$c$ 任意,故 $f$ 在 $\mathbb{R}$ 上连续。$\blacksquare$
  • 【证明机制解说】 源文件此处跳过了”$x_n^k\to c^k$”的说明,直接写 $\lim(a_dx_n^d+\cdots)=a_d(\lim x_n)^d+\cdots$。这一步用到的正是 Lecture 8 建立的极限四则运算。要注意的是:“有限次”这个限定是必需的。若求和有无穷多项,加法律不保证可以搬进极限里面——这正是 Lecture 24 要花整讲讨论的”极限能否交换”问题。

  • 【证明技巧总结】
    1. “把函数表达式翻译成一串极限运算”:多项式 = 有限次加法 + 乘法 + 数乘,每一种都在 Lecture 8 里被证明过对极限兼容。
    2. “有限 vs 无限是分水岭”:四则运算可以搬进极限,是因为只用有限次;无限次的和需要一致收敛(Lecture 24)。

定理 174(连续函数的和、积、商;源文件 Theorem 174)

  • 定理陈述:若 $f:S\to\mathbb{R}$、$g:S\to\mathbb{R}$ 在 $c\in S$ 连续,则
    1. $f+g$ 在 $c$ 连续;
    2. $f\cdot g$ 在 $c$ 连续;
    3. 且若 $\forall x\in S,\ g(x)\neq0$,则 $\dfrac{f}{g}$ 在 $c$ 连续。
  • 证明策略:源文件写”These proofs are left to the reader”(留给读者)。方法是序列刻画 + Lecture 8 的相应法则,逐条照搬。下面补全。

  • 逐步推导
    1. 设 $\{x_n\}$ 满足 $x_n\in S$、$x_n\to c$。(依据:序列刻画)
    2. 由 $f,g$ 在 $c$ 连续及 Theorem 171(3):$f(x_n)\to f(c)$ 且 $g(x_n)\to g(c)$。(依据:Theorem 171(3) 正向)
    3. 第 1 条:由 Lecture 8 加法律,$(f+g)(x_n)=f(x_n)+g(x_n)\to f(c)+g(c)=(f+g)(c)$。再由 Theorem 171(3) 反向得 $f+g$ 在 $c$ 连续。$\blacksquare$
    4. 第 2 条:由 Lecture 8 乘法律,$(f\cdot g)(x_n)=f(x_n)g(x_n)\to f(c)g(c)=(f\cdot g)(c)$。再由 Theorem 171(3) 反向得结论。$\blacksquare$
    5. 第 3 条:由假设 $g(c)\neq0$(因 $c\in S$ 且 $g$ 处处非零),且 $g(x_n)\neq0$ 对全体 $n$。由 Lecture 8 除法律(其条件正是 $y\neq0$ 且 $y_n\neq0$), \(\left(\frac fg\right)(x_n)=\frac{f(x_n)}{g(x_n)}\to\frac{f(c)}{g(c)}=\left(\frac fg\right)(c).\) 再由 Theorem 171(3) 反向得结论。$\blacksquare$
  • 【证明机制解说】 这里的”读者作业”之所以简单,是因为连续性的序列刻画把所有工作外包给了 Lecture 8。如果不用序列刻画,你要面对的是”给定 $\epsilon$ 找 $\delta$”,还要处理 $\vert f(x)g(x)-f(c)g(c)\vert $ 的”加一项减一项”——那是 Lecture 8 已经做过一遍的苦活。Theorem 171(3) 的全部价值,就是让连续性的证明可以复用序列极限的证明。

  • 【证明技巧总结】
    1. “连续性的代数运算 = 序列极限的代数运算 + 序列刻画”——两行搞定。
    2. 商的情形必须检查分母:既要有 $g(c)\neq0$,也要有 $g(x_n)\neq0$。源文件在第 3 条里明确写了假设 $\forall x\in S,\ g(x)\neq0$,正是为了喂饱 Lecture 8 除法律的两个前提。

定理 175(复合保持连续;源文件 Theorem 175)

  • 定理陈述:设 $A,B\subset\mathbb{R}$,$f:B\to\mathbb{R}$,$g:A\to B$。若 $g$ 在 $c\in A$ 连续且 $f$ 在 $g(c)\in B$ 连续,则 $f\circ g$ 在 $c$ 连续。

  • 证明策略:这是序列刻画的”三行证明”典范:$x_n\to c$ 推 $g(x_n)\to g(c)$,再推 $f(g(x_n))\to f(g(c))$。

  • 逐步推导
    1. 设 $\{x_n\}$ 满足 $x_n\in A$、$x_n\to c$。(依据:序列刻画)
    2. 由 $g$ 在 $c$ 连续及 Theorem 171(3):$g(x_n)\to g(c)$。(依据:Theorem 171(3) 正向)
    3. 注意 $g(x_n)\in B$ 且 $g(c)\in B$,且 $f$ 在 $g(c)$ 连续,故由 Theorem 171(3) 正向:$f(g(x_n))\to f(g(c))$。(依据:Theorem 171(3) 正向,应用于以 $g(c)$ 为极限的序列 $\{g(x_n)\}$)
    4. 于是 $(f\circ g)(x_n)\to(f\circ g)(c)$;由 Theorem 171(3) 反向,$f\circ g$ 在 $c$ 连续。$\blacksquare$
  • 【证明机制解说】 这个证明看起来”什么都没做”,其实它示范了复合的传递性:连续性像接力棒一样穿过两层函数。源文件只用了两行,因为序列刻画把”$\epsilon$-$\delta$ 的两级嵌套”(这一般是复合证明中最容易出错的地方)完全藏进了定理 171。这正是抽象的价值:一旦定理被证明,后续使用就变得平凡。

  • 【证明技巧总结】
    1. “$g(x_n)$ 当作新序列”:复合的序列证明只需把中间序列看成”下一段推理的输入序列”。
    2. “链条式传递”:连续 $\to$ 连续 $\to$ 连续,每一步都调用同一个定理。

例 176(用拼装法免去 $\epsilon$-$\delta$ 大证明;源文件 Example 176)

  • 例 176(i):$\dfrac{1}{x^2}$ 在 $(0,\infty)$ 上连续。 推导:$g(x)=x^2$ 是多项式,由 Theorem 173 在 $\mathbb{R}$ 上连续,特别在 $(0,\infty)$ 上连续;在 $(0,\infty)$ 上 $g(x)=x^2\neq0$;由 Theorem 174(3),$\frac1g(x)=\frac1{x^2}$ 在 $(0,\infty)$ 上连续。$\blacksquare$

  • 例 176(ii):$\left(\cos\dfrac1{x^2}\right)^2$ 在 $(0,\infty)$ 上连续。 推导:设 $h(x)=1/x^2$,由 (i) 在 $(0,\infty)$ 连续;$\cos$ 由 Theorem 172 在 $\mathbb{R}$ 上连续。它们的复合 $k(x)=\cos(1/x^2)$ 由 Theorem 175 在 $(0,\infty)$ 上连续。再由 Theorem 174(2),$k^2(x)=\left(\cos\frac1{x^2}\right)^2$ 在 $(0,\infty)$ 上连续。$\blacksquare$ 对照:若直接从定义出发,你需要对每个 $c>0$ 估计 $\left\vert \cos\frac1{x^2}-\cos\frac1{c^2}\right\vert $ 并凑出一个 $\delta$(实际上由 $\vert \cos u-\cos v\vert \le\vert u-v\vert $ 与 $\left\vert \frac1{x^2}-\frac1{c^2}\right\vert =\frac{\vert x-c\vert \vert x+c\vert }{x^2c^2}$ 配合 $\min\{\cdots\}$ 技巧可以做到,但明显更繁琐)。这就是”定理拼装”的威力。

  • 【证明机制解说】 Example 176 的存在本身就是本讲的教学信息:Lecture 13–14 花了大力气把 $\epsilon$-$\delta$ 一砖一瓦砌好;Lecture 15 起,你要开始住进这栋房子,而不是继续搬砖。

问题 177(源文件 Question 177)

“Let $f:\mathbb{R}\to\mathbb{R}$ be a function. Does there exists a point $c\in\mathbb{R}$ such that $f$ is continuous at $c$?”

源文件紧接着用 Theorem 178 给出答案:不一定存在。这个提问的作用是制造张力——在直觉上,”函数”似乎总该有点连续的地方(哪怕是分段函数也只在”接缝”处断)。Dirichlet 函数把这个直觉击碎。

定理 178(Dirichlet 函数处处不连续;源文件 Theorem 178)

  • 定理陈述:函数 \(f(x)=\begin{cases}1,&x\in\mathbb{Q}\\0,&x\in\mathbb{R}\setminus\mathbb{Q}\end{cases}\) 在 $\mathbb{R}$ 上并非处处连续。(源文件的措辞是 “is not continuous on all of $\mathbb{R}$”;但下面给出的证明实际上给出了更强的结论:$f$ 在每一个 $c\in\mathbb{R}$ 处都不连续。)这个函数被称为 Dirichlet 函数

  • 证明策略:用序列刻画(Theorem 171(3) 的逆向使用)+ 稠密性(Lecture 5 Theorem 43)。要对每个 $c$ 制造一条 $x_n\to c$ 但 $f(x_n)\not\to f(c)$ 的序列。武器是:$c$ 附近永远有理数,也永远有无理数。因此分成两个情形:

    • 若 $c$ 是有理点,就朝它逼近一列无理数:这些点的函数值恒为 $0$,而 $f(c)=1$;
    • 若 $c$ 是无理点,就朝它逼近一列有理数:这些点的函数值恒为 $1$,而 $f(c)=0$。

    两种情形都会得到”像序列的极限 $\neq f(c)$”,于是违反 Theorem 171(3)。

    【关于稠密性的引用与源文件的排版说明】 源文件直接写 “For each $n\in\mathbb{N}$, $\exists x_n\notin\mathbb{Q}$ such that $c<x_n<c+1/n$”,没有解释存在性。它的依据是:

    • 有理数稠密性:Lecture 5 Theorem 43(ii)——”If $x,y\in\mathbb{R}$ and $x<y$ then $\exists r\in\mathbb{Q}$ such that $x<r<y$”;
    • 无理数稠密性Assignment 3 第 1 题——”Suppose $x,y\in\mathbb{R}$ and $x<y$. Prove that there exists $i\in\mathbb{R}\setminus\mathbb{Q}$ such that $x<i<y$”。

    有了这两条,取 $x=c$、$y=c+1/n$ 即可得 $x_n\in(c,c+1/n)$ 且具有所需的有理/无理属性。

    【源文件的一处笔误,必须提醒】 提取出的源文件在证明两个情形时把函数值写反了:情形 1($c\in\mathbb{Q}$)写成 “$\exists x_n\notin\mathbb{Q}$ … but $f(x_n)=1$ for all $n$ so $1=\lim f(x_n)\neq f(c)=0$”;情形 2($c\notin\mathbb{Q}$)写成 “$\exists x_n\in\mathbb{Q}$ … $f(x_n)=0$ … $0=\lim f(x_n)\neq f(c)=1$”。按定义,有理点处函数值为 $1$,无理点处为 $0$,所以这两句里的 $1$ 与 $0$ 恰好互换。下面给出修正后的证明。笔误不影响结论(两个情形照样各自矛盾),但读者若照着原文字面抄写会写出自相矛盾的句子,特此标注。

  • 逐步推导

    1. 设 $c\in\mathbb{R}$ 任意。(依据:要证”在每一点都不连续”)
    2. 情形 A:$c\in\mathbb{Q}$。
      1. 对每个 $n\in\mathbb{N}$,区间 $(c,\ c+1/n)$ 非空。由无理数稠密性(Assignment 3 第 1 题),$\exists x_n\in\mathbb{R}\setminus\mathbb{Q}$ 使得 $c<x_n<c+1/n$。(依据:无理数稠密性)
      2. 由 $f$ 的定义,$f(x_n)=0$ 对全体 $n$ 成立。(依据:$x_n\notin\mathbb{Q}$)
      3. $0<x_n-c<1/n$,故 $\vert x_n-c\vert <1/n$。因 $1/n\to0$,由夹逼定理 $x_n\to c$。(依据:夹逼定理,Lecture 8 Theorem 82)
      4. 若 $f$ 在 $c$ 连续,则由 Theorem 171(3),$f(x_n)\to f(c)$。但 $f(x_n)\equiv0$,故 $f(x_n)\to0$;而 $f(c)=1$(因 $c\in\mathbb{Q}$)。于是由极限的唯一性(Lecture 6)必须 $0=1$,矛盾。(依据:Theorem 171(3) + 极限唯一性)
      5. 故 $f$ 在 $c$ 不连续。$\blacksquare$
    3. 情形 B:$c\notin\mathbb{Q}$。
      1. 对每个 $n\in\mathbb{N}$,由有理数稠密性(Lecture 5 Theorem 43(ii)),$\exists x_n\in\mathbb{Q}$ 使得 $c<x_n<c+1/n$。(依据:$\mathbb{Q}$ 稠密性)
      2. 由 $f$ 的定义,$f(x_n)=1$ 对全体 $n$ 成立。(依据:$x_n\in\mathbb{Q}$)
      3. 同上,$x_n\to c$。(依据:夹逼定理)
      4. 若 $f$ 在 $c$ 连续,则由 Theorem 171(3),$f(x_n)\to f(c)$。但 $f(x_n)\equiv1$,故 $f(x_n)\to1$;而 $f(c)=0$(因 $c\notin\mathbb{Q}$)。于是必须 $1=0$,矛盾。(依据:Theorem 171(3) + 极限唯一性)
      5. 故 $f$ 在 $c$ 不连续。$\blacksquare$
    4. 两种情形穷尽了 $c\in\mathbb{R}$ 的所有可能($\mathbb{R}=\mathbb{Q}\cup(\mathbb{R}\setminus\mathbb{Q})$,且两者不交),故 $f$ 在每一个 $c\in\mathbb{R}$ 处都不连续。$\blacksquare$
  • 用 $\epsilon$-$\delta$ 语言重述同一个结论(补充,等价写法):对任意 $c$ 与任意 $\delta>0$,
    • 在 $(c-\delta,c+\delta)$ 中取一个有理点 $q$,则 $\vert q-c\vert <\delta$ 但 $\vert f(q)-f(c)\vert $ 等于 $1$ 或 $0$;
    • 再取一个无理点 $i$,则 $\vert i-c\vert <\delta$ 但 $\vert f(i)-f(c)\vert $ 等于另一个值;
    • 于是 $\max\{\vert f(q)-f(c)\vert ,\ \vert f(i)-f(c)\vert \}=1$。

    换句话说,取 $\epsilon_0=1$ 就在每个点上都成立(”坏的 $\epsilon_0$”可以选得与 $c$ 无关!): \(\forall c\in\mathbb{R},\ \ \exists\epsilon_0=1\ \ \text{使得}\ \ \forall\delta>0\ \exists x\in\mathbb{R}:\ \ \vert x-c\vert <\delta\ \ \text{且}\ \ \vert f(x)-f(c)\vert \ge1 .\) 数值验证python3):取 $c=\sqrt2$,$\delta=0.001$ 时 $140/99$ 满足 $\vert 140/99-\sqrt2\vert =7.2148\times10^{-5}<0.001$ 且 $\vert f(140/99)-f(\sqrt2)\vert =\vert 1-0\vert =1\ge\epsilon_0$;取 $\delta=10^{-6}$ 时 $1393/985$ 满足 $\vert 1393/985-\sqrt2\vert =3.6440\times10^{-7}<10^{-6}$,同样 $\vert f(1393/985)-f(\sqrt2)\vert =1$。✓

  • 【证明机制解说】 为什么这个函数如此重要?三个层面:

    1. 它是”反例工厂”(counterexample factory)。数学史上一大批重要概念都是被病态函数逼出来的:Dirichlet 函数在 Lecture 21 的语境下不是黎曼可积的(因为上和与下和的差恒为区间长度,无法被压到任意小——这一结论请以 Lecture 21 的正式内容为准,此处仅作前向提示);它也没有原函数(在任何区间上都不满足达布性质);它是”不连续点集可以极其庞大”的最极端例子。更重要的是,它证明了一个逻辑事实:“函数处处不连续”是可以实现的,因此”连续”是一个真正的限制,不是自动成立的性质。这就是 Question 177 的答案。
    2. 它是”稠密性是关键武器”的展示台。整个证明只用了一件事:$\mathbb{Q}$ 与 $\mathbb{R}\setminus\mathbb{Q}$ 都在 $\mathbb{R}$ 中稠密(Lecture 5 Theorem 43(ii) 与 Assignment 3 第 1 题)。如果把定义域换成 $\mathbb{Z}$,$f$ 会在每一点都连续(因为 $\mathbb{Z}$ 的点都是孤立点,Theorem 171(1) 直接给出连续性)。同一个公式,换一个定义域,连续性彻底反转。
    3. 它是”序列刻画比 $\epsilon$-$\delta$ 更好用”的实证。用 $\epsilon$-$\delta$ 写这个证明,你要反复做”取点 $q\in(c-\delta,c+\delta)\cap\mathbb{Q}$”这种操作;用序列刻画,你只需要”造一条序列,它的像序列有错误的极限”,一切矛盾由极限唯一性(Lecture 6)自动完成。这种”用唯一性制造矛盾”的模式,是本讲最值得带走的证明范式。

    如果你要自己重新发明这个证明,思路是:

    “我要让 $f$ 在每个点都不连续。连续要求’输入靠近 $\Rightarrow$ 输出靠近’。这里的输出只有两个可能值 $0,1$,任何跨越它们的变化都是距离 $1$ 的大变化。所以我只要保证:在 $c$ 的任意小邻域里,$f$ 同时取到 $0$ 和 $1$。而在实数轴上,任意小邻域里同时有有理数和无理数——这正是稠密性。”

  • 【证明技巧总结】
    1. “两类别 + 互相逼近”:把点按属性分成两类(有理/无理),每类都用对方的序列去逼近,得到”值不动、位置在动”的像序列。
    2. “取 $\epsilon_0=1$”:当一个函数的取值集合是 $\{0,1\}$ 时,最自然的”坏预算”就是 $1$。
    3. “用极限唯一性制造矛盾”:$f(x_n)\to0$ 与 $f(x_n)\to1$ 不能同真。
    4. “稠密性 = 无处可逃”:只要某个集合在两个互补方向上稠密,任何邻域都会露出它的成员。这个模式在 Lecture 16(介值定理的证明里用中点的两侧取点)和 Lecture 21 都会重现。

补充例 15.B(Dirichlet 函数的两个经典变体)

【补充】 源文件没有包含这两个变体,但它们与 Theorem 178 是同一思想的延伸,且Assignment 8 第 2 题Assignment 8 第 3 题(Exercise 3.2.11)正好在这个主题上训练,所以在此给出,并标明为补充。

变体一(Assignment 8 第 2 题,源文件作业原文) \(f(x)=\begin{cases}0,&x\in\mathbb{Q}\\2x,&x\notin\mathbb{Q}\end{cases}\)

  • 结论:$f$ 在 $x=0$ 连续,在 $x=1$ 不连续
  • $x=0$ 连续性的完整证明($\epsilon$-$\delta$ 直接做法)
    1. 设 $\epsilon>0$,取 $\delta=\epsilon/2$。(依据:构造,我们要用 $\vert 2x\vert =2\vert x\vert $ 的形式)
    2. 设 $\vert x-0\vert <\delta$。分两种情形:
      • 若 $x\in\mathbb{Q}$:$\vert f(x)-f(0)\vert =\vert 0-0\vert =0<\epsilon$。
      • 若 $x\notin\mathbb{Q}$:$\vert f(x)-f(0)\vert =\vert 2x-0\vert =2\vert x\vert <2\delta=\epsilon$。
    3. 两种情形都有 $\vert f(x)-f(0)\vert <\epsilon$,故 $f$ 在 $0$ 连续。$\blacksquare$ 具体数字验算:$\epsilon=0.01\Rightarrow\delta=0.005$。取 $x=0.0049$(无理数,例如 $0.0049$ 的小数有限展开是有理数——严格地说我们应取 $x=0.0049+\sqrt2\times10^{-9}$ 之类的无理数;数值上 $\vert f(x)-0\vert =2\times0.0049=0.0098<0.01$ ✓)。取 $x=0.001$ 时 $\vert f(x)\vert =0.002<0.01$ ✓。(python3 验算:2*0.0049=0.00982*0.001=0.002。)
  • $x=1$ 不连续的证明(序列刻画)
    1. 对每个 $n$,由无理数稠密性取 $x_n\notin\mathbb{Q}$ 满足 $1<x_n<1+1/n$。(依据:Assignment 3 第 1 题)
    2. 则 $x_n\to1$ 而 $f(x_n)=2x_n\to2$。(依据:夹逼 + Lecture 8 数乘法则)
    3. 但 $f(1)=0$(因 $1\in\mathbb{Q}$)。若 $f$ 在 $1$ 连续,由 Theorem 171(3) 须有 $2=f(1)=0$,矛盾。(依据:Theorem 171(3) + 极限唯一性)
    4. 故 $f$ 在 $1$ 不连续。$\blacksquare$
  • 【机制解说】 连续性要求两个分支在 $c$ 处会师:$0=c$ 的”有理分支值”与”无理分支极限值 $2c$”必须相等。$0=2\cdot0$ 成立,$0\neq2\cdot1$ 不成立。这正是 Dirichlet 函数”处处断”的量化原因:它的两个分支在每一点都差 $1$。

变体二(Thomae 函数 / 爆米花函数,popcorn function) \(T(x)=\begin{cases}\dfrac1q,&x=\dfrac pq\ \text{为既约分数},\ q>0\\[4pt]0,&x\notin\mathbb{Q}\end{cases}\)

  • 结论:$T$ 在每个无理点连续,在每个有理点不连续。这是”不连续点集可以是可数稠密集“的经典例子——与 Dirichlet 函数(处处不连续)形成鲜明对照。
  • 证明思路(无理点 $c$ 处连续)
    1. 设 $\epsilon>0$,取 $Q=\lceil1/\epsilon\rceil$(即分母 $q\le Q$ 时 $1/q\ge\epsilon$)。(依据:Archimedes 性质)
    2. 分母 $\le Q$ 的有理数在 $c$ 的某个有限邻域内只有有限多个(因为固定分母 $q$ 时,$c$ 附近最多 $1$ 个这样的点)。设它们中离 $c$ 最近的距离为 $d>0$(因 $c$ 无理,$d>0$)。(依据:有限集有最小值)
    3. 取 $\delta=d$。若 $\vert x-c\vert <\delta$ 且 $x$ 是有理数 $p/q$(既约),则必须 $q>Q$,故 $\vert T(x)-T(c)\vert =1/q<1/Q\le\epsilon$;若 $x$ 无理,则 $\vert T(x)-T(c)\vert =0<\epsilon$。(依据:构造)
    4. 故 $T$ 在无理点 $c$ 连续。$\blacksquare$ 数值核对python3):取 $c=\sqrt2$,$\epsilon=0.1\Rightarrow Q=10$;在 $c$ 附近分母 $\le10$ 的最近有理数是 $7/5=1.4$,距离 $0.014214$;在 $(1.41,1.42)$ 内分母 $\le10$ 的有理数个数为 $0$。$\epsilon=0.01\Rightarrow Q=100$,最近的是 $140/99$,距离 $7.215\times10^{-5}$。可见 $\delta$ 随 $\epsilon\to0$ 缩小,但始终为正——这正是连续性的要求。
  • 证明思路(有理点 $c=p/q$ 处不连续):取一列无理数 $i_n\to c$,则 $T(i_n)=0\to0$ 而 $T(c)=1/q>0$;由 Theorem 171(3) 与极限唯一性得矛盾。(依据:不变性同 Theorem 178 情形 A)
  • 【为什么这个例子值得记住】 它说明”不连续点集的大小“是一个真正的分析概念:Dirichlet 函数的不连续点集是整个 $\mathbb{R}$(不可数),而 Thomae 函数的不连续点集是 $\mathbb{Q}$(可数)。Lebesgue 的判据(黎曼可积 $\iff$ 不连续点集是零测集)正是在这类例子的推动下产生的——这属于第二卷的内容,此处仅作提示。

补充例 15.C(三类间断点的验证)

【补充】 前面已给出三类间断点的定义表,这里补上每类的完整验证。

(1)可去间断:源文件 Lecture 14 Example 169 的 \(f(x)=\begin{cases}1,&x\neq0\\2,&x=0\end{cases}\) 在 $c=0$ 处:$\lim_{x\to0}f(x)=1$ 存在,但 $f(0)=2\neq1$。故 $0$ 是可去间断点。 验证极限为 $1$:设 $\epsilon>0$,取 $\delta=1$(任何正数都行)。若 $0<\vert x-0\vert <1$,则 $x\neq0$,故 $\vert f(x)-1\vert =\vert 1-1\vert =0<\epsilon$。✓ 注意:如果把 $f(0)$ 改成 $1$,函数立刻在 $0$ 连续——这就是”可去”的含义。

(2)跳跃间断:源文件 Lecture 14 Example 165 的 \(f(x)=\begin{cases}1,&x>0\\0,&x<0\end{cases}\) 在 $c=0$ 处:由源文件 Definition 161/163 与 Example 165,$\lim_{x\to0^-}f(x)=0$ 而 $\lim_{x\to0^+}f(x)=1$;由 Theorem 166,两个单侧极限不等故 $\lim_{x\to0}f(x)$ 不存在,$f$ 在 $0$ 不连续。两极限都存在但不等,故为跳跃间断。 用序列验证:取 $x_n=1/n\to0^+$,$f(x_n)=1\to1$;取 $y_n=-1/n\to0^-$,$f(y_n)=0\to0$。若 $f$ 在 $0$ 连续则两条像序列须同趋于 $f(0)$,不可能。

(3)本质间断:$f(x)=\sin(1/x)$($x\neq0$),$f(0)=0$,在 $c=0$ 处。 证明:取 $x_n=\dfrac{1}{\pi/2+2\pi n}$,则 $x_n\to0^+$ 且 $f(x_n)=\sin(\pi/2+2\pi n)=1$ 对全体 $n$ 成立。若 $f$ 在 $0$ 连续,须 $1=f(0)=0$,矛盾。故右极限不存在,为本质间断。 数值验证python3):$x_0=0.63661977,\ x_1=0.12732395,\ x_2=0.07073553,\ x_3=0.04897075$,对应的 $\sin(1/x_n)$ 全部等于 $1.0000000000$。✓ 另一个本质间断的例子:若把 Dirichlet 函数在某点考察,其两个单侧极限都不存在(因为每个单侧邻域里都有理数与无理数),故也是本质间断——只不过它”处处”都是本质间断。

补充讨论 15.D($\lim_{x\to0}\sin x=0$、$\lim_{x\to0}\cos x=1$ 与 $\lim_{x\to0}\frac{\sin x}{x}=1$)

【补充,并明确交代课程立场】 源文件 Lecture 15 没有讨论 $\lim_{x\to0}\frac{\sin x}{x}$。这个极限在 Assignment 11 第 3(a) 题(”Compute $\lim_{x\to0}\frac{x-\sin x}{x^3}$”)与 Assignment 11 第 3(b) 题(”Compute $\lim_{x\to\pi/2}\frac{1-\sin x}{\left(x-\frac{\pi}{2}\right)^2}$”)中作为计算题出现,而这两题依赖 Taylor 定理(Lecture 20–21),不是依赖面积不等式。

  • 前两个极限是定理 172 的直接推论:由连续性定义,若 $f$ 在 $0$ 连续则 $\lim_{x\to0}f(x)=f(0)$。故 \(\lim_{x\to0}\sin x=\sin0=0,\qquad \lim_{x\to0}\cos x=\cos0=1 .\) (这里用了 $\sin0=0$、$\cos0=1$,属于引理 15.A 层面上”从单位圆定义可自由使用”的已知值。) $\epsilon$-$\delta$ 的显式版本:由 $\vert \sin x-\sin 0\vert \le\vert x-0\vert $,取 $\delta=\epsilon$ 即可。

  • 关于 $\lim_{x\to0}\frac{\sin x}{x}=1$:经典的几何证明走”面积夹逼”路线: \(0<x<\frac{\pi}{2}\ \Longrightarrow\ \sin x<x<\tan x\ \Longrightarrow\ \cos x<\frac{\sin x}{x}<1 .\) 本课程在这一讲并未建立面积不等式 $\sin x<x<\tan x$;源文件 Theorem 172 只列出了较弱的 $\vert \sin x\vert \le\vert x\vert $。因此,在本课程体系里要说 $\lim_{x\to0}\frac{\sin x}{x}=1$,更自然的路线是先建立 Taylor 展开 $\sin x=x-\frac{x^3}{6}+O(x^5)$(Lecture 20 Theorem 225 (Taylor)),再取极限。Assignment 11 第 3 题正是这条路线:它要求算 $\frac{x-\sin x}{x^3}$,答案 $1/6$ 来自 $\sin$ 的四阶(奇次到三次)Taylor 多项式 —— 数值核对(python3):$x=0.1$ 时 $\frac{x-\sin x}{x^3}=0.16658335$,$x=0.01$ 时 $=0.16666583$,$x=0.001$ 时 $=0.16666666$,收敛到 $1/6=0.16666666\cdots$ ✓;而第 3(b) 题 $\lim_{x\to\pi/2}\frac{1-\sin x}{(x-\pi/2)^2}$ 的答案是 $1/2$(用 $\sin(\pi/2+h)=\cos h=1-\frac{h^2}{2}+O(h^4)$),数值核对:$h=0.1$ 时 $\frac{1-\sin(\pi/2+h)}{h^2}=0.49958347$,$h=0.01$ 时 $=0.49999583$,收敛到 $0.5$ ✓。所以:不要在本讲用面积不等式去”证明”这个极限,因为本课程尚未把它作为定理列出。

与教材的对应

  • 对应 [JL] §3.1(Limits of functions):该节的核心命题是
    • 聚点 (cluster point) 的定义与序列刻画(源文件 Lecture 13 Definition 148 / Theorem 149);
    • 函数极限的 $\epsilon$-$\delta$ 定义与唯一性(源文件 Definition 150 / Theorem 152);
    • $\S3.1.3$ 序列极限:函数极限的序列刻画——这是本讲 Theorem 171 第 2、3 部分的直接来源(源文件 Lecture 14 亦提示 “You may read the end of Section 3.1.3 [L] for this.”);
    • $\S3.1.4$ Limits of restrictions and one-sided limits:单侧极限(源文件 Lecture 14 Definition 161/163/Theorem 166),本讲用它来讨论跳跃间断。
  • 对应 [JL] §3.2(Continuous functions):
    • $\S3.2.1$ Definition and basic properties:连续性的 $\epsilon$-$\delta$ 定义(源文件 Definition 167 = 教材 Definition 3.2.1);连续性的基本性质(源文件 Theorem 171 = 教材 Proposition 3.2.2 的三条)。
    • $\S3.2.2$ Composition of continuous functions:复合的连续性(源文件 Theorem 175 = 教材 Theorem 3.2.7 的对应命题),以及连续函数四则运算(源文件 Theorem 174)。
    • $\S3.2.3$ Discontinuous functions:间断函数的例子,包含 Dirichlet 函数(源文件 Theorem 178)与可去间断的例子(教材 §3.2.3 讨论 removable discontinuity,源文件 Lecture 14 Example 169 是其对应)。
    • $\S3.2.4$ Exercises:见下面的作业对应。
  • 对应 OCW Assignment 8(Reading Sections 3.1, 3.2):
    1. Exercise 3.1.3 —— 练习 §3.1 的函数极限/聚点基础(给定题号,OCW 作业原文未附题干)。
    2. 第 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$.” —— 直接演练本讲 Theorem 178 的”两类点互相逼近”技巧,但结论相反(在 $0$ 连续);本讲已给出完整解答(补充例 15.B 变体一)。
    3. Exercise 3.2.11 —— §3.2 的连续性判定题(给定题号)。就本讲主题而言,它训练”用定义/序列刻画判定一个分段函数的连续与间断”(该题涉及在 $0$ 处含 $\sin(1/x)$ 型表达式的分段函数)。
    4. Exercise 3.2.14 —— §3.2 的连续性习题(给定题号;OCW 作业原文仅列题号,未附题干)。
    5. 第 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.” —— 这是本讲连续性的”拓扑刻画”。它的证明要同时用到 Definition 167($\epsilon$-$\delta$)与”开集”的定义(Assignment 3 第 5 题定义的 open set);它与 Theorem 171(3) 是同一枚硬币的两面(一个用序列,一个用开集)。注意本课程为了这道题,在 Assignment 3 第 5 题里已经建立了开集的基本性质($(-\infty,a),(a,b),(b,\infty)$ 是开的;任意并是开的;有限交是开的;$\mathbb{Q}$ 不是开的)。
  • 对应 OCW Assignment 9(Reading Sections 3.3, 3.4, 3.5):
    1. Exercise 3.3.11 —— §3.3(极值定理 / 介值定理)的习题(给定题号)。它与本讲的连接在于:本讲证明的连续性是 Lecture 16 全部结论的前提。
    2. Exercise 3.4.3Exercise 3.4.8 —— §3.4(一致连续)的习题(给定题号)。
    3. 第 4 题(原文):”Let $S\subset\mathbb{R}$. We say that $f:S\to\mathbb{R}$ is Lipschitz continuous on $S$ if there exists $L\ge0$ such that for all $x,y\in S$, $\vert f(x)-f(y)\vert \le L\vert x-y\vert $. Prove that if $f:S\to\mathbb{R}$ is Lipschitz continuous on $S$ then $f$ is uniformly continuous on $S$.” —— 本讲定理 172 的副产品($L=1$)在此被正式使用
    4. 第 5(a) 题(原文):”Prove that $f(x)=\cos x$ is Lipschitz continuous on $\mathbb{R}$.” —— 本讲已证完($\vert \cos x-\cos c\vert \le\vert x-c\vert $,取 $L=1$)。
    5. 第 5(b) 题(原文):”Prove that $f(x)=x^{1/3}$ is uniformly continuous on $[0,1]$ and is not Lipschitz continuous on $[0,1]$.” —— 反面例子,说明 Lipschitz 严格强于一致连续。
    6. 第 6(b) 题(原文):”Prove that $\lim_{x\to\infty}\sin x$ does not exist.” —— 这题的直接工具是本讲的连续性 + 序列刻画:取 $x_n=2\pi n\to\infty$ 得 $\sin x_n\to0$,取 $y_n=\pi/2+2\pi n\to\infty$ 得 $\sin y_n\to1$;两个”沿不同路径的极限”不同,故极限不存在。同样的”取两条路径”思想就是本讲 Theorem 178 的证明骨架。
  • 对应 Midterm / Finalhw_all.txt):
    • Final Assignment 第 1(i) 题:”Let $S\subset\mathbb{R}$. A function $f:S\to\mathbb{R}$ is not continuous at $c\in S$ if ___” —— 要求写出不连续的精确定义。这正是源文件 Negation 170(本讲反复使用的工具)。
    • Final Assignment 第 1(ii) 题(非一致连续的否定)与 Lecture 17 相关,但同样以本讲的量词结构为基础。
    • Final Assignment 第 2(b) 题:”Let $f,g:S\to\mathbb{R}$ be functions continuous at $c\in S$. Prove that the product $fg$ is continuous at $c$.” —— 本讲 Theorem 174 第 2 条
    • Final Assignment 第 3(b) 题(连续函数把 $[a,b]$ 映成紧集)与 Lecture 16 相关,前提是本讲的连续性。
    • Final Assignment 第 4(a)(ii) 题:”Give an explicit example of a function showing the converse of part (i) is false.”(可微 $\Rightarrow$ 连续,反之不真)—— 可用绝对值的折点,也可用本讲 Dirichlet 型的病态构造来强化印象。
    • Final Assignment 第 4(b) 题:$f(x)=x^2\sin(1/x)$($x\neq0$),$f(0)=0$,用导数定义证 $f$ 在 $0$ 可微 —— 这题要用 $\vert \sin u\vert \le\vert u\vert $(引理 15.A 事实 2)与夹逼,与本讲 $\sin$ 连续性证明用的是同一把钥匙
    • Final Assignment 首页的授权:”You may freely use any knowledge of the functions $\sin x$, $\cos x$, $e^x$ and $\log x$ … that you retained from calculus.” —— 这是引理 15.A 中”三角函数基本事实可自由使用”的官方依据

与其他讲次的关联

  • ← Lecture 5(Theorem 43(ii),稠密性):Theorem 178 的证明完全依赖“任意两个实数之间有有理数”。而情形 A($c$ 有理)还需要”任意两个实数之间有无理数”——这是 Assignment 3 第 1 题的结果。没有稠密性,Dirichlet 函数处处不连续这个结论根本无法证明:在 $\mathbb{Z}$ 上同一个公式处处连续。
  • ← Lecture 8(Theorem 84 加法律、Theorem 87/89 乘法律与除法律、Theorem 82 夹逼定理):Theorem 173(多项式)、Theorem 174(和积商)、Theorem 175(复合)的证明没有一步是自己的:全部搬运 Lecture 8 的序列极限运算。而 Theorem 171(3) 反向证明的收尾用的也是夹逼定理与”极限保不等式”。这就是 Lecture 8 存在的意义。
  • ← Lecture 13–14(Definition 148/150/167、Negation 170、Theorem 166):本讲的 Theorem 171 是 Lecture 13–14 的直接延续:Definition 167 给了连续性的 $\epsilon$-$\delta$ 版本,Theorem 171(3) 给了它的序列版本;Negation 170 是 Theorem 171(3) 反向证明与 Final Assignment 第 1(i) 题的模板;Theorem 166(单侧极限)用来鉴别跳跃间断。
  • → Lecture 16(极值定理 Theorem 182、介值定理 Theorem 187):本讲建立的 $\sin,\cos$ 连续性 + 多项式连续性 + 四则运算 + 复合,立刻成为 Lecture 16 的函数库存。例如介值定理可以直接用来证明”$\cos x$ 在 $[0,\pi/2]$ 上有零点”这类存在性命题。
  • → Lecture 17(一致连续 Definition 193 与导数 Definition 198):本讲的副产品 $\vert \sin x-\sin c\vert \le\vert x-c\vert $、$\vert \cos x-\cos c\vert \le\vert x-c\vert $ 是 Lecture 17 中”$\delta$ 不依赖 $c$”的第一个完整例子;而 Assignment 9 第 4、5 题正式把 Lipschitz $\Rightarrow$ 一致连续写进作业。另外,Lecture 17 证明 $(\sin x)’=\cos x$ 时要用到 $\frac{\sin h}{h}\to1$ 与和角公式——和角公式正是本讲引理 15.A 事实 3
  • → Lecture 21(连续函数黎曼可积 Theorem 235):该定理的前提是 $f\in C([a,b])$,而”哪些函数属于 $C([a,b])$”这个清单正是本讲给出的(三角、多项式、四则、复合)。同时,Dirichlet 函数作为不可积的极端反例,正是 Lecture 21 讨论”连续这个假设不能去掉”时最有力的素材。
  • → Lecture 25 / 第二卷 §11.4:若要在分析内部重建三角函数(不依赖单位圆几何),需要用幂级数定义 $\sin,\cos$ 并证明全部恒等式;这是本课程故意留在后面的内容,也解释了为什么本讲可以把三角恒等式”当作零件”。

关键要点

  1. 连续性有第三个等价刻画(序列刻画,Theorem 171(3)): \(f\ \text{在}\ c\ \text{连续}\iff \forall\{x_n\}\subset S,\ \bigl(x_n\to c\Rightarrow f(x_n)\to f(c)\bigr).\) 它的实用价值在于:一切关于序列极限的定理(Lecture 8)都可以免费搬到连续性上。本讲 4 个定理(173、174、175 及 178)中有 3 个只用了这一条。
  2. 三角函数连续性的证明骨架: \(\vert \sin x-\sin c\vert \;\overset{\text{和差化积}}{=}\;2\left\vert \sin\tfrac{x-c}{2}\right\vert \left\vert \cos\tfrac{x+c}{2}\right\vert \;\le\;2\cdot\tfrac{\vert x-c\vert }{2}\cdot1\;=\;\vert x-c\vert \;\overset{\delta=\epsilon}{<}\;\epsilon .\) 记住三件事:和差化积、$\vert \sin u\vert \le\vert u\vert $、$\vert \cos u\vert \le1$。$\cos$ 可以走同样的和差化积路线,也可以用 $\cos x=\sin(x+\pi/2)$ 归约到 $\sin$。
  3. 副产品(Lipschitz,$L=1$):$\forall x,c\in\mathbb{R}$, \(\vert \sin x-\sin c\vert \le\vert x-c\vert ,\qquad \vert \cos x-\cos c\vert \le\vert x-c\vert .\) $\delta=\epsilon$ 不依赖 $c$,这预告了 Lecture 17 的一致连续,并且直接解决 Assignment 9 第 5(a) 题
  4. Dirichlet 函数处处不连续(Theorem 178): \(f(x)=\begin{cases}1,&x\in\mathbb{Q}\\0,&x\notin\mathbb{Q}\end{cases}\qquad\Longrightarrow\qquad \forall c\in\mathbb{R},\ f\ \text{在}\ c\ \text{不连续}.\) 证明模板:每个 $c$ 的每个邻域里既有有理数又有无理数(稠密性)→ 存在一列点趋近 $c$ 而函数值恒为 $0$ 或恒为 $1$ → 用 Theorem 171(3) 与极限唯一性得 $0=1$ 矛盾。
  5. 工具清单(Lecture 15 之后你可以宣布连续的函数):多项式(Theorem 173);$\sin,\cos$(Theorem 172);它们的和、积、商(分母非零,Theorem 174);它们的复合(Theorem 175)。示范:$\left(\cos\frac1{x^2}\right)^2$ 在 $(0,\infty)$ 连续(Example 176(ii))。

常见误区与注意事项

  1. 错误做法:证明 $\sin$ 连续时写 “$\lim_{x\to c}\sin x=\sin(\lim_{x\to c}x)=\sin c$,故连续”。 为什么错:这是在假设结论。把极限搬进函数内部($\lim f(x_n)=f(\lim x_n)$)正是连续性本身,”$f$ 可以把极限符号吃掉”就是连续的定义内容。用它来证明它自己,是循环论证。 正确做法:从 $\vert \sin x-\sin c\vert $ 出发做具体估计(和差化积 + $\vert \sin u\vert \le\vert u\vert $ + $\vert \cos u\vert \le1$),或先证 $\sin$ 连续再用序列刻画搬运 $\cos$(源文件路线)。

  2. 错误做法:在 Theorem 178 的证明里写 “因为 $\mathbb{Q}$ 在 $\mathbb{R}$ 中稠密,所以存在有理数列 $q_n\to c$;又因为 $\mathbb{R}\setminus\mathbb{Q}$ 稠密,所以存在无理数列 $i_n\to c$;所以 $f$ 在 $c$ 不连续“。 为什么错:缺了最后的推理环节。存在两条不同极限的像序列本身还不构成矛盾——必须援引 Theorem 171(3)(”若连续,则每条序列的像都收敛到 $f(c)$”)与极限唯一性。少了这一步,逻辑链条是断的。 正确做法:明确写出”若 $f$ 在 $c$ 连续,则由 Theorem 171(3) 须有 $f(q_n)\to f(c)$ 与 $f(i_n)\to f(c)$;但左边两个极限分别是 $1$ 与 $0$,故 $f(c)=1$ 且 $f(c)=0$,矛盾”。

  3. 错误做法:把 Dirichlet 函数的不连续说成”因为它在有理点和无理点取值不同”。 为什么错:取值不同只是一半原因,另一半是定义域的这个点本身属于其中一类。对照 Assignment 8 第 2 题的 $f(x)=0$($x\in\mathbb{Q}$)、$f(x)=2x$($x\notin\mathbb{Q}$):它在 $0$ 处两个分支的值会师(都是 $0$),所以连续。可见”分支值不同”不是本质,“分支值与另一分支的极限是否吻合”才是本质正确做法:对每个 $c$ 分别计算”$c$ 所属分支的值”与”另一分支沿序列的极限”,比较二者。

  4. 错误做法:认为 $\vert \sin x\vert \le\vert x\vert $ 是”显然”的,或认为它在 $\vert x\vert >1$ 时也需要证明。 为什么错:这个不等式在 $\vert x\vert \ge1$ 时确实”看起来显然”(因为 $\vert \sin x\vert \le1\le\vert x\vert $),但在 $\vert x\vert <1$ 时它是弦长 ≤ 弧长的几何事实,需要几何输入。本课程把它列为可自由使用的已知事实(源文件 Theorem 172 证明开头 + Final Assignment 首页授权),但不等于它不需要依据。 正确做法:引用时说明来源(单位圆上弦长 $\le$ 弧长;严格重建则用 Vol. II §11.4 的幂级数)。同时注意:真正需要小 $x$ 情形的是 $\vert \sin u\vert \le\vert u\vert $ 用在 $u=(x-c)/2$ 上——当 $\vert x-c\vert $ 很小、$c$ 很大时,$u$ 仍可能不小,但不等式对一切实数 $u$ 都成立,所以没问题。

  5. 错误做法:把 Theorem 171(3) 的量词记成”存在一个序列”。 为什么错:Theorem 171(3) 要求的是”每一个满足 $x_n\to c$ 的序列”。若记成”存在”,则证明反向时就会把”找到一条坏序列”误当成”不连续”的充分条件——实际上能用坏序列否定连续,是因为”连续 $\Rightarrow$ 每条序列都好”这个全称命题的否定恰好是”存在一条坏序列”(Negation 170 的序列版)。量词全称/存在的位置一错,逻辑就整体崩塌。 正确做法:写成 \(\text{连续}:\ \forall\{x_n\}\bigl(x_n\to c\Rightarrow f(x_n)\to f(c)\bigr);\qquad \text{不连续}:\ \exists\{x_n\}\bigl(x_n\to c\ \wedge\ f(x_n)\not\to f(c)\bigr).\)

  6. 错误做法:在 Theorem 178 中取 $x_n=c+1/n$ 并要求它是无理数(或直接写”取无理数 $x_n=c+1/n$”)。 为什么错:$c+1/n$ 是否无理数是不可控的(例如 $c=0$ 时它是有理数)。稠密性只保证区间 $(c,c+1/n)$ 里存在无理数,不保证某个具体形式是无理数。 正确做法:先用稠密性存在性地取到 $x_n$(无理数稠密性 / 有理数稠密性各自给出),再对这批选定的 $x_n$ 用夹逼 $\vert x_n-c\vert <1/n$ 得 $x_n\to c$。

思考题(带答案)

Q1(概念理解):下面的”证明”错在哪里?

待证:$\sin$ 在 $c=0$ 连续。 “证明”:取 $x_n=1/n$。则 $x_n\to0$,且 $\sin x_n\to\sin0=0$。所以 $\sin$ 在 $0$ 连续。$\blacksquare$

答案 **错误**:Theorem 171(3) 要求"**每一条**满足 $x_n\\to0$ 的序列都使 $f(x_n)\\to f(0)$",而不是"**存在某一条**"。 这个"证明"只检验了一条**特别听话**的序列 $x_n=1/n$。但连续性是一个**全称命题**: $$\forall\{x_n\}\subset S,\quad \bigl(x_n\to c\ \Longrightarrow\ f(x_n)\to f(c)\bigr).$$ 要**证明**它,你不能只抽查一个例子;要**否定**它,找一条坏序列就够了——这就是为什么 Theorem 178 的证明只需要**构造一条**坏序列就能宣告不连续,而 Q1 里的写法方向完全反了。 **正确的做法**(回到定义):设 $\\epsilon>0$,取 $\\delta=\\epsilon$。若 $\\vert x-0\\vert <\\delta$,则由引理 15.A 事实 2, $$\vert \sin x-\sin0\vert =\vert \sin x\vert \le\vert x\vert <\delta=\epsilon .$$ 故 $\\sin$ 在 $0$ 连续。(也可以直接引用定理 172:$\\sin$ 在 $\\mathbb{R}$ 上连续,故在 $0$ 连续。) **教训**:序列刻画里的量词方向是它全部力量的来源——**正向是"对每一条序列",反向(不连续)是"存在一条序列"**。请把这两个式子并排写下来背熟(见"常见误区"第 5 条)。

Q2(完整的 $\epsilon$-$\delta$ 计算):取 $f(x)=\cos x$,$c=\dfrac{\pi}{3}$,$\epsilon=0.01$。

(a) 按定理 172 的证明思路,给出一个显式的 $\delta$,并证明它在 $\epsilon$-$\delta$ 定义下确实有效。 (b) 用数值验算:在 $\vert x-c\vert <\delta$ 的窗口上,$\vert f(x)-f(c)\vert $ 的最大值是多少?是否 $<\epsilon$?有多大的余量? (c) 如果把 $\epsilon$ 改成 $\epsilon=10^{-3}$,$\delta$ 应取多少?

答案 **(a)** 由定理 172 的补充证明路线(用补充推论 2 的 $\\cos$ 和差化积),对任意 $x,c\\in\\mathbb{R}$ 有 $$\vert \cos x-\cos c\vert =2\left\vert \sin\left(\frac{x+c}{2}\right)\right\vert \cdot\left\vert \sin\left(\frac{x-c}{2}\right)\right\vert \le 2\cdot1\cdot\frac{\vert x-c\vert }{2}=\vert x-c\vert .$$ **取 $\\delta=\\epsilon=0.01$**。验证:设 $\\vert x-\\pi/3\\vert <0.01$,则 $$\vert \cos x-\cos(\pi/3)\vert \le\vert x-\pi/3\vert <0.01=\epsilon .\qquad\blacksquare$$ 注意这个 $\\delta$ 只依赖 $\\epsilon$,**不依赖 $c=\\pi/3$**(Lipschitz 常数 $1$ 的证据)。 **(b)** 数值验算(`python3`,`math.cos`):在 $\\vert x-\\pi/3\\vert <0.01$ 上以步长 $0.01/2000$ 扫描: $$\sup_{\vert x-\pi/3\vert <0.01}\vert \cos x-\cos(\pi/3)\vert \approx 0.0086807546<0.01 .$$ 端点处(即 $x=\\pi/3+0.01$ 与 $x=\\pi/3-0.01$)误差最大: $$\cos(\pi/3)=0.5000000000000001,\qquad \cos(\pi/3+0.01)=0.4913148905073340,$$ $$\vert \cos(\pi/3+0.01)-\cos(\pi/3)\vert =0.0086851094926662<0.01 .$$ **余量**:$0.01-0.0086851=0.0013149$,约为预算的 $13.1\\%$。余量的来源是:真实的表达式是 $$\vert \cos x-\cos c\vert =2\left\vert \sin\frac{x+c}{2}\right\vert \cdot\left\vert \sin\frac{x-c}{2}\right\vert ,$$ 其中正弦因子恰好贡献 $\\left\\vert \\sin\\frac{x-c}{2}\\right\\vert $,而余弦-正弦耦合因子 $2\\left\\vert \\sin\\frac{x+c}{2}\\right\\vert $ 在最坏点 $x=c+\\delta=\\pi/3+0.01$ 处等于 $$2\left\vert \sin\!\left(\frac{\pi}{3}+\frac{0.01}{2}\right)\right\vert =2\sin(1.0521977\ldots)=2\times0.86851456=1.73702913<2 .$$ 于是 $\\vert \\cos x-\\cos c\\vert \\le1.73702913\\times\\left\\vert \\sin\\frac{x-c}{2}\\right\\vert \\approx1.73702913\\times0.0049999792=0.008685109$,与扫描所得的上确界 $0.0086808$ 及端点精确值 $0.0086851$ 完全吻合。也就是说,在这个点上"有效割线斜率"为 $$\frac{\vert \cos(\pi/3+0.01)-\cos(\pi/3)\vert }{0.01}=\frac{0.0086851}{0.01}\approx0.8685<1,$$ 比最坏情况的 Lipschitz 常数 $1$ 小,故有约 $13\\%$ 的余量。 **(c)** 由 $\\vert \\cos x-\\cos c\\vert \\le\\vert x-c\\vert $,取 $\\delta=\\epsilon=10^{-3}$ 即可。数值核对:在 $\\vert x-\\pi/3\\vert <10^{-3}$ 上扫描得上确界 $\\approx0.0008662753<10^{-3}$。✓(若想省一点篇幅,也可以说"$\\delta=\\epsilon$ 对一切 $\\epsilon>0$ 都行"。)

Q3(Dirichlet 函数及其变体):设

\[g(x)=\begin{cases}1,&x\in\mathbb{Q}\\0,&x\notin\mathbb{Q}\end{cases}\qquad\text{(Dirichlet 函数)},\qquad h(x)=\begin{cases}0,&x\in\mathbb{Q}\\x,&x\notin\mathbb{Q}\end{cases}.\]

(a) 证明 $g$ 在 $\mathbb{R}$ 上处处不连续。 (b) 证明 $h$ 在 $c=0$ 连续,而在任意 $c\neq0$ 不连续。 (c) 比较 (a)(b):为什么 $h$ 能在 $0$ 处”幸存”?请用一句话说出判别准则。

答案 **(a)** 设 $c\\in\\mathbb{R}$ 任意。 *情形 1:$c\\in\\mathbb{Q}$。* 对每个 $n\\in\\mathbb{N}$,区间 $(c,c+1/n)$ 非空,由**无理数稠密性**(Assignment 3 第 1 题)存在 $x_n\\in\\mathbb{R}\\setminus\\mathbb{Q}$ 使 $c<x_n<c+1/n$。于是 $0<x_n-c<1/n$,由夹逼定理(Lecture 8)得 $x_n\\to c$;而由定义 $g(x_n)=0$ 对全体 $n$,故 $g(x_n)\\to0$。但 $g(c)=1$。若 $g$ 在 $c$ 连续,由 Theorem 171(3) 须有 $g(x_n)\\to g(c)$,即 $0=1$,矛盾(极限唯一性,Lecture 6)。 *情形 2:$c\\notin\\mathbb{Q}$。* 由**有理数稠密性**(Lecture 5 Theorem 43(ii))存在 $x_n\\in\\mathbb{Q}$ 使 $c<x_n<c+1/n$。同法得 $x_n\\to c$,而 $g(x_n)=1\\to1$,但 $g(c)=0$。若连续则 $1=0$,矛盾。 $\\mathbb{R}=\\mathbb{Q}\\sqcup(\\mathbb{R}\\setminus\\mathbb{Q})$,两情形穷尽,故 $g$ 处处不连续。$\\blacksquare$ **(b)** *先证 $c=0$ 连续。* 设 $\\epsilon>0$,**取 $\\delta=\\epsilon$**。设 $\\vert x-0\\vert <\\delta$: - 若 $x\\in\\mathbb{Q}$:$\\vert h(x)-h(0)\\vert =\\vert 0-0\\vert =0<\\epsilon$; - 若 $x\\notin\\mathbb{Q}$:$\\vert h(x)-h(0)\\vert =\\vert x-0\\vert <\\delta=\\epsilon$。 故 $h$ 在 $0$ 连续。$\\blacksquare$ *再证 $c\\neq0$ 不连续。* 分两类。 - 若 $c\\in\\mathbb{Q}$:$h(c)=0$。取无理数 $x_n\\to c$(存在性由无理数稠密性 + 夹逼),则 $h(x_n)=x_n\\to c\\neq0=h(c)$。若 $h$ 在 $c$ 连续则须 $c=0$,与 $c\\neq0$ 矛盾。 - 若 $c\\notin\\mathbb{Q}$:$h(c)=c\\neq0$。取有理数 $q_n\\to c$(有理数稠密性 + 夹逼),则 $h(q_n)=0\\to0\\neq c=h(c)$。若连续则须 $0=c$,矛盾。 故 $c\\neq0$ 时 $h$ 不连续。$\\blacksquare$ **(c)** 判别准则:$h$ 在 $c$ 连续 $\\iff$ **$c$ 所属分支的函数值 $h(c)$,等于另一分支在该点的取值**。在 $c=0$ 处,"有理分支"给值 $0$,"无理分支"给值 $x=0$,两者**会师**,于是连续;在 $c\\neq0$ 处它们分别是 $0$ 与 $c$,差 $\\vert c\\vert >0$,于是不连续。 更一般的一句话:**当函数由两个稠密定义的分支拼成时,连续性要求在拼接点上两个分支的"目标值"一致**——这与 Assignment 8 第 2 题的 $f$($0$ 与 $2x$,在 $x=0$ 会师)以及 Dirichlet 函数($1$ 与 $0$,永不会师)是同一个判别法。 **数值辅助(`python3`)**:取 $c=\\sqrt2$ 与 $\\epsilon=\\delta=0.001$,有理点 $140/99$ 满足 $\\vert 140/99-\\sqrt2\\vert =7.2148\\times10^{-5}<0.001$ 故在邻域内,而 $\\vert g(140/99)-g(\\sqrt2)\\vert =\\vert 1-0\\vert =1\\not<0.001$;$\\delta=10^{-6}$ 时换成 $1393/985$(距离 $3.6440\\times10^{-7}$),结论相同。这展示了"$\\forall\\delta>0$ 都能找到反例",即处处不连续。