∫π每天一道数学题
← 返回数学分析
数学分析 · 第 4 讲 · 2026-09-30 · 约 14 分钟

第4讲 无穷小比大小——为什么 sin x 有时能换成 x,有时不能

高中有一句口诀:lim 乘除可换,加减不可换。这一讲讲清为什么,以及那句口诀漏掉的一半——加减在什么条件下仍然可以换。核心是同一族近似(sin x = x、sin x = x − x³/6)到底差在哪,顺带把高阶无穷小的 o 记号、泰勒展开的门,一起打开。

这一个题目,你很可能见过:

lim⁡x→0x−sin⁡xx3\lim_{x \to 0} \frac{x - \sin x}{x^3}

按"sin⁡x∼x\sin x \sim x",把分子里的 sin⁡x\sin x 换成 xx,得:

x−xx3=0\frac{x - x}{x^3} = 0

答案是 16\dfrac{1}{6},不是 0。

这是高中最难的坎之一。更麻烦的是,同一年你学过另一个题:

lim⁡x→0sin⁡2xx=2\lim_{x \to 0} \frac{\sin 2x}{x} = 2

这里把 sin⁡2x\sin 2x 换成 2x2x,完全正确。

同样是"sin⁡x∼x\sin x \sim x",一次对一次错。口诀说"乘除可用,加减不可用"——可为什么?这一讲把这件事追到底。

答案会分成三层:第一层,sin⁡x\sin x 的近似有不止一个,换成 xx 只是其中最粗的一个;第二层,"相等"和"近似"的区别,决定了近似能否被替换;第三层,加减什么时候可以换、什么时候不可以。

第一层:sin⁡x\sin x 的近似不止一个

先忘掉"sin⁡x∼x\sin x \sim x"。看一组表。

当 x=0.1x = 0.1 时:

表达式值与 sin⁡0.1\sin 0.1 的差
sin⁡0.1\sin 0.10.0998334166—
x=0.1x = 0.10.11.67×10−41.67 \times 10^{-4}
x−x36x - \dfrac{x^3}{6}0.09983333338.3×10−88.3 \times 10^{-8}

xx 把误差降到 10−410^{-4} 量级,x−x3/6x - x^3/6 把误差降到 10−810^{-8} 量级。后者精细一百倍。

这不是巧合。sin⁡x\sin x 的完整展开是:

sin⁡x=x−x33!+x55!−x77!+⋯\sin x = x - \frac{x^3}{3!} + \frac{x^5}{5!} - \frac{x^7}{7!} + \cdots

xx 是它的第一项,x−x3/6x - x^3/6 是它的前两项,x−x3/6+x5/120x - x^3/6 + x^5/120 是前三项。每一项都是同一个函数的、不同精度的近似。

「sin⁡x∼x\sin x \sim x」用的是第一项。「x−sin⁡x∼x36x - \sin x \sim \dfrac{x^3}{6}」用的是前两项相减。

同一个函数,两个都对,因为对应不同的精度。用第一项去做需要第二项的题,就会错。

这就是开头那道题错在哪:分子 x−sin⁡xx - \sin x 里,第一项 xx 被对消掉了,剩下的是 x3x^3 项;用一阶近似等于把真正有用的信息扔了。

第二层:什么是"比大小"

要讲清替换规则,得先有语言。无穷小之间可以比大小。

定义:若在同一过程中 β→0\beta \to 0、α→0\alpha \to 0 且 α≠0\alpha \ne 0,

  • 若 βα→0\dfrac{\beta}{\alpha} \to 0,称 β\beta 是比 α\alpha 高阶的无穷小,记作 β=o(α)\beta = o(\alpha)
  • 若 βα→1\dfrac{\beta}{\alpha} \to 1,称 β\beta 与 α\alpha 是等价无穷小,记作 β∼α\beta \sim \alpha

读法:o(α)o(\alpha) 念"小欧",∼\sim 念"等价于"。

