Administrator
发布于 2026-11-08 / 4 阅读
0
0

从逼近到取到:最值定理的一个数列证明

摘要:闭区间上的连续函数能够取到最大值,可以沿用有界性引理的证明思路:先由上确界性质选出函数值趋于上确界的数列,再从相应的自变量数列中抽出收敛子列,最后利用连续性得到最大值点。这里真正需要解释的是:为什么“可以任意逼近”,最终能变成“确实能够取到”?

最值定理告诉我们:若函数 ​f 在闭区间 ​[a,b] 上连续,则它在这个区间上有最大值与最小值。

教材在证明这个定理之前,先证明了一个有界性引理:闭区间上的连续函数必定有界。

引理采用反证法。反设 ​f 无界,那么它或者无上界,或者无下界;后一种情形只需把 ​f 换成 ​-f,所以不妨设 ​f 无上界。于是,可以对每个正整数 ​n 选取 ​x_n\in[a,b],使

f(x_n)>n.

因为 ​\{x_n\} 有界,可以抽出收敛子列 ​x_{n_k}\to x_0;又因为区间是闭的,​x_0 仍在 ​[a,b] 内。于是,连续性要求

f(x_{n_k})\longrightarrow f(x_0),

但 ​f(x_{n_k})>n_k\to+\infty,矛盾。

读到这里,我想到:既然引理已经使用了“选数列、抽子列、用连续性”的方法,证明最大值存在时,是否也能沿用它?

引理中,我们让函数值趋于无穷大。如果现在让函数值趋于上确界,再利用连续性,是否就能找到一个真正取到上确界的点?

这个想法是成立的。不过,需要先弄清楚上确界究竟保证了什么。

由有界性引理,​f 的值域非空且有界。根据实数的确界原理,可以记

M=\sup\{f(x):x\in[a,b]\}.

​M 是一个有限实数,并且对所有 ​x\in[a,b],都有 ​f(x)\le M。我们接下来的目标,是证明存在 ​x_0\in[a,b],使 ​f(x_0)=M。

由于 ​M 是最小的上界,对任意 ​\alpha>0,​M-\alpha 都不可能仍是上界。因此,必定存在 ​x\in[a,b],满足

M-\alpha<f(x)\le M.

这里有一个容易混淆的地方:上确界性质并不保证 ​M-\alpha 本身是某个函数值,它保证的是存在函数值落在 ​(M-\alpha,M] 中。

例如,对常值函数 ​f(x)\equiv1,上确界是 ​1,但任何 ​1-\alpha(​\alpha>0)都取不到。尽管如此,函数值 ​1 仍然满足上面的不等式。

这已经足够构造我们需要的数列了。

对每个正整数 ​n,取 ​\alpha=1/n,便可以选出 ​x_n\in[a,b],使

M-\frac1n<f(x_n)\le M.

由夹逼定理,

\lim_{n\to\infty}f(x_n)=M.

到这里,我们已经把“函数值可以任意接近上确界”,变成了一个明确的数列极限。

但证明还没有结束。​f(x_n)\to M 只说明函数值的趋向,并不能单独保证存在某个点取到 ​M,也不能保证 ​x_n 收敛。例如,对 ​[-1,1] 上的函数 ​f(x)=x^2,取 ​x_n=(-1)^n,函数值始终等于 ​1,而自变量数列并不收敛。

所幸,我们只需要一个收敛子列。

因为 ​x_n\in[a,b],数列 ​\{x_n\} 有界。由有界数列的收敛子列定理,存在子列 ​\{x_{n_k}\},使

x_{n_k}\longrightarrow x_0.

又因为

a\le x_{n_k}\le b,

令 ​k\to\infty,得到 ​a\le x_0\le b,所以 ​x_0 仍属于定义域。

一方面,收敛数列的任意子列都收敛于同一个极限。这是因为 ​n_k\ge k,当 ​k\ge N 时必有 ​n_k\ge N,原数列尾部的估计也就控制着子列的尾部。因此

\lim_{k\to\infty}f(x_{n_k})=M.

另一方面,由 ​f 在 ​x_0 处连续,

\lim_{k\to\infty}f(x_{n_k})=f(x_0).

由极限的唯一性,

\boxed{f(x_0)=M}.

这就证明了 ​f 在 ​[a,b] 上有最大值。由于 ​-f 同样连续,对 ​-f 使用上述结论,便得到 ​f 的最小值也存在。

这个证明中,三个条件分别承担了明确的工作:

条件 在证明中的作用
区间有界 保证​\{x_n\} 有界,从而能抽出收敛子列
区间闭 保证子列的极限​x_0 仍属于定义域
函数连续 保证​f(x_{n_k})\to f(x_0)

去掉这些条件后,结论就可能失败。

先看定义域无界的情形:

f(x)=\frac{x}{1+x},\qquad x\in[0,+\infty).

这个函数连续,定义域也是闭的,函数值还有界,但上确界 ​1 始终取不到。取 ​x_n=n,便有 ​f(x_n)\to1,而自变量数列没有收敛子列。

再看定义域不闭的情形。​f(x)=x 在 ​[0,1) 上连续,其上确界是 ​1,却没有最大值。我们可以选出越来越接近 ​1 的点,但它们趋向的点 ​1 不在定义域中。

最后看连续性。在闭区间 ​[0,1] 上定义

f(x)= \begin{cases} x,&0\le x<1,\\ 0,&x=1. \end{cases}

它的上确界同样是 ​1,但取不到。此时取 ​x_n=1-1/(2n),便有 ​1-1/n<f(x_n)<1,满足前面构造中要求的逼近不等式。虽然 ​x_n\to1 且 ​f(x_n)\to1,却有 ​f(1)=0。极限点留在了定义域中,但函数在这里不连续,最后一步等式便无法成立。

这些例子分别说明,证明中的每一步都需要相应的条件支持。

教材采用的倒数函数证明,也可以从这个角度理解。

假设上确界 ​M 取不到,那么对所有 ​x\in[a,b],都有 ​f(x)<M。于是可以定义

g(x)=\frac{1}{M-f(x)}.

​g 在 ​[a,b] 上连续且为正。由有界性引理,存在 ​G>0,使

0<g(x)\le G.

因此

M-f(x)\ge\frac1G,

也就是

f(x)\le M-\frac1G.

这说明比 ​M 更小的数 ​M-1/G 也是上界,与 ​M 为上确界矛盾。

倒数函数的作用很清楚:上确界性质允许 ​M-f(x) 任意接近零;假如这个差始终为正,取倒数就会产生任意大的函数值,从而与连续函数的有界性冲突。

数列证明则直接沿着逼近过程走下去:选出越来越接近 ​M 的函数值,抽取相应自变量的收敛子列,再通过连续性确认极限点的函数值就是 ​M。

回头再看“任意逼近”,我发现其中还藏着一个量词上的差别:上确界性质告诉我,对每个 ​\alpha>0,都可以找到一个相应的点 ​x;我们想做的,正是把量词顺序换过来,要求存在同一个点 ​x_0,使它对所有 ​\alpha>0 都满足 ​M-\alpha<f(x_0)\le M。后一句等价于 ​f(x_0)=M。一般说来,这样的交换并不成立;在这里,是有界闭区间和连续性一起保证了它。

这个数列证明让我看清了两者之间的联系:先为不同的精度选择相应的点,再利用区间的有界性和闭性找到一个仍在定义域内的子列极限,最后借助连续性,确认这个极限点就是取到 ​M 的点。


评论