数学 / 导数 · 从变化率到极值与不等式 / 基本求导公式与运算法则 待审核 3 / 8
和差积商 · 复合

基本求导公式与运算法则

逐个用定义式算导数很快就不划算:f(x)=x5sin⁡xf(x) = x^5 \sin x 的平均变化率展开后有六项,化简过程与 x5x^5、sin⁡x\sin x 各自的导数没有直接关系。求导法则把这类计算拆开——先记住几个基本初等函数的导数,再用几条法则组合。这套办法能覆盖高中范围内几乎全部初等函数。

1 · 基本初等函数的导数

函数 导函数 备注
f(x)=cf(x) = c f′(x)=0f'(x) = 0 常数函数的图象是水平直线
f(x)=xαf(x) = x^\alpha f′(x)=αxα−1f'(x) = \alpha x^{\alpha - 1} α\alpha 为实数,xx 取使两侧都有意义的值
f(x)=sin⁡xf(x) = \sin x f′(x)=cos⁡xf'(x) = \cos x 弧度制下成立
f(x)=cos⁡xf(x) = \cos x f′(x)=−sin⁡xf'(x) = -\sin x 多出的负号来自余弦的减少
f(x)=axf(x) = a^x f′(x)=axln⁡af'(x) = a^x \ln a a>0a > 0 且 a≠1a \ne 1
f(x)=exf(x) = e^x f′(x)=exf'(x) = e^x ln⁡e=1\ln e = 1,导函数与原函数相同
f(x)=log⁡axf(x) = \log_a x f′(x)=1xln⁡af'(x) = \dfrac{1}{x \ln a} x>0x > 0
f(x)=ln⁡xf(x) = \ln x f′(x)=1xf'(x) = \dfrac{1}{x} 同上取 a=ea = e

幂函数一栏把整数、分数、负数指数统一了:x=x1/2\sqrt{x} = x^{1/2} 的导数是 12x−1/2=12x\frac{1}{2}x^{-1/2} = \frac{1}{2\sqrt{x}},1x=x−1\frac{1}{x} = x^{-1} 的导数是 −x−2-x^{-2}。这两个式子在 x→0+x \to 0^+ 处都发散,正对应 x\sqrt{x} 在原点切线竖直、1x\frac{1}{x} 在原点附近陡到无界。

ee 这个底数的特殊之处也在表里:axa^x 的导数带一个因子 ln⁡a\ln a,只有 a=ea = e 时这个因子恰为 11。指数函数中唯有 exe^x 的导函数是它自己。

2 · 四则运算的求导法则

定理 2.1 设 u=u(x)u = u(x) 与 v=v(x)v = v(x) 均可导,则

(u±v)′=u′±v′,(uv)′=u′v+uv′,(uv)′=u′v−uv′v2    (v≠0)(u \pm v)' = u' \pm v', \qquad (uv)' = u'v + uv', \qquad \left(\frac{u}{v}\right)' = \frac{u'v - uv'}{v^2} \;\; (v \ne 0)

和差一栏形式上最简单,积与商都不是。(uv)′=u′v+uv′(uv)' = u'v + uv' 里两项各保留一个未求导的因子,而 (uv)′=u′v′(uv)' = u'v' 这个想当然的写法立刻被反例否掉:取 u=v=xu = v = x,左端 (x2)′=2x(x^2)' = 2x,右端 1⋅1=11 \cdot 1 = 1。商的法则里分子是减号且次序固定,u′v−uv′u'v - uv' 与 uv′−u′vuv' - u'v 相差一个符号。

常数倍是积法则的特例:(cu)′=c′u+cu′=cu′(cu)' = c'u + cu' = cu',因为 c′=0c' = 0。多项式的求导由此逐项进行,(3x4−5x+2)′=12x3−5(3x^4 - 5x + 2)' = 12x^3 - 5。

图 2-1 · 两个基本初等函数按四条法则合成,右侧给出法则算出的导函数与中心差商的逐点对照。可切换 uu、vv 与运算,移动核对点 xx 观察两列数值以及积的常见误用 u′v′u'v' 差多少。

