# 函数的复合

> AP 预备微积分 · AP 预备微积分 CED 第二单元
> 来源: https://www.owlsprep.com/zh/study/ap-precalculus-u2-composition-of-functions/

本指南讲解符合AP预备微积分第二单元要求的函数复合核心概念，包括记号、求值、求表达式与定义域，以及指数-对数函数对的反函数复合性质，同时配有例题和考试技巧。

**先修:** 基本函数的定义域和值域（多项式、指数函数、对数函数）; 在数值和代数输入下对函数求值; [指数-对数函数对的反函数定义](https://www.owlsprep.com/zh/study/ap-precalculus-u2-inverse-functions/)

## 学习目标

- 理解复合记号和求值顺序
- 在数值和代数输入下对复合函数求值
- 求复合函数的代数表达式和定义域
- 将反函数复合恒等式应用于指数-对数函数对
- 避开函数复合相关的常见考试误区

## 函数复合简介

函数复合是将一个函数的输出作为第二个函数的输入，把多个函数组合为一个新函数的过程。根据AP预备微积分课程描述（CED），这是第二单元的核心技能，在第二单元的选择题和自由作答题中，占考题的8-12%。

**复合函数** — 由两个函数链式组合得到的新函数：内层函数$g$的输出成为外层函数$f$的输入，因此$(f \circ g)(x) = f(g(x))$。复合不满足交换律，即$f \circ g$几乎永远不等于$g \circ f$。

*记法:* $(f \circ g)(x)$

*例:* 对于指数-对数函数对，常利用反函数性质通过复合化简表达式。

在AP预备微积分第二单元中，复合最常出现在指数/对数与多项式的组合，或是指数函数与对数函数互相组合的情况，尤其是在处理反函数的时候。

## 复合函数的求值

对给定输入$x$求值复合函数遵循一条核心规则：永远从内向外计算。先计算内层函数（记号中最靠近$x$的函数），再将其输出代入外层函数作为新输入。

**例题:** 已知$f(x) = e^{2x} + 1$，$g(x) = \ln x$，求$(f \circ g)(3)$。

1. 根据复合顺序可知，$(f \circ g)(3) = f(g(3))$，因此先计算内层函数$g$。
2. 计算内层函数的输出：

   $$g(3) = \ln 3$$
3. 将该输出代入外层函数$f$：

   $$f(g(3)) = f(\ln 3) = e^{2(\ln 3)} + 1$$
4. 利用对数法则和反函数恒等式$e^{\ln k} = k$化简：

   $$2 \ln 3 = \ln 3^2 = \ln 9 \implies e^{\ln 9} = 9$$
5. 加1得到最终结果：

   $$9 + 1 = 10$$

> **tip**
>
> 在选择题中，常见干扰项是交换复合顺序得到的结果（本例中$g(f(3)) \approx 6.01$）。开始计算前一定要确认哪个是内层函数。

> **考试提示:** 开始计算前一定要明确确认复合顺序，避免掉入常见干扰项的陷阱。

## 求复合函数的表达式和定义域

求$(f \circ g)(x)$的一般代数表达式时，将$g(x)$整个表达式替换外层函数$f$中的$x$即可。考试常考的技能是求新复合函数的定义域，复合函数的定义域必须满足两个条件：1) $x$属于内层函数$g$的定义域，2) 输出$g(x)$属于外层函数$f$的定义域。

> **warning**
>
> 一个常见错误是先化简复合表达式，再求化简后函数的定义域。这会错误地包含原本被内层函数限制的不允许输入。

**例题:** 已知$f(x) = \ln(x + 2)$，$g(x) = x^2 - 5$，求$(f \circ g)(x)$并写出它的定义域。

1. 将$g(x)$代入$f$写出复合函数：

   $$(f \circ g)(x) = f(g(x)) = \ln\left((x^2 - 5) + 2\right) = \ln(x^2 - 3)$$
2. 检查内层函数$g(x)$的定义域：$g(x)$是多项式，因此它的定义域是全体实数，此处没有限制。
3. 应用外层函数$f$的定义域限制：对数的真数必须为正，因此解不等式：

   $$x^2 - 3 > 0$$
4. 因式分解并解不等式：

   $$(x - \sqrt{3})(x + \sqrt{3}) > 0 \implies x < -\sqrt{3} \text{ or } x > \sqrt{3}$$
