有限覆盖定理与实数理论

有限,覆盖,定理,实数,理论 · 浏览次数 : 170

小编点评

**定理:** _n \\}_{n=1}^N \\subset \\mathscr F\\) 也是 \\([a,b]\\) 的覆盖。 **证明:** 由于 \\(\\mathscr F\\) 是覆盖 \\(\\[a,b]\\) 的充分条件,因此,当 \\(N \\to \\infty\\) 时, \\(\\{ I_n \\}_{n=1}^N\\) 构成一个覆盖 \\(\\[a,b]\\) 的子覆盖。由于 \\(I_n\\) 是开区间,因此,它们之间的交集为空集。因此, \\(\\{ I_n \\}_{n=1}^N\\) 合并后仍是一个覆盖 \\(\\[a,b]\\) 的子覆盖。 **结论:** 因此,_n \\}_{n=1}^N \\subset \\mathscr F\\) 是 \\([a,b]\\) 的有限子覆盖。

正文

Example 1

为更好的证明本题,先引入 Bolzano-Weierstrass 定理的一种等价表述.

Definition 1 (数列聚点) 对任意实数列 \(\{ x_n \}\),若实数 \(a\) 满足:对 \(a\) 的任意小邻域 \(U(a, \varepsilon) = (a - \varepsilon, a + \varepsilon)\),都有无穷个 \(x_n\) 满足 \(x_n \in U(a, \varepsilon)\),则称 \(a\) 是数列 \(\{ x_n \}\) 的一个聚点.

请注意,这里我们没有使用建立在集合之上的标准的聚点定义. 对数列单独定义聚点,是考虑到数列允许重复的元素出现,如此定义更容易展开后面的讨论.

Theorem 1 实数 \(a\) 是数列 \(\{ x_n \} \subset \mathbb R\) 的聚点的充要条件是:存在 \(\{ x_n \}\) 的一个收敛子列 \(\{ x_{n_k} \}\),其极限为 \(a\).

Proof. 先证充分性. 用定义写开 \(\lim_{k \to \infty} \{ x_{n_k} \} = a\),就有 \[ (\forall \varepsilon > 0)(\exists K \in \mathbb N_+)(\forall k > K)(|x_{n_k} - a| < \varepsilon) \] 故确有无穷项 \(x_n\) 落在任意小的 \(U(a, \varepsilon)\) 中,即 \(a\)\(\{ x_n \}\) 的一个聚点,该方向得证.

下证必要性. 已知 \(\{ x_n \}\) 有一聚点 \(a\). 我们按如下方法构造子列 \(\{ x_{n_k} \}\)

  1. \(k=1\),取 \(\varepsilon_1 = 1\),因为 \(a\)\(E\) 的一个聚点,\(\exists n_1 \in \mathbb N_+\)\(|x_{n_1} - a| < \varepsilon\).
  2. \(k \geqslant 2\),取 \(\varepsilon_k = \frac 1 k\),因为 \(a\)\(E\) 的一个聚点, \(\exists n_k > n_{k-1}\)\(|x_{n_k} - a| < \varepsilon\).

这样,我们构造出 \(\{ x_n \}\) 的一个子列 \(\{ x_{n_k} \}\) 满足 \(|x_{n_k} - a| < \varepsilon_k = \frac 1 k\). 因此其收敛于 \(a\),该方向得证.

上述定理立刻证明了下定理与 Bolzano-Weierstrass 定理的等价性.

Theorem 2 (数列聚点定理) 任意有界实数列 \(\{ x_n \}\) 至少有一个聚点.

Example 1 利用有限覆盖定理证明 Bolzano-Weierstrass 定理.