o(α)o(\alpha) 不是一个具体的函数,是一族函数的统称——凡是比 α\alpha 趋于 0 更快的东西都是 o(α)o(\alpha)。x2x^2 是 o(x)o(x),x5x^5 是 o(x)o(x),sin⁡x−x\sin x - x 也是 o(x)o(x)。

有了这个记号,sin⁡x\sin x 的一族近似可以写成:

sin⁡x=x+o(x)(只留第一项)\sin x = x + o(x) \quad\quad \text{(只留第一项)} sin⁡x=x−x36+o(x3)(留前两项)\sin x = x - \frac{x^3}{6} + o(x^3) \quad\quad \text{(留前两项)} sin⁡x=x−x36+x5120+o(x5)(留前三项)\sin x = x - \frac{x^3}{6} + \frac{x^5}{120} + o(x^5) \quad\quad \text{(留前三项)}

o(xn)o(x^n) 的意思是:剩下所有项的阶都高于 nn,它们在 x→0x\to 0 时比 xnx^n 更快地消失。

于是替换的本质就清楚了:

用 xx 换 sin⁡x\sin x,等价于说"我只关心到 xx 这一阶,x3x^3 及以后全部扔进 o(x)o(x) 里"。

用 x−x3/6x - x^3/6 换 sin⁡x\sin x,等价于说"我关心到 x3x^3 这一阶"。

第三层:什么时候可以换

现在能回答那个问题了。

乘除法:可以换,理由很短

设 α∼β\alpha \sim \beta,要算 lim⁡α⋅f\lim \alpha \cdot f。因为 αβ→1\dfrac{\alpha}{\beta} \to 1,改写:

lim⁡αf=lim⁡(αβ⋅β⋅f)=lim⁡αβ⋅lim⁡βf=1⋅lim⁡βf=lim⁡βf\lim \alpha f = \lim \left(\frac{\alpha}{\beta}\cdot \beta \cdot f\right) = \lim\frac{\alpha}{\beta} \cdot \lim \beta f = 1 \cdot \lim \beta f = \lim \beta f

能换的原因是:你只是给整个乘积乘上了一个趋于 1 的因子。 而乘一个趋于 1 的数,不改变极限。

除法同理,因为除以 β\beta 相当于乘 1/β1/\beta,而 α∼β\alpha \sim \beta 保证 1/α∼1/β1/\alpha \sim 1/\beta。

所以 lim⁡sin⁡2xx=lim⁡2xx=2\lim \dfrac{\sin 2x}{x} = \lim \dfrac{2x}{x} = 2 完全合法——sin⁡2x\sin 2x 在这个式子里是一个可以被提出来的整体因子。

加减法:麻烦在这里

加减法的麻烦,用一句话说:

加减法里,被扔掉的那一项,可能正好是你想要的那个数。

sin⁡x∼x\sin x \sim x 扔掉的是 −x36-\dfrac{x^3}{6}。这个被扔的东西在分母是 x3x^3 时,恰恰是主角。

看三个例子,这是全讲的核。

例一:lim⁡x→0x−sin⁡xx3\lim\limits_{x\to 0}\dfrac{x - \sin x}{x^3}

正确做法:展开到 x3x^3。

sin⁡x=x−x36+o(x3)\sin x = x - \frac{x^3}{6} + o(x^3) x−sin⁡x=x−(x−x36+o(x3))=x36+o(x3)x - \sin x = x - \left(x - \frac{x^3}{6} + o(x^3)\right) = \frac{x^3}{6} + o(x^3) ⇒lim⁡x→0x−sin⁡xx3=16\Rightarrow \quad \lim_{x\to 0}\frac{x - \sin x}{x^3} = \frac{1}{6}

第一项消掉了,剩下的是第三项。如果只用 sin⁡x∼x\sin x \sim x,等于把分子化成 0,那后面什么都没了。

例二:lim⁡x→0tan⁡x−sin⁡xx3\lim\limits_{x\to 0}\dfrac{\tan x - \sin x}{x^3}

这是老师的保留曲目。按"tan⁡x∼x\tan x \sim x 且 sin⁡x∼x\sin x \sim x"代入,得 x−x=0x - x = 0。

正确做法:两项分别展开到 x3x^3。

