跳转至

为什么闭区间中的数列总有收敛子列?

先备知识

第二部已经证明 Bolzano–Weierstrass 定理:每个有界实数数列都有收敛子列。本单元 直接调用该结论,不重复区间套证明。你还需要会用极限的保序性处理闭区间端点。

学习目标

  1. 定义本书在实数范围内使用的序列紧致性;
  2. 用极限保序性证明闭区间保留其中收敛数列的极限;
  3. 建立闭区间的序列紧致性;
  4. 用反例区分端点缺失、无界和序列紧致。

牵引问题

闭区间中可以放入一条无限而杂乱的点列。我们未必能控制整条数列,却能否总从中 抽出一条趋向区间内某点的子列?“有界”负责提供收敛子列,“闭”又负责什么?

探索与猜想

\((0,1)\) 中,数列 \(x_n=1/(n+1)\) 收敛,但极限 \(0\) 跑出了集合;在 \([0,\infty)\) 中,数列 \(x_n=n\) 根本没有收敛子列。闭区间同时排除了“极限跑出 边界”和“数列逃向无穷”两种失败。

概念与理论

定义:序列紧致性

集合 \(K\subseteq\mathbb R\) 称为序列紧致的,若对每个满足 \(x_n\in K\) 的数列 \((x_n)\),都存在严格递增指标

\[ n_1<n_2<\cdots \]

和某个 \(x\in K\),使

\[ x_{n_k}\to x. \]

定义同时要求“能抽出收敛子列”和“子列极限仍在集合内”。只满足前半句并不够。

定理:闭区间序列紧致

每个闭区间 \([a,b]\) 都是序列紧致的。

证明。 任取数列 \(x_n\in[a,b]\)。因为

\[ a\le x_n\le b, \]

该数列有界。由第二部 Bolzano–Weierstrass 定理,存在子列 \(x_{n_k}\to x\in\mathbb R\)。对子列仍有

\[ a\le x_{n_k}\le b. \]

由极限的保序性,\(a\le x\le b\),所以 \(x\in[a,b]\)。 因此每条闭区间点列都有收敛到区间内一点的子列。\(\square\)

证明中的两项假设分工清楚:

  • 有界性产生实数中的收敛子列;
  • 两个端点都包含在区间中,配合极限保序性把该子列的极限留在区间内。

一般集合的开、闭语言及“闭且有界”与序列紧致的关系留到第 28 章。本章后续只需要 上面已经证明的闭区间版本。

例题与迁移

例题 1:开区间为什么失败

证明 \((0,1)\) 不是序列紧致的。

证明。\(x_n=1/(n+1)\in(0,1)\)。对每个 \(n\in\mathbb N\),都有 \(0<x_n<1\)。任意子列 \(x_{n_k}\) 仍趋于 \(0\),而 \(0\notin(0,1)\)。因此不存在收敛到集合内一点的 子列,序列紧致性失败。失败原因是端点 \(0\) 没有包含在集合中。\(\square\)

例题 2:无界区间仍会失败

证明 \([0,\infty)\) 不是序列紧致的。

证明。\(x_n=n\)。任意子列满足 \(x_{n_k}=n_k\ge k\),所以仍趋于 \(+\infty\),不可能在实数中收敛。失败原因是集合无界。\(\square\)

即时检验与回望

即时检验 1:收敛子列为什么必须落回集合?

答案

若只要求在实数中收敛,那么任何有界集合中的点列都能由 Bolzano–Weierstrass 抽出收敛子列,即使极限落在缺失边界上。序列紧致性要求 极限属于原集合,才能把集合内的无限过程封闭起来。

即时检验 2:证明闭区间序列紧致时哪里使用端点条件?

答案

Bolzano–Weierstrass 只给出某个实数极限 \(x\)。对子列的不等式 \(a\le x_{n_k}\le b\) 使用极限保序性,才得到 \(a\le x\le b\),即 \(x\in[a,b]\)

习题与答案

习题 1:有限集

证明每个有限实数集都是序列紧致的。

答案

\(K=\{a_1,\ldots,a_m\}\)。任取 \(x_n\in K\)。至少有一个值 \(a_j\) 出现无穷多次,否则每个值只出现有限次,整条数列只能有有限项。抽取所有等于 \(a_j\) 的项,得到常值子列,收敛到 \(a_j\in K\)

习题 2:半开区间

证明 \([0,1)\) 不是序列紧致的。

答案

\(x_n=1-1/n\in[0,1)\)\(n\ge1\))。整列及其任意子列都趋于 \(1\),但 \(1\notin[0,1)\)。因此没有子列收敛到集合内一点。

习题 3:收敛数列的值集

\(x_n\to x\),证明集合 \(K=\{x\}\cup\{x_n:n\in\mathbb N\}\) 序列紧致。

答案

任取 \(y_m\in K\)。若某个点在 \(y_m\) 中出现无穷多次,可抽出常值子列。 否则,除去有限重复后可抽出一列互异的 \(x_{n_m}\),其指标必趋于无穷,故 \(x_{n_m}\to x\in K\)。两种情形都得到极限属于 \(K\) 的收敛子列。

习题 4:连续像的预告

\(K\) 序列紧致,\(f:K\to\mathbb R\) 连续。证明任意数列 \(y_n\in f(K)\) 有收敛子列,且极限仍在 \(f(K)\)

答案

对每个 \(n\)\(x_n\in K\) 使 \(y_n=f(x_n)\)。由序列紧致性,存在 \(x_{n_k}\to x\in K\)。连续性给出 \(y_{n_k}=f(x_{n_k})\to f(x)\),而 \(f(x)\in f(K)\)

习题 5:识别缺失条件

判断:“每条 \(K\) 中的数列都有实数收敛子列,所以 \(K\) 序列紧致。”哪里不足?

答案

还缺少子列极限属于 \(K\) 的要求。例如 \(K=(0,1)\) 中每条数列都有界,因而 都有实数收敛子列,但 \(1/(n+1)\) 的所有子列极限都是缺失端点 \(0\),所以 \(K\) 不序列紧致。

选读前瞻:第七部的开覆盖语言

以后学习 Euclid 空间的拓扑语言时,会用开覆盖的有限化性质描述紧致性,并证明它与 本单元的序列刻画在 Euclid 空间中等价。本章的核心定理全部沿序列路线推进,不使用 该语言。

常见误区与后续

  • 有界只保证存在实数收敛子列,不保证极限属于原集合。
  • 闭区间包含两个端点,配合极限保序性保证子列极限仍落在区间内。
  • Bolzano–Weierstrass 已在第二部证明,本单元只负责把它与闭区间的端点保留拼接。
  • 子列指标必须严格递增。

下一单元把序列紧致性传给连续函数值,分别证明有界性和最值确实能够取到。