从第一次接触积分第二中值定理到现在我一直觉得它是数学分析里被低估的“工具型定理”。很多同学学到这里只记住“函数单调就可以提出来”但真到做题时要么不会判断条件要么不知道在反常积分里怎么用。这篇内容不打算做教科书式的复述而是从证明思路、应用场景到常见误区完整拆一遍希望能帮正在学数学分析、准备考研或者工作中需要用振荡积分的读者真正把它用起来。积分第二中值定理解决的问题很具体当被积函数是两个函数相乘其中一个“变化有方向”单调另一个“振荡或可积”时怎么把这个乘积积分简化。它和微分中值定理的最大区别在于处理的对象不是某个点的导数而是整个区间上的积分。理解了这一点后面所有应用都会顺很多。1. 先把话说清楚积分第二中值定理到底在讲什么1.1 定理的标准表述最常用的是下面这个形式。设函数 (f) 在区间 ([a,b]) 上可积函数 (g) 在 ([a,b]) 上单调则存在 (\xi \in [a,b])使得[ \int_a^b f(x)g(x),dx g(a)\int_a^{\xi} f(x),dx g(b)\int_{\xi}^{b} f(x),dx. ]这个式子看起来有点对称单调函数 (g) 的两个端点值分别“乘以”部分区间上的积分中间用一个 (\xi) 切了一刀。实际证明和解题中更常用的是它的退化形式也叫 Bonnet 形式。若 (g) 单调递减且 (g(x) \ge 0)则存在 (\xi \in [a,b])使得[ \int_a^b f(x)g(x),dx g(a)\int_a^{\xi} f(x),dx. ]若 (g) 单调递增且非负则[ \int_a^b f(x)g(x),dx g(b)\int_{\xi}^{b} f(x),dx. ]为什么说 Bonnet 形式更实用因为它只保留了一个端点值另一个端点被“降为零”。比如处理 (g(x)\frac{1}{x}) 这类递减趋于零的函数尾部积分的估计直接变成只含 (g(a)) 一项方便控制。我第一次看这个定理时最困惑的是为什么单调函数不需要连续答案在于单调函数的可积性已经足够好而且它的变化方向一致这正好是下面证明里最关键的一步。1.2 它和第一中值定理的区别与互补很多学生会把积分第一中值定理和积分第二中值定理搞混。第一中值定理说的是若 (g) 连续且不变号则存在 (\xi) 使[ \int_a^b f(x)g(x),dx g(\xi)\int_a^b f(x),dx. ]它处理的是“(g) 在某个代表点取值”的情形要求 (g) 要足够“平滑”至少连续。而第二中值定理不要求 (g) 连续只要求单调它处理的是“(g) 在整个区间两端取值”的情形。举个直观例子。(g(x)\text{sgn}(x-\frac{ab}{2})) 这种阶梯函数第一中值定理没法直接用因为它在中间跳变但第二中值定理完全适用因为阶梯函数单调。这样一对比两个定理的适用边界就清楚了连续、保号用第一中值单调、可能有跳变用第二中值。需要说明的是这两个定理不是竞争关系。处理一个复杂积分时往往先判断哪个因子更“规整”再决定用哪一个。至于“单调但不可导”的函数怎么办第二中值定理的证明也给出了答案。2. 定理为什么成立一条从离散到连续的证明路径2.1 从阿贝尔变换说起积分第二中值定理的证明核心思想是“连续版的阿贝尔变换”。离散版本的阿贝尔变换长这样设 (A_k a_1 \cdots a_k)则[ \sum_{k1}^{n} a_k b_k A_n b_n \sum_{k1}^{n-1} A_k(b_k - b_{k1}). ]这个公式把一个普通求和变成了“部分和乘以差分”的形式。它的威力在于如果 (b_k) 单调那么差分的符号是一致的整个余项可以被部分和的最大绝对值控制住。这是阿贝尔变换在级数判别法里反复出现的原因。积分第二中值定理其实就是把求和中的 (a_k) 换成“小区间上的积分”把 (b_k) 换成“单调函数在分点处的值”。当分划无限加密时离散的阿贝尔变换取极限自然就得到积分版本的定理。我建议还没学过这个定理的读者先自己动手写一遍离散阿贝尔变换再回来看积分版本理解成本会低很多。2.2 一个初等的证明骨架这里给出一个我很喜欢的初等证明整个过程只需要用到“可积函数的积分是连续的”和“连续函数的介值性质”。先证明 Bonnet 形式设 (g) 单调递减且非负。如果 (g(a)0)那么 (g) 恒为零结论平凡所以下面假设 (g(a)0)。令[ F(x)\int_a^x f(t),dt. ]因为 (f) 可积所以 (F) 是连续函数。设 (m) 和 (M) 分别为 (F) 在 ([a,b]) 上的最小值和最大值。对任意分划 (ax_0 x_1 \cdots x_nb)构造和式[ S_P \sum_{i0}^{n-1} g(x_i)\bigl(F(x_{i1})-F(x_i)\bigr). ]当分划的模趋于零时因为 (g) 单调有界且 (f) 可积这个和式收敛到 (\int_a^b f(x)g(x),dx)。注意这是黎曼和的一种合理取法左端点的函数值乘以 ([x_i,x_{i1}]) 上的积分增量。记 (\lambda_i \frac{g(x_i)}{g(a)})则 (1\lambda_0 \ge \lambda_1 \ge \cdots \ge \lambda_{n-1} \ge 0)。把 (S_P/g(a)) 用分部求和展开[ \frac{S_P}{g(a)} \sum_{i0}^{n-1}\lambda_i\bigl(F(x_{i1})-F(x_i)\bigr) ][ (1-\lambda_1)F(x_1) (\lambda_1-\lambda_2)F(x_2) \cdots (\lambda_{n-2}-\lambda_{n-1})F(x_{n-1}) \lambda_{n-1}F(x_n). ]这里漏掉了 (x_0) 项因为系数 (1-\lambda_00)。所有系数都是非负的而且加起来正好等于[ (1-\lambda_1)(\lambda_1-\lambda_2)\cdots(\lambda_{n-2}-\lambda_{n-1})\lambda_{n-1}1. ]所以 (\frac{S_P}{g(a)}) 是 (F(x_1),\dots,F(x_n)) 的一个凸组合一定落在 (m) 和 (M) 之间。取极限就得到[ m \le \frac{1}{g(a)}\int_a^b f(x)g(x),dx \le M. ]由 (F) 的连续性一定存在某个 (\xi \in [a,b])使得[ F(\xi) \frac{1}{g(a)}\int_a^b f(x)g(x),dx. ]于是 Bonnet 形式得证。这里的关键步骤就是 (\lambda_i) 的单调性它是“(g) 单调”这个条件的直接体现。没有单调性(\lambda_i) 之间的差就可能变号凸组合性质就崩了。有了 Bonnet 形式一般形式就很简单了。若 (g) 单调递减但不一定非负取 (h(x)g(x)-g(b))则 (h) 单调递减且非负。对 (h) 用 Bonnet 形式[ \int_a^b f(x)h(x),dx (g(a)-g(b))\int_a^{\xi} f(x),dx. ]于是[ \int_a^b fg \int_a^b fh g(b)\int_a^b f g(a)\int_a^{\xi} f g(b)\int_{\xi}^{b} f. ]这就是一般形式。单调递增的情形可以用类似方法处理或者直接对 (-g) 用递减结论最终形式完全一样。2.3 连续情形为什么能直接分部积分如果额外假设 (g) 是连续可导的那么证明可以更短分部积分得[ \int_a^b f(x)g(x),dx F(b)g(b) - F(a)g(a) - \int_a^b F(x)g(x),dx. ]因为 (g) 单调所以 (g) 不变号。把 (\int_a^b F g) 用积分第一中值定理处理整理之后也能得到第二中值形式。但问题是把条件限制在“可导”会丢掉一大片应用场景。很多实际遇到的单调函数比如符号函数、阶梯函数、(\lfloor x \rfloor) 这类并不可导甚至连连续都不满足。第二中值定理的价值就在于此它只需要单调不需要光滑这大大扩展了适用范围。我个人的感受是真正理解这个定理的标志是能不看任何资料从阿贝尔变换出发推出一般形式。如果你能做到这一步后面所有应用和变形都不会再觉得飘。3. 真正能拿来用的地方典型应用拆解3.1 反常积分收敛性的判断第二中值定理最重要的应用场景之一是判断反常积分的收敛性尤其是“振荡因子乘以单调趋于零因子”的积分。经典例子是证明积分[ \int_1^{\infty} \frac{\sin x}{x},dx ]收敛。这个积分不绝对收敛因为 (\frac{|\sin x|}{x}) 的下限可以用 (\frac{\sin^2 x}{x}) 估计而 (\frac{1-\cos 2x}{2x}) 中的发散部分会拖垮绝对收敛性。但普通收敛是成立的。要严格证明对任意 (B A 1)在区间 ([A,B]) 上用 Bonnet 递减非负形式令 (f(x)\sin x)(g(x)\frac{1}{x})则存在 (\xi \in [A,B])使得[ \int_A^B \frac{\sin x}{x},dx \frac{1}{A}\int_A^{\xi} \sin x,dx. ]立刻得到[ \left|\int_A^B \frac{\sin x}{x},dx\right| \le \frac{1}{A} \left|\int_A^{\xi} \sin x,dx\right| \le \frac{2}{A}. ]当 (A \to \infty) 时右边趋于零由柯西收敛准则原积分收敛。这个证明的精髓在于第二中值定理把“衰减因子” (\frac{1}{x}) 从积分里提了出来剩下的只是 (\sin x) 在一个子区间上的积分而振荡函数的积分天然有一个全局上界。类似地Dirichlet 判别法和 Abel 判别法的证明本质都是这个放缩过程。你可以自己试一下用同样方法证明 (\int_1^\infty \frac{\cos x}{x^p},dx) 在 (p0) 时收敛方法一模一样。3.2 Dirichlet积分与Riemann-Lebesgue引理如果把上一个例子再往前推一步就会遇到调和分析和傅里叶分析中非常重要的 Riemann-Lebesgue 引理对 ([a,b]) 上的可积函数 (f)有[ \lim_{\lambda \to \infty} \int_a^b f(x)\sin(\lambda x),dx 0. ]这个引理的完整证明通常用阶梯函数逼近但有一个直观的局部版本如果 (f) 本身单调有界那么直接用第二中值定理就能给出明确的收敛速度估计。设 (f) 单调取 (g(x)f(x))在 ([a,b]) 上用一般形式存在 (\xi) 使[ \int_a^b f(x)\sin(\lambda x),dx f(a)\int_a^{\xi}\sin(\lambda x),dx f(b)\int_{\xi}^{b}\sin(\lambda x),dx. ]两个积分分别估计[ \left|\int_a^{\xi}\sin(\lambda x),dx\right| \left|\frac{\cos(\lambda a)-\cos(\lambda \xi)}{\lambda}\right| \le \frac{2}{\lambda}. ]于是整个积分是 (O(1/\lambda))自然趋于零。这个结论解释了为什么高频振荡积分会快速衰减振荡项在足够小的区间内正负抵消剩下的误差来自端点附近。如果你以后学数值积分会发现很多处理高频振荡积分的算法都把这个 (O(1/\lambda)) 估计作为误差分析的基础。3.3 渐近估计一个顺手的小例子第二中值定理不光能判断收敛性还可以用来做渐近估计。考虑[ I(\lambda)\int_0^1 x \sin(\lambda x),dx. ]直接用分部积分会得到[ I(\lambda) -\frac{\cos \lambda}{\lambda} \frac{\sin \lambda}{\lambda^2}. ]当 (\lambda) 很大时主项是 (-\frac{\cos \lambda}{\lambda})这个主项恰好来自右端点 (x1) 的贡献。如果把 (f(x)x) 看成单调因子用第二中值定理也能快速得到同样的数量级估计[ |I(\lambda)| \le \frac{2}{\lambda}. ]虽然第二中值定理给不出精确的端点系数但它能保证整体量级而且不需要 (f) 可导只需要单调有界。这在很多工程估计里已经够用了。我做数值实验时经常用这个思路验证程序结果是否合理高频积分的数量级如果不符合 (O(1/\lambda))大概率是离散化精度出了问题。4. 学习中常见的坑条件理解与误区排查4.1 单调条件到底能不能去掉这是我在教学中被问过很多次的问题单调性能不能放宽答案是不能随便放宽因为结论确实会失效。最简单的反例是取 (f(x)1)(g(x)(x-1)^2)区间取 ([0,2])。这时 (g) 不单调左边[ \int_0^2 (x-1)^2,dx \frac{2}{3}. ]但第二中值定理右边是[ g(0)\int_0^{\xi} 1,dx g(2)\int_{\xi}^{2} 1,dx 1\cdot \xi 1\cdot(2-\xi) 2, ]不可能等于 (\frac{2}{3})。这个反例说明单调性不是可有可无的技术性假设而是保证中间项可以被“吸收”成端点项的关键。从证明角度理解更清楚(g) 单调保证了离散变换中的权重 (\lambda_i) 具备一致的方向这样余项才能落在 (F) 的最小值和最大值之间。一旦方向混乱权重差可正可负就无法用介值性质了。4.2 端点选取为什么有时看似随意结论里的 (\xi) 并不总是唯一的而且经常可以取到端点。比如 (f(x)\sin x)(g(x)1)常值函数既单调又连续那么[ \int_0^{2\pi} \sin x,dx 0, ]右边的两个积分项也恒为零(\xi) 取任何值都可以。这提醒我们(\xi) 只是“存在性结论”不是可计算的量它的意义在于只要知道 (\xi) 落在区间内部就可以对只含单点积分的表达式做绝对值上界估计。在实际使用中我们从不关心 (\xi) 具体等于多少只关心它存在。4.3 广义积分版本的条件差异很多人会把有限区间的结论直接搬到无穷区间写成类似[ \int_a^\infty f(x)g(x),dx g(a)\int_a^\xi f,dx g(\infty)\int_\xi^\infty f,dx ]这样的形式这是不严谨的。右边两个广义积分可能根本不存在而且 (g(\infty)) 也不一定收敛。正确做法是先在有限区间 ([A,B]) 上使用第二中值定理再令端点趋于极限。以 (\int_1^\infty \frac{\sin x}{x},dx) 为例我们先对 ([A,B]) 用定理得到尾部积分的 (2/A) 上界再取极限。整个过程没有对无穷区间直接套公式。另外要注意退化形式的使用条件。Bonnet 形式要求 (g) 非负且递减如果 (g) 只是单调但不保号直接用退化形式会出错。稳妥的做法是先用 (g(x)-g(b)) 转化成非负情形或者干脆套一般形式。5. 教学与自学中的几点个人体会5.1 证明记住了题不会做怎么办如果你觉得定理形式都懂但做题时不知道怎么下手可以试试下面这个三步框架。第一步找出乘积积分里哪个因子是单调的。如果两个因子都不单调先想想能不能通过换元、拆区间让其中一个变单调如果做不到第二中值定理大概率不是第一选择。第二步确定单调因子的方向和非负性。递减非负用 Bonnet 递减形式递增非负用 Bonnet 递增形式一般情况用完整的一般形式。第三步把积分限制在一个适当区间上利用绝对值估计把不想要的因子扔掉。例如证明 (\int_0^\infty \sin(x^2),dx) 收敛时先换元 (tx^2)得到 (\int_0^\infty \frac{\sin t}{2\sqrt t},dt)其中 (\frac{1}{2\sqrt t}) 单调递减趋于零(\sin t) 的部分和积分有界于是可以套用 Dirichlet 判别法。这类题的关键不是计算而是识别“单调因子”和“可控振荡因子”的组合。5.2 从积分第二中值定理延伸出去如果你学有余力可以试着研究几个延伸方向。一个是把“单调”推广到“有界变差”有界变差函数可以分解为两个单调函数之差因此第二中值定理也能被推广到更广的函数类。另一个是把它和离散阿贝尔变换对照着看你会发现很多级数求和和积分估计的思路是同构的。从教学角度看我特别推荐数学系的学生自己推导一遍这个定理不要只看书上的完整证明。推导过程中那个“(\lambda_i) 递减导致凸组合”的细节比结论本身更值得回味。我自己的体会是中值定理类结论最容易给人“好像懂了”的错觉。判断是否真懂的简单标准是能不能不看笔记从阿贝尔变换出发独立写出第二中值定理的完整证明。能写出来后面用起来会非常有底气。