tan⁡x=x+x33+o(x3),sin⁡x=x−x36+o(x3)\tan x = x + \frac{x^3}{3} + o(x^3),\qquad \sin x = x - \frac{x^3}{6} + o(x^3) tan⁡x−sin⁡x=x33+x36+o(x3)=x32+o(x3)\tan x - \sin x = \frac{x^3}{3} + \frac{x^3}{6} + o(x^3) = \frac{x^3}{2} + o(x^3) ⇒lim⁡x→0tan⁡x−sin⁡xx3=12\Rightarrow \quad \lim_{x\to 0}\frac{\tan x - \sin x}{x^3} = \frac{1}{2}

注意一个细节:两个近似各自的 xx 项都是"错"的(tan⁡x\tan x 的第一项是 xx,是对的;sin⁡x\sin x 的第一项也是 xx,也是对的)——它们各自作为近似都没问题,错的是相减之后这两个 xx 对消,让第三项浮出水面。不是替换错了,是精度不够。

例三:lim⁡x→01−cos⁡xx2\lim\limits_{x\to 0}\dfrac{1 - \cos x}{x^2}

这道题就不一样了。1−cos⁡x=x22+o(x2)1 - \cos x = \dfrac{x^2}{2} + o(x^2),直接得 12\dfrac{1}{2}。这里虽然也是减法,但被减去的两项阶数不同——1 是常数(0 阶),cos⁡x\cos x 的一阶项是 1,对消后的第一项就是 x2x^2,二阶就够用。

规律

三条例子排在一起,规律出来了:

加减法中能不能替换,取决于:把近似的那一项扔掉之后,剩下的东西在不在你要的阶数上。

  • 分母是 x3x^3,你就要保留到 x3x^3;扔掉 x3x^3 就是扔掉了答案。
  • 分母是 x2x^2,1−cos⁡x1 - \cos x 保留到 x2x^2 就够了,因为常数项已经对消掉了。
  • 判据:展开到"相减之后第一个不为零的项"。

还有一个常见的加强版条件:如果两个无穷小相减后,它们的第一项系数不相等,那就可以直接换——因为对消不像减法那么彻底,留下的就是你要的阶。但这条只是在"第一项就够"时的捷径,遇到对消就失效,所以不如一律展开稳妥。

oo 的运算规则

现在给 oo 的用法立个规矩。这些规则用熟了,加减法就是机械操作。

o(xn)±o(xn)=o(xn)(同阶加减,还是不高于 n 阶的项)o(x^n) \pm o(x^n) = o(x^n) \quad\text{(同阶加减,还是不高于 n 阶的项)} o(xm)±o(xn)=o(xn)(m>n)(不同阶相加减,取低阶)o(x^m) \pm o(x^n) = o(x^n) \quad (m > n) \quad\text{(不同阶相加减,取低阶)} o(xm)⋅o(xn)=o(xm+n),xm⋅o(xn)=o(xm+n)(相乘,阶数相加)o(x^m)\cdot o(x^n) = o(x^{m+n}),\qquad x^m \cdot o(x^n) = o(x^{m+n}) \quad\text{(相乘,阶数相加)}

第二条最重要:不同阶的东西相加减,阶数低的那一方说话。 这就是"x 项比 x^3 项大"的精确说法,也是为什么分子里 xx 和 sin⁡x\sin x 一减,x3x^3 就浮出来了。

同一族近似的精度阶梯

sin x 的一族近似:留的项越多,红线越贴函数本身;扔掉的是高阶项还是主角,取决于你分母的阶数

顺手打开泰勒公式的门

这一讲写的全是这个形式:

f(x)=c0+c1x+c2x2+⋯+cnxn+o(xn)f(x) = c_0 + c_1 x + c_2 x^2 + \cdots + c_n x^n + o(x^n)

「用一个多项式逼近一个函数,再注明误差是几阶」——这就是泰勒公式的雏形。

泰勒公式(Taylor series)说的是:如果一个函数足够光滑(有足够多阶导数),那么在一点附近它可以用一个多项式逼近,误差是比最后一项高一阶的无穷小。sin⁡x\sin x、cos⁡x\cos x、exe^x、ln⁡(1+x)\ln(1+x) 全部有这种展开。