5. 表达式：$(f \circ g)(x) = \ln(x^2 - 3)$，定义域：$(-\infty, -\sqrt{3}) \cup (\sqrt{3}, \infty)$

> **tip**
>
> 一定要在化简复合表达式之前求定义域，即使化简会消去导致原限制的项。例如$\ln\left(\frac{(x-2)(x+1)}{x-2}\right)$的定义域仍然要排除$x=2$，即使$(x-2)$项被约去了。

## 函数与其反函数的复合

反函数的一个核心性质是：一个函数与其反函数复合得到恒等函数，输出就是原输入。对任意一一对应函数$f$和其反函数$f^{-1}$，两个核心恒等式成立：

$$(f \circ f^{-1})(x) = f(f^{-1}(x)) = x$$

$$(f^{-1} \circ f)(x) = f^{-1}(f(x)) = x$$

在第二单元中，这个性质最常应用于指数函数和对数函数的反函数对：当$b>0, b \neq 1$时，$f(x) = b^x$，$f^{-1}(x) = \log_b x$。由此得到恒等式$b^{\log_b x} = x$（$x>0$时成立）和$\log_b(b^x) = x$（对所有实数$x$成立），这两个恒等式常被用来化简表达式和解方程。

**例题:** 化简复合表达式$(\ln \circ f)(x)$，其中$f(x) = 5e^{3x-2}$，并写出所有定义域限制。

1. 明确写出复合函数：

   $$(\ln \circ f)(x) = \ln\left(f(x)\right) = \ln\left(5e^{3x-2}\right)$$
2. 利用对数乘积法则拆分乘积：

   $$\ln 5 + \ln\left(e^{3x-2}\right)$$
3. 对所有实数$u$应用反复合恒等式$\ln(e^u) = u$：

   $$\ln\left(e^{3x-2}\right) = 3x - 2$$
4. 检查定义域限制：$\ln$的输入是$5e^{3x-2}$，对所有实数$x$恒为正。内层函数$f(x)$也对所有实数$x$有定义，因此没有额外限制。
5. 最终结果：

   $$(\ln \circ f)(x) = 3x - 2 + \ln 5, \text{ domain: all real numbers}$$

> **tip**
>
> 化简$e^{\ln x^2}$时，结果是$|x|$，不是$x$。$\ln x^2$对所有非零$x$有定义，因此化简后的形式必须保留对负输入的正确定义域。

## AP风格概念检测

**概念自测**

用这些AP风格的练习题测试你的理解：

1. 若$f(x) = 2^x$，$g(x) = \log_2(x - 3)$，则$(f \circ g)(11)$的值是多少？

   - A) 3
   - B) 8
   - C) 11
   - D) 16

   *解析:* 正确：你从内向外计算：$g(11) = \log_2(8) = 3$，因此$f(3) = 2^3 = 8$。交换复合顺序会得到约11，这是常见干扰项。

**例题:** 在一个微生物学实验中，细菌数量为$N(d) = 1000e^{0.2d}$，其中$d$是培养天数。时间以小时计量，因此$d(t) = \frac{t}{24}$。写出细菌数量关于时间$t$（单位：小时）的复合函数，然后求72小时后的细菌数量，结果保留整数。

1. 我们需要得到$N$关于$t$的函数，因此将$N$与$d$复合，得到$(N \circ d)(t) = N(d(t))$。
2. 将$d(t)$代入$N$：

   $$(N \circ d)(t) = 1000e^{0.2\left(\frac{t}{24}\right)} = 1000e^{\frac{t}{120}}$$
3. 代入$t=72$计算：

   $$(N \circ d)(72) = 1000e^{\frac{72}{120}} = 1000e^{0.6} \approx 1822$$
4. 最终结果：72小时后，培养物中约有1822个细菌。

## 常见错误

- **错误做法:** 题目要求求$(f \circ g)(x)$时，交换复合顺序计算了$g(f(x))$而不是$f(g(x))$。
  - 原因: 学生混淆了记号的顺序，忘记最靠近$x$的函数是需要先计算的内层函数。
  - 正确做法: 开始任何计算前，都要先明确把$(f \circ g)(x)$转换为$f(g(x))$，并标记出$g$是内层函数。
