尧图精选

上极限与下极限全解析:定义、手算、性质与典型应用

🕒 发布时间:2026/10/1 10:29:13 📁 来源:尧图网络
1. 从数列没有极限这件事说起上极限limsup和下极限liminf第一次出现在大多数人面前几乎都是在数学分析或实分析的课上而且往往是讲完极限定义、性质、四则运算之后突然插进来的一节标题写着上极限与下极限然后就是一串 inf sup 嵌套的符号看得人头皮发麻。我当时也是这个感受极限不是已经讲完了吗为什么还要造两个新概念出来问题的起点其实非常朴素。考虑最简单的振荡数列a_n (-1)^n它就是 -1、1、-1、1 这样来回跳。你问它极限是多少标准答案是极限不存在。但如果你的任务只是描述这个数列的行为你会发现不存在这三个字信息量太低了——它显然不是发散到正无穷也不是发散到负无穷而是老老实实地在 -1 和 1 这两点之间反复横跳两个点都抓得住。limsup 和 liminf 存在的意义就是把这种抓得住的上沿和抓得住的下沿精确地说出来。所以这篇东西我想干的事很明确把上极限、下极限这两个概念从头拆开讲清楚定义为什么长成那样、手算的时候怎么快速出结果、有哪些性质是必须背下来的、以及最容易被问错或者做错的几个地方。适合正在学数分/实分析的读者也适合那些当年学过了但一直没真正弄明白、现在想补一补的人。全程不需要任何高深的预备知识只要你熟悉数列极限和上确界sup、下确界inf这两个概念就能顺着读下去。1.1 极限不存在不等于没有信息可取我们先把极限存在这件事重新审视一遍。a_n → L的含义是给定任意小的容差 ε从某一项之后所有项都落在 (L-ε, Lε) 里。注意这里的关键是所有项。振荡数列之所以不收敛就是因为总有项会跑到区间外面去。但如果把要求放宽呢比如不要求所有项只要求有无穷多项落进这个区间那(-1)^n就很配合了围绕 1 的任意小区间里都有无穷多个偶数项围绕 -1 的任意小区间里都有无穷多个奇数项。这两个有穷多个项反复聚集的点就是它全部的行为特征了。这就是上极限下极限的核心思路放弃整条序列趋于一个点转向序列的尾巴反复聚集在哪些点周围。凡是这种反复聚集的位置叫做聚点或者叫子列极限、极限点。而 limsup 是这些聚点里最大的那个liminf 是最小的那个。对于(-1)^n来说聚点集合就是 {-1, 1}所以 limsup 1liminf -1。1.2 为什么是上和下这两个字有人会觉得 limsup 里的 sup 只是巧合其实不是。它和上确界的 sup 是同一个东西而且语义上完全对得上上确界刻画一个集合的上沿上极限刻画一条序列尾巴的上沿。下极限同理是下沿。这个命名上的直觉很重要因为它直接决定了你手算时的思路算 limsup就是想办法找这条序列的尾巴能顶到哪里算 liminf就是找尾巴能压到哪里。后面我会用大量的例子把这句话坐实。还有一点要提前说清楚上极限和下极限在扩展实数系里讨论也就是说允许取值 ∞ 和 -∞。a_n n的 limsup 和 liminf 都是 ∞a_n n·(-1)^n的 limsup 是 ∞liminf 是 -∞。不要一看到无穷就以为不存在在这套体系里 ∞ 是一个合法且有用的取值。2. 两种定义确界的极限 与 子列极限的极值同一件事教材上通常给两套定义一套是确界套极限的分析式定义一套是子列极限取极值的直观式定义。很多人学的时候只记住了一套做题时就用不上另一套的便利很吃亏。这一段我把两条路都走一遍并说明它们为什么必然等价。2.1 定义Alimsup 其实是inf 套 sup正规的写法是这样的lim sup a_n lim_{n→∞} ( sup_{k≥n} a_k ) n→∞ lim inf a_n lim_{n→∞} ( inf_{k≥n} a_k ) n→∞注意里面那一层sup_{k≥n} a_k指的是从第 n 项开始往后所有项的上确界也就是所谓的尾巴上确界。这是一个关于 n 的量记作b_n sup_{k≥n} a_k。当你把 n 增大可取的范围变小了上确界只会变小或者不变不会变大。也就是说{b_n}是一个单调递减的数列。单调递减数列在扩展实数系里一定有极限允许为 -∞所以lim_{n→∞} b_n一定存在。这就是上极限定义能成立的根本原因——里面那层 sup 换来了外面那层 lim 的存在性。这是整个定义里最精巧的一步值得停一下体会。再往下还有一步由于b_n单调递减它的极限其实等于它的下确界所以 limsup 也可以写成inf_{n≥1} sup_{k≥n} a_k。有些教材直接就用这个形式定义看起来更短但少了一个为什么存在的交代初学的时候反而更容易懵。我的建议是定义记单调版lim sup of tail sup证明和计算时按需把它转成 inf sup。同理c_n inf_{k≥n} a_k是一个单调递增数列它的极限就是 liminf也可以写成sup_{n≥1} inf_{k≥n} a_k。这两层嵌套的关系用一句话概括limsup 是尾巴上确界序列的极限liminf 是尾巴下确界序列的极限。2.2 定义B所有子列极限里的最大值和最小值另一条路是这样的把序列所有收敛子列的极限收集起来构成一个集合 S那么lim sup a_n sup S lim inf a_n inf S(-1)^n的收敛子列有哪些偶数项构成的子列恒等于 1极限是 1奇数项构成的子列恒等于 -1极限是 -1混合子列如果既含无穷多偶数项又含无穷多奇数项那它是发散的不算。所以 S {-1, 1}sup S 1inf S -1和定义 A 完全一致。这个定义的好处是极其直观而且给出了一条很实用的判定limsup 和 liminf 是聚点集合的上界和下界并且它们本身也是聚点在扩展实数意义下。换句话说存在一个子列收敛到 limsup也存在一个子列收敛到 liminf。所以你算完 limsup 之后应该能指着一个具体的子列说喏这个子列就收敛到它——如果指不出来那你多半算错了。2.3 两种定义为什么等价等价性的证明思路值得过一遍因为它顺便说明了 limsup 的两条关键性质它是最终上界里的最小者也是无穷多次超过里的临界面。先证明inf_n sup_{k≥n} a_k是聚点集合的上界。任取一个收敛子列a_{n_j} → L对每个 n只要n_j ≥ n就有a_{n_j} ≤ sup_{k≥n} a_k。让 j 趋大左边趋于 L右边是定值所以L ≤ sup_{k≥n} a_k对一切 n 都成立。两边再对 n 取下确界得L ≤ inf_n sup_{k≥n} a_k。于是所有聚点都不超过这个值它是上界。再证明这个值本身能被取到是聚点。设L* inf_n sup_{k≥n} a_k是有限值。对每个 m取 n m由上确界定义存在k_m ≥ m使得a_{k_m} sup_{k≥m} a_k - 1/m ≥ L* - 1/m。同时a_{k_m} ≤ sup_{k≥m} a_k而这个量随 m 递减趋于 L*所以a_{k_m} ≤ sup_{k≥m} a_k也夹向 L*。于是子列{a_{k_m}}收敛到 L*。证完。这段证明不长但它把上界和取到两件事一起交代了是理解 limsup 的最好材料。我第一次认真读完这个证明之后才真正把定义 A 和定义 B 在脑子里缝合起来。3. 手算示例从简单振荡到稠密取点定义理解了接下来是肌肉记忆的问题。手算 limsup/liminf 有固定的套路大致可以分成三种情形分段型奇偶、模 k、衰减型振荡乘一个趋于 0 或常数的因子、稠密型取值在整个区间里散布。下面按顺序过一遍最后附一张表供速查。3.1 分段型先按子列拆开再取上沿下沿这类题最常见。思路是把指标集 n 按某种规则分成若干类每一类构成一个子列算出每个子列的极限然后在这些极限里取最大值当 limsup最小值当 liminf。以a_n (-1)^n 1/n为例。偶数 n 时a_n 1 1/n → 1奇数 n 时a_n -1 1/n → -1。所以 limsup 1liminf -1。注意那个 1/n 完全没影响结论它只是让每项偏离一点最后被极限吃掉了。再看a_n (-1)^n · (1 1/n)。偶数项1 1/n → 1奇数项-(11/n) → -1。还是 1 和 -1。这类题的规律是只要振荡的包络最后趋于常数limsup 就是那个正常数liminf 就是那个负常数。如果是模 3 的分段呢比如a_n cos(2πn/3)取值在 1、-1/2、-1/2 之间循环。那么三类子列的极限分别是 1、-1/2、-1/2所以 limsup 1liminf -1/2。多段循环无非就是把 S 集合的规模扩大逻辑一模一样。3.2 无界型偶项爆炸奇项收敛考虑a_n nn 为偶数a_n 1/nn 为奇数。偶数项构成无界子列所以sup_{k≥n} a_k ∞对每个 n 都成立limsup ∞。至于下沿尾巴里的奇数项给出任意小的 1/k所以inf_{k≥n} a_k 0确切说当 n ≥ 1 时尾巴里一定包含奇数项其最小值趋于 0所以 liminf 0。这道题的价值在于打破一种错觉limsup 和 liminf 不一定都是有限的也不一定互为相反数甚至可能出现 ∞ 和 0 这种组合。只要有一条子列跑向 ∞limsup 就等于 ∞剩下的事完全由其他子列决定。3.3 衰减型振荡因子被压制a_n (-1)^n / n的 limsup 是 0liminf 也是 0因为整条序列本来就趋近于 0两个值都被压到一起去了此时 limsup liminf说明极限存在等于 0。这不是矛盾恰恰是判据limsup liminf是收敛的充要条件在扩展实数意义下等于 ∞ 就表示发散到 ∞。稍微改一下a_n (-1)^n (1 1/n)^n。偶数项趋于 e奇数项趋于 -e所以 limsup eliminf -e。这里的振荡因子不仅没衰减还缓慢增长到了 e于是上下沿被拉开。还有一类比较阴的a_n (-1)^n 1/n^2跟前面一样是 1 和 -1。别被高阶无穷小迷惑只要振荡幅度没被压到 0上下沿的距离就不会缩小。3.4 稠密型sin n 和有理数枚举前面都是分段型好办。真正的分水岭是这一类a_n sin n。这条序列没有奇偶分类也没有周期看起来毫无规律。但它的 limsup 1liminf -1。理由用数论由于 π 是无理数{n mod 2π}在 [0, 2π) 中是稠密的。也就是说无论你想在 [0, 2π) 里挑哪个位置开一个多小的区间总有无穷多个 n 使得n mod 2π落进去。那么取靠近 π/2 的位置就能让sin n无限接近 1取靠近 3π/2 的位置就能让sin n无限接近 -1。两个极值都被无穷多次逼近所以 limsup 1liminf -1。更极端的例子是把有理数排成一列a_n就是第 n 个有理数。每个实数都是这条序列的聚点有理数的稠密性保证所以聚点集合是整个扩展实数轴limsup ∞liminf -∞。这类题的通用方法是先确定这条序列的取值集合的闭包也就是能逼近到哪些点闭包的上确界就是 limsup下确界就是 liminf。分段型其实是这个方法的一个特例只不过闭包是个有限点集。3.5 一张表速查把上面的例子整理一下方便对照记忆。数列 a_nlim suplim inf关键理由(-1)^n1-1偶子列趋于 1奇子列趋于 -1(-1)^n 1/n1-1无穷小项不影响上下沿(-1)^n (1 1/n)1-1包络趋于常数 1(-1)^n (1 1/n)^ne-e两个子列分别趋于 e 和 -ecos(2πn/3)1-1/2三类子列的极限取最大最小偶 n 取 n奇 n 取 1/n∞0偶子列无界奇子列趋零sin n1-1{n mod 2π} 在 [0, 2π) 中稠密有理数全体枚举∞-∞每个实数都是聚点看这张表的时候注意两个反复出现的现象一是 limsup 一定不小于 liminf这不是巧合而是必然二是 limsup 和 liminf 一定都是能被子列逼近到的值不是凭空空想出来的上界。4. 必须背下来的性质概念会算了接下来是性质。limsup/liminf 的性质数量不算多但每一条的使用边界都很微妙尤其是关于四则运算的那几条弄错了就是直接丢分。4.1 基本不等式链与收敛判据最基本的两条lim inf a_n ≤ lim sup a_n理由很直接对每个 ninf_{k≥n} a_k ≤ sup_{k≥n} a_k让 n 取极限即可注意两边极限都存在。然后是最重要的判据数列{a_n}收敛在扩展实数意义下包括发散到 ±∞的充要条件是lim sup a_n lim inf a_n此时公共值就是极限。这条判据的用处比看起来大得多。很多证明里要证某数列收敛直接证任意子列都收敛到同一点很麻烦而改成先证 limsup ≤ 某个值再证 liminf ≥ 这个值两边一夹就完事了。后面第 6 节的次可加引理就是这个套路。还有几条简单的对称关系lim sup (-a_n) - lim inf a_n。把序列取反上沿变下沿直观上完全说得通。lim inf (-a_n) - lim sup a_n。若存在 N使得所有 n ≥ N 时a_n ≤ b_n则lim sup a_n ≤ lim sup b_nlim inf a_n ≤ lim inf b_n。注意前提是从某项之后一直成立不能只是无穷多次成立这个区别下一小节专门讲。4.2 最终与无穷多次最实用的操作性刻画这一条我觉得是全部性质里最该背下来的因为它把抽象的 sup/inf 变成了可以直接下手的语言lim sup a_n cc 为实数等价于存在 N使得对所有 n N 都有a_n c。也就是最终小于 c。lim sup a_n c等价于有无穷多个 n 使得a_n c。也就是无穷多次大于 c。注意这是单向的非对称刻画小于号能升级成最终大于号只能得到无穷多次。原因是 limsup 是一个上沿它小说明尾巴整体被压在 c 下面它大则只需要某个局部时不时冒个头。同样的逻辑对 liminf 成立把不等号反过来lim inf a_n c等价于最终a_n clim inf a_n c等价于无穷多次a_n c。我建议把这两组四条当成工具箱记下来。很多证明里说A 事件的概率为 0所以 limsup 意义下的坏事件概率为 0用的就是这个无穷多次的语言。第 6 节讲集合列的时候会再撞见它一次。4.3 四则运算只在不等式方向上成立这是最容易做错的部分。先说结论lim sup (a_n b_n) ≤ lim sup a_n lim sup b_n lim inf (a_n b_n) ≥ lim inf a_n lim inf b_n只有不等号没有等号。反例随手就来a_n (-1)^nb_n (-1)^{n1}。两个序列各自的 limsup 都是 1但a_n b_n ≡ 0它的 limsup 是 0。0 ≤ 2不等式成立而等号显然不成立。那等号什么时候成立有一个常用且好用的条件是其中一个序列收敛。如果a_n → aa 为有限实数那么lim sup (a_n b_n) a lim sup b_n lim inf (a_n b_n) a lim inf b_n这条非常实用。它说的是一个好序列收敛的可以自由地从 limsup 里提出来把坏序列单独留在里面。证明也不难利用|a_n - a|最终不超过 ε两边各加 b_n再取 limsup 即可。乘法类似在非负情形下有lim sup (a_n b_n) ≤ (lim sup a_n)(lim sup b_n) a_n, b_n ≥ 0同样如果a_n → a 0则可以提出来变成等式。提示用这几条性质之前先检查两件事——右边是不是出现了∞ - ∞或0 · ∞这种未定式以及那个好序列是不是真的收敛。这两点是最常出事故的地方。5. 踩坑实录五个最常见的误解这一节是我批改作业和答疑过程中反复遇到的错误类型按出现频率排序。每一条我尽量给出错误做法、正确做法、以及错在哪里这样比单纯说要小心有用得多。5.1 以为 tail sup 是对整条序列取 sup不少人第一次算lim sup a_n时直接把整条序列的上确界算出来交卷。这在常数序列或单调序列上碰巧对换个例子立刻错。比如a_n 1/n。整条序列的上确界是 1第一项但 limsup 是 0因为尾巴sup_{k≥n} 1/k 1/n → 0。定义里的 sup 是从第 n 项往后取的这个尾巴是关键。什么时候两者相等当序列单调递减时sup_{k≥n} a_k a_n此时 limsup 就等于极限如果存在。所以这个错误在单调题上不会暴露一到振荡或衰减题就原形毕露。正确的手算顺序应该是先写出尾巴上确界的表达式b_n再对b_n求 n → ∞ 的极限而不是跳过b_n直接看全集。5.2 拿 lim sup(a_n b_n) 直接相加这个前面已经给了反例但它在作业里出现的频率依然高得惊人主要是因为它看起来太自然了。我的经验是只要题目里的两个序列都带振荡就绝对不要拆开相加。判断标准很简单如果一个序列已经在跳另一个也在跳那么它们的和的振幅完全可能因为相位抵消而变小此时 limsup 会严格小于两者之和。而如果其中一个稳定抵消不会发生等号就成立。顺便说一个和它配套的坑lim sup(a_n b_n) ≥ lim sup a_n lim inf b_n这类一上一下的组合不等式很多人记不住方向。我的记法是想让 limsup 的结果尽量大就应该让两个 limsup 相加这是上界想让 liminf 的结果尽量小就让两个 liminf 相加这是下界。混搭的时候想清楚你在证上界还是下界方向就不容易错。5.3 把 ±∞ 当成不存在a_n n的 limsup 是 ∞liminf 也是 ∞这不是不存在而是存在且等于 ∞。在扩展实数系中∞ 是一个合法的极限值它表达的信息是序列无上界。为什么这个区分重要因为前面那条收敛判据在扩展实数下依然成立lim sup lim inf ∞恰好对应序列趋于正无穷。如果你把它当成不存在判据就断了一条腿。真正不存在的情况是什么在这套定义下几乎没有——只要允许取 ±∞任何数列的 limsup 和 liminf 都存在因为尾巴上确界序列单调必然有极限。这个永远存在的特性正是 limsup 和 liminf 比普通极限好用的地方你不需要先判断收敛性就可以开始算。5.4 以为 a_n ≤ b_n 无穷多次成立就够了这是一个非常隐蔽的错误。前面说过单调性要求从某项之后一直成立。如果有人把条件放松成有无穷多个 n 使得a_n ≤ b_n结论立刻失效。举个例子a_n 1所有 nb_n 1当 n 为偶数b_n 0当 n 为奇数。无穷多个 n偶数上a_n ≤ b_n成立但 limsup a_n 1 limsup b_n 1等等这里 limsup b_n 是多少尾巴里有偶数项等于 1所以sup_{k≥n} b_k 1limsup b_n 1恰好相等反例不够干净。换一个a_n 1b_n 1当 n 为偶数b_n 0.5当 n 为奇数。此时 limsup b_n 1lininf b_n 0.5。取c_n 1恒等d_n 1当 n 为偶数、d_n 0当 n 为奇数。则无穷多次c_n ≤ d_n偶数时相等但 liminf c_n 1 liminf d_n 0。看用 liminf 就构造出干净的反例了。无穷多次成立不足以推出 liminf 的不等式必须最终成立。5.5 以为 limsup 一定被某个子列刚刚好取到在有界情形下limsup 确实是某个子列的极限这个说法没问题第 2.3 节证过。但如果 limsup ∞就谈不上某个子列收敛到 ∞ 并取到这种话——它只是发散到无穷不是取到某个值。同样地把聚点集合的 sup 当成最大值也是不对的除非能证明它被取到。还有一个相关的小误区limsup 是某条子列的极限但这条子列不一定是原始序列在某个位置取到 limsup 这个值。比如a_n 1/nlimsup 0但序列里没有任何一项等于 0只是无限逼近。所以在写答案时说存在子列收敛到 0是对的说存在某项等于 0是错的。6. 它真正的用武之地学到这里很自然会问这个东西除了考试考还能干什么答案是它在分析学里属于基础设施级别很多定理的表述和证明都靠它兜底。挑三个最有代表性的场景说说。6.1 根值判别法为什么用 limsup 而不是普通极限考虑级数Σ a_n的根值判别法。标准写法是若 lim sup |a_n|^{1/n} 1则 Σ a_n 绝对收敛 若 lim sup |a_n|^{1/n} 1则 Σ a_n 发散 若等于 1判别法失效。为什么是 limsup因为|a_n|^{1/n}这条序列本身完全可能不收敛。比如构造一个奇偶交替的序列偶数项a_n 2^{-n}奇数项a_n 3^{-n}。那么|a_n|^{1/n}在 1/2偶数和 1/3奇数之间跳普通极限不存在但 limsup 1/2 1判别法照样能用结论是绝对收敛。判别法关心的是长期来看根值能不能被压到某个界以下而不是它是否正好趋于一个数。limsup 恰好是这种最终上界的精确语言所以它才是判别法里合适的工具。同样的道理比值判别法里也会出现 limsup 和 liminf 的版本lim sup |a_{n1}/a_n| 1蕴含收敛lim inf |a_{n1}/a_n| 1蕴含发散。顺便说一个实际做题的经验如果一道判别法的题里通项带着奇偶分类或者分段定义那基本就是冲着你用 limsup 来的。这时候别犹豫直接按子列拆开求上沿。6.2 集合列的上极限下极限无穷多次 vs 最终limsup/liminf 在测度论和概率论里有一套集合并集交集版本形式上是这样的lim sup A_n ∩_{n≥1} ∪_{k≥n} A_k lim inf A_n ∪_{n≥1} ∩_{k≥n} A_k不要被这串符号吓到它和数列版本是完全同构的把上确界换成并集把下确界换成交集把≤换成⊆就是同一套逻辑。翻译成人话x ∈ lim sup A_n意味着对每个 n都存在 k ≥ n 使得 x ∈ A_k。换句话说x 属于无穷多个 A_n。这就是无穷多次发生的集合版。x ∈ lim inf A_n意味着存在某个 n使得所有 k ≥ n 都有 x ∈ A_k。换句话说x 从某一项开始属于所有 A_n。这就是最终发生的集合版。有两条漂亮的对应关系可以帮你确认自己理解了一是lim sup A_n^c (lim inf A_n)^c对应数列里的lim sup(-a_n) -lim inf a_n二是对指示函数有1_{lim sup A_n} lim sup 1_{A_n}也就是集合的上极限恰好对应指示函数序列的上极限。概率论里最著名的应用是第一 Borel–Cantelli 引理如果Σ P(A_n) ∞那么P(lim sup A_n) 0。它的意思是如果一串事件发生的概率之和收敛那么这些事件发生无穷多次的概率为零。这条引理在证明几乎必然收敛时几乎是通用工具而它的表述方式完全建立在集合列的 limsup 上。6.3 次可加引理一个 limsup 夹逼的经典示范最后一个例子也是最能把前面所有知识串起来的一个。设数列{a_n}满足次可加性a_{mn} ≤ a_m a_n 对所有 m, n ≥ 1结论是lim_{n→∞} a_n / n存在并且等于inf_{n≥1} a_n / n。证明的关键步骤只有一个但用足了 limsup 的性质。固定 m把任意 n 写成n qm r其中 q 是商、0 ≤ r m。反复用次可加性a_n ≤ q · a_m a_r两边除以 na_n / n ≤ (q / n) · a_m a_r / n当 n → ∞ 时q/n → 1/m因为 r 被 m 卡住最多差一项而a_r / n → 0分子只有有限多个可能值。于是对上式取 limsuplim sup (a_n / n) ≤ a_m / m这个不等式对每一个m 都成立所以右边取下确界lim sup (a_n / n) ≤ inf_m (a_m / m)另一方向是平凡的因为下确界不超过任何一项所以inf_m (a_m/m) ≤ lim inf (a_n/n)。两个方向合起来inf_m (a_m/m) ≤ lim inf (a_n/n) ≤ lim sup (a_n/n) ≤ inf_m (a_m/m)头尾相等中间的 liminf 和 limsup 只能相等于是极限存在且等于那个下确界。整个证明里最有技术含量的一步就是取 limsup 得到一个对所有 m 都成立的不等式然后取下确界这个技巧在分析学里反复出现值得单独抄下来记住。我个人在实际做题时的体会是遇到证明某个极限存在的题先别急着证收敛而是尝试分别估计 limsup 和 liminf往中间夹。这个策略对付次可加型、递推型、带随机扰动的序列都很好用比硬算通项公式可靠得多。另外还有一个小技巧如果题目里出现了存在子列或者无穷多次成立这种字眼八成是要你从 limsup/liminf 的角度切入而不是从普通极限切入。这两条经验帮我省下的时间比多背十条性质都多。
上一篇/下一篇内容由系统自动关联 返回资讯列表 →