第十一讲专门讲泰勒公式。 到那时你会看到:这里的 oo 记号、精度阶梯、"展开到第几项",会全部变成一套可以复用的算法。

但先记住这一讲的核心判断——泰勒展开不是公式表,是一个精度的概念:你要多准,就展开到哪一阶。

加减法替换的完整判据

把散落的结论收成一句可以拿去用的:

算 lim⁡A−Bxm\lim\dfrac{A - B}{x^m} 这类题:把 AA、BB 都展开到 xmx^m 阶(带 o(xm)o(x^m)),相减,看第一个不为零的项,它的系数就是答案。

如果第一个不为零的项高于 xmx^m,答案是 0;如果低于 xmx^m,极限是无穷或不存在。

第三步"看第一个不为零的项"是关键。它不是技巧,是加减法的本质:同阶相抵,剩的是低阶。

思考与拓展

  1. 用展开法算 lim⁡x→0sin⁡x−xcos⁡xx3\lim\limits_{x\to 0}\dfrac{\sin x - x\cos x}{x^3}。(提示:sin⁡x\sin x 展到 x3x^3,xcos⁡xx\cos x 也要展到 x3x^3。xcos⁡x=x−x32+o(x3)x\cos x = x - \dfrac{x^3}{2} + o(x^3)。)
  2. 用展开法算 lim⁡x→0ex−1−xx2\lim\limits_{x\to 0}\dfrac{e^x - 1 - x}{x^2}。(提示:ex=1+x+x22+o(x2)e^x = 1 + x + \dfrac{x^2}{2} + o(x^2)。)
  3. 为什么 lim⁡x→0sin⁡xx=1\lim\limits_{x\to 0}\dfrac{\sin x}{x} = 1 可以直接用 sin⁡x∼x\sin x \sim x,而 lim⁡x→0x−sin⁡xx3\lim\limits_{x\to 0}\dfrac{x - \sin x}{x^3} 不行?用"分母阶数"的语言回答。
  4. lim⁡x→0tan⁡x−xx2\lim\limits_{x\to 0}\dfrac{\tan x - x}{x^2} 等于多少?(提示:tan⁡x=x+x33+o(x3)\tan x = x + \dfrac{x^3}{3} + o(x^3),注意这里差的阶数。)
  5. 已知 f(x)=x2+o(x2)f(x) = x^2 + o(x^2),g(x)=2x2+o(x2)g(x) = 2x^2 + o(x^2),求 lim⁡f−gx2\lim \dfrac{f - g}{x^2}。为什么这个可以直接算?跟"两个函数第一项系数相同"的条件有什么关系?

一句话总结

sin x ~ x 只是最粗的那个近似;乘除可以换,因为只是乘了个趋于 1 的因子;加减不可以随便换,因为扔掉的那一项可能正是答案——判据只有一个:展开到相减后第一个不为零的项。

附:本文涉及的史实出处

  • 高阶无穷小与 oo 记号:Landau 符号,由德国数学家兰道(Landau)于 1909 年系统引入
  • Bachmann 1894 年提出阶的记号传统,oo 与 OO 由兰道定型
  • 泰勒公式:Brook Taylor 1715 年发表,Lagrange 余项、Peano 余项是后世的严格化形式
  • 各展开式:sin⁡x=x−x3/3!+⋯\sin x = x - x^3/3! + \cdots、cos⁡x=1−x2/2!+⋯\cos x = 1 - x^2/2! + \cdots、ex=1+x+x2/2!+⋯e^x = 1 + x + x^2/2! + \cdots、tan⁡x=x+x3/3+⋯\tan x = x + x^3/3 + \cdots;本文所有数值(含 (x−sin⁡x)/x3→1/6(x-\sin x)/x^3 \to 1/6、(tan⁡x−sin⁡x)/x3→1/2(\tan x-\sin x)/x^3 \to 1/2)均经数值验证
— Y. · 2026-09-30