- **错误做法:** 先化简复合函数，再从化简后的表达式求定义域，忽略了内层函数的限制。
  - 原因: 化简会消去带来定义域限制的项，导致错误地包含不允许的输入。
  - 正确做法: 分步求定义域：先找出内层函数允许的所有$x$，再从这个集合中筛选出内层输出在外层函数中也允许的$x$。
- **错误做法:** 对$\ln x$的负输入应用反复合恒等式$e^{\ln x} = x$。
  - 原因: 学生记住了恒等式，却忘记了对数的定义域限制。
  - 正确做法: 应用$b^{\log_b x} = x$之前，先确认对数的输入为正，并在结果中排除所有负输入。
- **错误做法:** 声称复合满足交换律，因此对所有函数$f, g$都有$(f \circ g)(x) = (g \circ f)(x)$。
  - 原因: 学生将复合与函数乘法混淆，函数乘法是满足交换律的。
  - 正确做法: 除非你针对给定的具体函数证明了相等，否则永远默认$f \circ g \neq g \circ f$。
- **错误做法:** 化简$e^{2 \ln x}$时，将结果写为$2x$而不是$x^2$。
  - 原因: 学生颠倒了幂法则$\ln x^a = a \ln x$，错误地把系数当成乘法因子，而不是指数。
  - 正确做法: 先把系数移到对数内部作为指数：$a \ln x = \ln x^a$，再应用反函数恒等式，因此$e^{a \ln x} = x^a$。
- **错误做法:** 对于复合函数$f(g(x))$，当$g(x)$是对数时，除了外层函数对$g(x)$输出的限制，还忘记了内层对数的真数必须为正。
  - 原因: 学生只检查外层函数的限制，忘记了内层函数本身就有定义域限制。
  - 正确做法: 检查外层函数的限制之前，永远先检查内层函数的定义域。

## 速查表

| 类别 | 公式/法则 | 说明 |
| --- | --- | --- |
| 复合记号 | $(f \circ g)(x) = f(g(x))$ | $g$是内层（先计算）；$f$是外层。通常$f \circ g \neq g \circ f$ |
| 复合函数求值 | 从内向外计算 | 先计算内层$g(x)$，再将结果代入外层$f$ |
| 复合函数定义域 | Domain = $\{x \in \text{dom}(g) \mid g(x) \in \text{dom}(f)\}$ | 先检查内层定义域，再检查外层；求定义域前不要化简 |
| 反函数复合1 | $(f \circ f^{-1})(x) = x$ | 仅对属于$f^{-1}$定义域的$x$成立 |
| 反函数复合2 | $(f^{-1} \circ f)(x) = x$ | 仅对属于$f$定义域的$x$成立 |
| 指数-对数反函数1 | $b^{\log_b x} = x$ | 仅对$x>0$，$b>0, b \neq 1$成立 |
| 指数-对数反函数2 | $\log_b(b^x) = x$ | 对所有实数$x$成立 |
| 复合化简 | $e^{a \ln x} = x^a$ | 系数变为指数，不是乘法因子 |

## 下一步

掌握函数复合是学习AP预备微积分第二单元所有剩余内容，以及整个课程的关键前提。你会把这里学到的复合技巧和反函数恒等式应用到求解指数方程和对数方程中，在这类问题中需要化简复合表达式来分离目标变量。在构建涉及多个链式变换的现实模型时（比如单位转换或多步增长问题），你也会经常用到复合。在AP预备微积分之外，复合是微分微积分中链式法则的基础概念，而链式法则是AP微积分AB和BC的核心内容。如果不在这里掌握复合顺序和定义域规则，你学习这些更高级的内容时会很吃力。

- [反函数](https://www.owlsprep.com/zh/study/ap-precalculus-u2-inverse-functions/)
- [对数表达式](https://www.owlsprep.com/zh/study/ap-precalculus-u2-logarithmic-expressions/)
- [指数函数的反函数](https://www.owlsprep.com/zh/study/ap-precalculus-u2-inverses-of-exponential-functions/)

---

来自 [OwlsPrep](https://www.owlsprep.com) —— A-Level / IB / AP / IGCSE 免费学习指南，依据官方考纲编写。原页面：https://www.owlsprep.com/zh/study/ap-precalculus-u2-composition-of-functions/