Proof. 命题等价于用有限覆盖定理证明数列聚点定理. 用反证法. 假设一有界实数列 \(\{ x_n \}\) 不存在聚点,设其有上界 \(L\) 和下界 \(l\). 对任意 \(a \in [l,L]\),它都不是 \(\{ x_n \}\) 的聚点,因此总存在一个 \(\varepsilon(a) > 0\),使得只有有限个 \(x_n\) 落入 \(U(a, \varepsilon(x_0))\). 这样,构造开区间族 \[ \mathscr{F} = \{ U(a, \varepsilon(a)) \mid a \in [l,L] \} \] 它显然是闭区间 \([l,L]\) 的一个开覆盖. 由有限覆盖定理,只需取其中有限个开区间就可以覆盖住 \([l,L]\),因此覆盖 \(\{ x_n \}\) 也只需要有限个开区间. 然而由前述构造,每一个开区间中也只包含有限个 \(x_n\),因此数列 \(\{ x_n \}\) 只有有限项——这显然是荒谬的. 故 \(\{ x_n \}\) 必有聚点,原命题得证.

Example 2

Theorem 3 (Lebesgue 覆盖定理) 设开区间族 \(\mathscr F\) 是闭区间 \([a, b]\) 的一个开覆盖,则必存在 \(\sigma > 0\),使得只要区间 \(\Omega \subset [a, b]\)\(\Omega\) 的长度 \(|\Omega| < \sigma\),就必有 \(\mathscr F\) 中的一个开区间包含 \(\Omega\). 其中 \(\sigma\) 称为 Lebesgue 数.

Proof. 不妨只证 \(\Omega\) 是闭区间这种最强的情况.

用反证法. 假设命题不成立,则对任意 \(\sigma > 0\),都存在一个长度小于 \(\sigma\) 的闭区间 \(\Omega \subset [a,b]\),它不被任何 \(\mathscr F\) 中的开区间包含. 因此,对所有自然数 \(n\),可取 \(\sigma_n = \frac 1 n\),按上述方法就可构造出一列闭区间 \[\{ \Omega_n \} = \{ [a_n, b_n] \} \subset [a,b]\] 其中每一个闭区间都不被任何 \(\mathscr F\) 中的开区间包含,且区间长度 \(|\Omega_n| < \sigma_n = \frac 1 n\),即 \(\lim_{n \to \infty} |\Omega_n| = 0\).

因为 \(\Omega_n \subset [a,b]\)\(\{ a_n \}\) 有界,由 Bolzano-Weierstrass 定理,其存在一收敛子列 \(\{ a_{n_k} \}\),设其极限为 \(x_0\),极限保序性表明 \(x_0 \in [a,b]\). 注意到 \(b_{n_k} = a_{n_k} + |\Omega_{n_k}|\),两端取 \(k \to \infty\) 即得 \(\lim_{k \to \infty} b_{n_k} = x_0\). 综上,我们说明了 \(\{ \Omega_{n_k} \}\) 收缩于 \(x_0\).

但,因为 \(\mathscr F\) 是闭区间 \([a,b]\) 的一个开覆盖,故总存在一个开区间 \(I_{x_0} = (a_0, b_0) \in \mathscr F\) 使得 \(x_0 \in I_{x_0}\),而 \(\{ \Omega_{n_k} \}\) 又收缩于 \(x_0\),故存在 \(k \in \mathbb N\)\(\Omega_{n_k} \subset I_{x_0} \in \mathscr F\),这与我们构造 \(\{ \Omega_{n_k} \}\) 的方法矛盾. 故原命题成立.

Remark. 证明过程与用 Bolzano-Weierstrass 定理证明闭区间一致连续性定理类似.

Example 2 用 Lebesgue 覆盖定理证明有限覆盖定理.

Proof. \(\sigma\) 是覆盖 \([a,b]\) 的开覆盖 \(\mathscr F\) 的勒贝格数,令 \(N = \lceil \frac{2(b-a)}{\sigma} \rceil\)\(L = \frac {b-a}{N} \leqslant \frac \sigma 2 < \sigma\). 由 Lebesgue 覆盖定理,任意长度为 \(L\)\([a,b]\) 内闭区间都包含于某个 \(\mathscr F\) 中的开区间. 因此对 \(n = 1,2,\dots,N\),令 \(\Omega_n = \left[ a + (n-1)L, a + nL \right]\),总存在一个 \(\mathscr F\) 中开区间 \(I_n\) 满足 \(\Omega_n \subset I_n\). 因为显然 \(\{ \Omega_n \}_{n=1}^N\)\([a,b]\) 的一个覆盖,故 \(\{ I_n \}_{n=1}^N \subset \mathscr F\) 也是 \([a,b]\) 的覆盖. 这样,我们就成功构造出了一个 \(\mathscr F\) 的有限子覆盖 \(\{ I_n \}_{n=1}^N\),命题得证.