3 · 复合函数与链式法则

y=sin⁡(2x+1)y = \sin(2x + 1) 不是基本初等函数,它由 y=sin⁡uy = \sin u 与 u=2x+1u = 2x + 1 复合而成。

定理 3.1(链式法则) 设 y=f(u)y = f(u) 与 u=g(x)u = g(x) 都可导,则复合函数 y=f(g(x))y = f(g(x)) 可导,且 y′=f′(g(x))⋅g′(x)y' = f'(g(x)) \cdot g'(x),即 dydx=dydu⋅dudx\frac{dy}{dx} = \frac{dy}{du} \cdot \frac{du}{dx}。

莱布尼茨记号在链式法则上最见长:形式上像两个分数相乘,dudu 上下约去。y=sin⁡(2x+1)y = \sin(2x + 1) 的导数因此是 cos⁡(2x+1)⋅2\cos(2x+1) \cdot 2,末尾那个 22 是内层函数的导数,漏掉它是最常见的错误。y=ex2y = e^{x^2} 同理得 2xex22x e^{x^2},y=ln⁡(3x−1)y = \ln(3x - 1) 得 33x−1\frac{3}{3x - 1}。

例 3.1 求 y=sin⁡xxy = \frac{\sin x}{x} 与 y=x2+1y = \sqrt{x^2 + 1} 的导数。前者用商法则:y′=cos⁡x⋅x−sin⁡x⋅1x2=xcos⁡x−sin⁡xx2y' = \frac{\cos x \cdot x - \sin x \cdot 1}{x^2} = \frac{x\cos x - \sin x}{x^2}。后者用链式法则,外层是 u\sqrt{u}、内层是 u=x2+1u = x^2 + 1:y′=12x2+1⋅2x=xx2+1y' = \frac{1}{2\sqrt{x^2+1}} \cdot 2x = \frac{x}{\sqrt{x^2+1}}。

4 · 用差商核对法则

本系列的单测不把求导结果写成常量,而是让 combine 按法则现算——积走 u′v+uv′u'v + uv'、复合走 u′(v)⋅v′u'(v) \cdot v'——再用中心差商当 oracle 逐点核对。这样验的是法则本身:若积法则写错成 u′v′u'v',五对函数里必有一对在某个采样点上过不去。

核对里有两处要留一手。其一,商在分母接近零处差商本身就不可靠,sin⁡xln⁡x\frac{\sin x}{\ln x} 在 xx 靠近 11 时分母趋零,此处跳过不比;其二,复合函数的定义域约束落在内层的函数值上而不是 xx 上,ln⁡(x2)\ln(x^2) 在 x=−2x = -2 处有定义,按外层的定义域 (0,+∞)(0, +\infty) 直接筛 xx 会把它误判为无定义。

注 · 把合成式回显成可读的表达式时,最初的写法是对外层解析式做字符串替换,把字面的 x 换成内层表达式。这个做法在 exe^x 与 x\sqrt{x} 上直接失效:这两个记号里的自变量分别写在上标与根号下,源串中根本没有一个字面的 x 可替换,替换结果是原样的 exe^x。现在每个样本自带一个 sub(inner) 模板,e^(x²) 这类回显由模板拼出,正确性也进了单测。

5 · 参考文献

  1. Differentiation rules. Wikipedia. 基本导数表与和差积商法则的完整清单。https://en.wikipedia.org/wiki/Differentiation_rules
  2. Product rule. Wikipedia. 积法则的证明与常见误用。https://en.wikipedia.org/wiki/Product_rule
  3. Quotient rule. Wikipedia. 商法则的推导,以及由积法则加链式法则重新得到它的路径。https://en.wikipedia.org/wiki/Quotient_rule
  4. Chain rule. Wikipedia. 链式法则的表述、莱布尼茨记号的写法与多层复合。https://en.wikipedia.org/wiki/Chain_rule