在处理区间问题时,Lebsegue 覆盖定理很多时候比有限覆盖定理更好用. 例如处理闭区间一致连续性定理时,“落入两个有交点的相邻的这样的区间”[1]这种神乎其技的操作就可以省去了. (当然我们也有其它方法绕过这个问题,比如把单点连续性要求的区间半径改成 \(2 \delta_x\),但构造开覆盖还是用半径为 \(\delta_x\) 的区间,这样可以有 \(|x_2 - x| \leqslant |x_2 - x_1| + |x_1 - x| \leqslant \delta_{m} + \delta_{x} \leqslant 2 \delta_{x}\),这样一致连续性就出来了. 详细可参考 https://www.zhihu.com/question/56393706/answer/298562084

作为小结,下图展现了刚刚介绍的几个定理在整个实数完备性等价定理体系中的地位.

G sup 确界原理 mono 单调有界定理 sup->mono nested 闭区间套定理 mono->nested nested->sup 构造 bw Bolzano-Weierstrass 定理 accu (数列)聚点定理 nested->accu 构造 finite 有限覆盖定理 nested->finite 反证 cauchy Cauchy 收敛原理 bw->cauchy lebesgue Lebesgue 覆盖定理 bw->lebesgue 反证 cauchy->mono 反证 accu->bw 构造 finite->sup 反证 finite->mono 反证 finite->accu 反证 lebesgue->finite 构造

Figure 1: 实数完备性等价定理关系图

Example 3

Theorem 4 设数列 \(\{ x_n \}\) 有界,其上极限 \(\varlimsup_{n \to \infty} x_n = L\),下极限 \(\varliminf_{n \to \infty} x_n = l\),则 \(L\)\(\{ x_n \}\) 的最大聚点,\(l\)\(\{ x_n \}\) 的最小聚点.

Proof. Theorem 1 中,我们已经知道,一个数列的收敛子列的极限也是该数列的一个聚点. 结合上下极限的子列式定义即可证明上述定理.

Example 3 设数列 \(\{ x_n \}\) 有界且 \(\lim_{n \to \infty}(x_{n+1} − x_n) = 0\),分别记 \(\{ x_n \}\) 的上下极限为 \(L\)\(l\). 证明 \([l, L]\) 上的任意点可作为 \(\{ x_n \}\) 某个子列的极限.

Proof. 反证. 假设 \([l, L]\) 上有一点 \(a\) 不是任何 \(\{ x_n \}\) 的收敛子列的极限,则根据 Theorem 1\(a\) 不是 \(\{ x_n \}\) 的聚点,即存在 \(a\) 的一个邻域 \(U(a,\varepsilon)\),使得只有有限个 \(x_n\) 落入该邻域,换句话说,存在某个 \(N \in \mathbb N_+\),当 \(n>N\) 时,就有 \(x_n \notin U(a,\varepsilon)\).

又,考虑到 Theorem 4 表明上下极限 \(L\)\(l\) 都是 \(\{ x_n \}\) 的聚点,\(L,l \notin U(a,\varepsilon)\) 显然成立,且第 \(N\) 项后的 \(\{ x_n \}\) 完全由满足 \(x_n > a+\varepsilon\)\(x_n < a-\varepsilon\) 的两种 \(x_n\) 构成,且它们均有无穷多项. 这样,对于任意的 \(M>N\),总可以找到一个 \(m > M\) 使得 \(x_m\)\(x_{m+1}\) 分属 \(U(a, \varepsilon)\) 的两侧,故 \(|x_m - x_{m+1}| \geqslant 2 \varepsilon\),这就与条件 \(\lim_{n \to \infty}(x_{n+1} − x_n) = 0\) 产生矛盾. 故不存在这样的 \(a\),定理得证.

Acknowledgments

感谢史老师主持研讨课并指出讲稿的多处错误,特别是原来聚点定理的证明中数列元素可重的 bug. 史老师还提供了标准聚点定义的另一种叙述.

References

[1]
李忠. 方丽萍. 数学分析教程[M]. 北京: 高等教育出版社, 2008: 257-258.

与有限覆盖定理与实数理论相似的内容:

有限覆盖定理与实数理论

《数学分析 I》第四次研讨课第三部分讲稿

【ChatGPT-应用篇】基于chatGPT覆盖测试过程的初步探索

ChatGPT如此火爆之势,作为测试人员对此也颇为好奇,简单的人机对话有哪些可以帮助我们测试工作呢?本文主要谈从测试视角,结合测试流程来看chatGPT的应用。

数据库系列:覆盖索引和规避回表

1 介绍 在MySQL数据库查询过程中,索引覆盖和避免不必要的回表,是减少检索步骤,提高执行效率的有效手段。下面从这两个角度分析如何进行MySQL检索提效。 2 数据准备 模拟一个500w数据容量的部门表 emp,表结构如下,并通过工具模拟500w的数据: CREATE TABLE `emp` (

《最新出炉》系列初窥篇-Python+Playwright自动化测试-17-处理鼠标悬停

1.简介 有些测试场景或者事件,playwright根本就没有直接提供方法去操作,而且也不可能把各种测试场景都全面覆盖提供方法去操作。比如:就像鼠标悬停,一般测试场景鼠标悬停分两种常见,一种是鼠标悬停在某一个元素上方,然后会出现下拉子菜单,第二种就是在搜索输入过程,选择自动补全的字段。关于鼠标悬停,

boltdb一瞥

boltdb 网上关于boltdb的文章有很多,特别是微信公众号上,例如: boltdb源码分析系列-事务-腾讯云开发者社区-腾讯云 (tencent.com) 这些文章都写的挺好,但不一定覆盖了我所关注的几个点,下面我把我关注的几个点就来下来。 node page bucket tx db的关系

2.9 PE结构:重建导入表结构

脱壳修复是指在进行加壳保护后的二进制程序脱壳操作后,由于加壳操作的不同,有些程序的导入表可能会受到影响,导致脱壳后程序无法正常运行。因此,需要进行修复操作,将脱壳前的导入表覆盖到脱壳后的程序中,以使程序恢复正常运行。一般情况下,导入表被分为IAT(Import Address Table,导入地址表)和INT(Import Name Table,导入名称表)两个部分,其中IAT存储着导入函数的地址

ChatGPT 提高工作效率-一例SQL编写的过程

ChatGPT 提高工作效率-一例SQL编写的过程 前言 遇到一个问题, 怀疑是有一些补丁没有被依赖. 导致第一次更新时没有更新这些没依赖的补丁. 后面更新时又更新了这些游离态的补丁. 导致出现 old 文件 覆盖 new 文件 出现程序问题. 一个补丁还好着, 但是所有的补丁去检查就比较麻烦了.

第119篇: JavaScript 类

好家伙,我们先来复习一下 关于Java,类的三大特征: 1、封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。 2、继承,继承性更符合认知规律,使程序更易于理解,同时节省不必要的重复代码。 3、多态,体现为覆盖和重载,Js没有重载,有

云原生引擎单元测试实践

快速迭代的开发工作中如何提高代码质量一直是团队痛点,特别是没有测试支持的开发团队。合理的使用单元测试,并关注单元测试通过率、代码覆盖率可以有效提高代码质量。今天就来讲讲云原生引擎单元测试实践。

月光宝盒(vivo流量录制回放平台)正式对外开源

月光宝盒是一个基于流量录制回放的自动化测试平台,通过录制回放取代编写脚本进行自动化回归,提升测试效率和覆盖率。因为其解决方案具有很强的通用性,所以我们把这它开源出来,希望能帮助到有需要的用户。