4线性代数应该这样学(第3版)

多项式

线性代数的工具

多项式空间零点不变子空间

🎯 AI 时代的学习建议:不要只读理论。理解这一章的设计动机(为什么需要这个概念?)和边界条件(什么情况下会失效?)。当 AI 生成的代码涉及这些概念时,你能判断它是否用对了场景。AI 能帮你总结内容,但无法替代你亲手阅读、思考、建立直觉的过程。

第4章 多项式 - 线性代数的工具 (Polynomials)

一、导读

4.1 本章学习目标

通过本章的学习,你将能够:

理解多项式空间的结构:掌握 $P(\mathbb{F})$ 作为无限维向量空间的性质,以及 $P_n(\mathbb{F})$ 作为有限维子空间的结构

掌握多项式的除法算法:理解带余除法的存在性和唯一性,以及其在因式分解中的应用

理解多项式的零点与因式的关系:掌握因式定理,理解零点个数与次数的关系

掌握复系数多项式的因式分解:理解代数基本定理及其在线性代数中的重要性

理解实系数多项式的因式分解:掌握实系数多项式分解为一次和二次因式的理论

将多项式理论与线性算子联系:理解如何用多项式作用于线性算子,为特征值理论做准备

掌握最小多项式的概念:理解最小多项式在刻画线性算子结构中的作用

4.2 为什么本章如此重要

多项式看似是初等代数内容,但它在高等线性代数中扮演着关键角色。Axler 的《Linear Algebra Done Right》特别强调多项式作为工具的重要性,因为:

从理论的角度看,多项式是研究线性算子的核心工具。通过将多项式作用于线性算子(如 $p(T) = a_0 I + a_1 T + \cdots + a_n T^n$),我们可以揭示算子的深层结构。特征多项式、最小多项式都是多项式理论在线性代数中的应用。

从应用的角度看:

  • 控制理论:系统的稳定性由特征多项式的根(极点)决定
  • 信号处理:滤波器设计依赖多项式因式分解
  • 数值分析:插值多项式、正交多项式在近似理论中至关重要
  • 密码学:有限域上的多项式用于构造纠错码和加密算法
  • 计算机图形学:Bezier 曲线、B 样条都基于多项式表示

从认知的角度看,本章帮助你建立"代数思维"。多项式的因式分解类似于整数的素数分解,这种类比思维是抽象代数的核心思想。

4.3 核心问题引导

在学习本章时,请持续思考以下问题:

多项式空间 $P(\mathbb{F})$ 为什么是无限维的? 它与有限维子空间 $P_n(\mathbb{F})$ 有什么关系?

除法算法的核心思想是什么? 为什么对于任意多项式 $f$ 和非零多项式 $g$,存在唯一的商 $q$ 和余式 $r$ 使得 $f = gq + r$?

多项式的零点个数为什么不超过其次数? 这个看似显然的事实在证明中用到了什么关键性质?

代数基本定理为什么重要? 它保证了每个复系数多项式都可以完全分解为一次因式,这对线性算子理论有何意义?

实系数多项式的复零点为什么成对出现? 这与共轭对称性有何关系?

如何将多项式作用于线性算子? $p(T)$ 的定义是什么?它有什么性质?

最小多项式与特征多项式有什么区别? 为什么最小多项式的次数不超过维度?


二、核心概念详解

4.1 多项式空间

定义 4.1(多项式)

设 $\mathbb{F}$ 是一个域。多项式(Polynomial)是形如:

$$p(z) = a_0 + a_1 z + a_2 z^2 + \cdots + a_n z^n = \sum_{k=0}^n a_k z^k$$

的表达式,其中 $a_k \in \mathbb{F}$ 称为系数,$z$ 是变量(或不定元)。

如果 $a_n \neq 0$,则称 $p$ 的次数(Degree)为 $n$,记作 $\deg p = n$。规定零多项式的次数为 $-\infty$(或有时规定为 $-1$)。

定义 4.2(多项式空间)

所有系数在 $\mathbb{F}$ 中的多项式的集合记作 $P(\mathbb{F})$。配备多项式加法和标量乘法:

$$(p + q)(z) = p(z) + q(z)$$

$$(\lambda p)(z) = \lambda \cdot p(z)$$

$P(\mathbb{F})$ 构成一个向量空间。

此外,对于非负整数 $n$,定义:

$$P_n(\mathbb{F}) = \{p \in P(\mathbb{F}) : \deg p \leq n\}$$

即次数不超过 $n$ 的多项式的集合。$P_n(\mathbb{F})$ 是 $P(\mathbb{F})$ 的子空间,且是有限维的,$\dim P_n(\mathbb{F}) = n + 1$,标准基为 $\{1, z, z^2, \ldots, z^n\}$。

关键洞察:$P(\mathbb{F})$ 是无限维的,因为不存在有限个多项式可以张成所有多项式。而 $P_n(\mathbb{F})$ 是有限维子空间。

例 4.1:多项式空间的基

  • $P_2(\mathbb{R})$ 的基:$\{1, z, z^2\}$,维度为 3
  • $P_3(\mathbb{C})$ 的基:$\{1, z, z^2, z^3\}$,维度为 4
  • $P(\mathbb{F})$ 没有有限基,是无限维空间

4.2 多项式的除法算法

定理 4.1(除法算法)

设 $p, s \in P(\mathbb{F})$,且 $s \neq 0$。则存在唯一的 $q, r \in P(\mathbb{F})$ 使得:

$$p = sq + r$$

且 $\deg r < \deg s$。

这里 $q$ 称为商(Quotient),$r$ 称为余式(Remainder)。

证明思路:

存在性:对 $\deg p$ 进行归纳。

  • 如果 $\deg p < \deg s$,取 $q = 0$,$r = p$ 即可。
  • 如果 $\deg p \geq \deg s$,设 $p(z) = a_n z^n + \cdots$,$s(z) = b_m z^m + \cdots$,其中 $n \geq m$,$a_n \neq 0$,$b_m \neq 0$。

考虑 $p_1(z) = p(z) - \frac{a_n}{b_m} z^{n-m} s(z)$。注意到 $p_1$ 的最高次项被消去,所以 $\deg p_1 < \deg p$。

由归纳假设,存在 $q_1, r$ 使得 $p_1 = s q_1 + r$,$\deg r < \deg s$。

则 $p = p_1 + \frac{a_n}{b_m} z^{n-m} s = s(q_1 + \frac{a_n}{b_m} z^{n-m}) + r$。

取 $q = q_1 + \frac{a_n}{b_m} z^{n-m}$ 即可。

唯一性:假设 $p = s q_1 + r_1 = s q_2 + r_2$,其中 $\deg r_1, \deg r_2 < \deg s$。

则 $s(q_1 - q_2) = r_2 - r_1$。

如果 $q_1 \neq q_2$,则左边次数 $\geq \deg s$,右边次数 $< \deg s$,矛盾。

因此 $q_1 = q_2$,进而 $r_1 = r_2$。$\square$

程序员的直觉:除法算法类似于整数的长除法。商和余式是唯一确定的。

例 4.2:多项式除法

设 $p(z) = z^3 + 2z^2 + 3z + 4$,$s(z) = z^2 + 1$。

执行长除法:

  • $z^3 / z^2 = z$,商的第一项为 $z$
  • $p(z) - z \cdot s(z) = z^3 + 2z^2 + 3z + 4 - z(z^2 + 1) = 2z^2 + 2z + 4$
  • $2z^2 / z^2 = 2$,商的第二项为 $2$
  • $(2z^2 + 2z + 4) - 2 \cdot s(z) = 2z^2 + 2z + 4 - 2(z^2 + 1) = 2z + 2$

所以 $q(z) = z + 2$,$r(z) = 2z + 2$,且 $\deg r = 1 < \deg s = 2$。

验证:$s(z)q(z) + r(z) = (z^2 + 1)(z + 2) + (2z + 2) = z^3 + 2z^2 + z + 2z^2 + 4z + 2 + 2z + 2 = z^3 + 2z^2 + 3z + 4 = p(z)$。✓

4.3 多项式的零点

定义 4.3(零点)

设 $p \in P(\mathbb{F})$,$\lambda \in \mathbb{F}$。如果 $p(\lambda) = 0$,则称 $\lambda$ 是 $p$ 的一个零点(Zero)或根(Root)。

定理 4.2(因式定理)

设 $p \in P(\mathbb{F})$,$\lambda \in \mathbb{F}$。则 $\lambda$ 是 $p$ 的零点当且仅当存在 $q \in P(\mathbb{F})$ 使得:

$$p(z) = (z - \lambda) q(z)$$

证明:

  • 充分性:如果 $p(z) = (z - \lambda)q(z)$,则 $p(\lambda) = (\lambda - \lambda)q(\lambda) = 0$。
  • 必要性:如果 $p(\lambda) = 0$,由除法算法,$p(z) = (z - \lambda)q(z) + r$,其中 $\deg r < 1$,即 $r$ 是常数。

代入 $z = \lambda$:$p(\lambda) = (\lambda - \lambda)q(\lambda) + r = r$。

由于 $p(\lambda) = 0$,得 $r = 0$。所以 $p(z) = (z - \lambda)q(z)$。$\square$

定理 4.3:零点个数的上界

设 $p \in P(\mathbb{F})$,$p \neq 0$,$\deg p = n$。则 $p$ 在 $\mathbb{F}$ 中至多有 $n$ 个不同的零点。

证明:对 $n$ 进行归纳。

  • 基础情况:$n = 0$,$p$ 是非零常数,没有零点。结论成立。
  • 归纳步骤:假设对次数 $n-1$ 的多项式成立。设 $\deg p = n$。

如果 $p$ 没有零点,结论显然成立($0 \leq n$)。

如果 $p$ 有零点 $\lambda$,则由因式定理,$p(z) = (z - \lambda)q(z)$,其中 $\deg q = n - 1$。

$q$ 至多有 $n-1$ 个零点(归纳假设)。$p$ 的零点是 $\lambda$ 加上 $q$ 的零点,所以至多有 $1 + (n-1) = n$ 个。$\square$

重要推论:如果两个次数不超过 $n$ 的多项式在 $n+1$ 个不同点处取值相同,则它们相等。这为多项式插值的唯一性提供了理论基础。

4.4 复系数多项式的因式分解

定理 4.4(代数基本定理)

每个非常数的复系数多项式至少有一个复零点。即:如果 $p \in P(\mathbb{C})$,$\deg p \geq 1$,则存在 $\lambda \in \mathbb{C}$ 使得 $p(\lambda) = 0$。

注意:代数基本定理的证明超出了线性代数的范围,通常使用复分析或拓扑学的方法证明。我们在此接受它为已知事实。

定理 4.5:复系数多项式的因式分解

设 $p \in P(\mathbb{C})$,$\deg p = n \geq 1$。则存在唯一的(不计顺序)复数 $\lambda_1, \ldots, \lambda_n$ 和非零常数 $c$ 使得:

$$p(z) = c(z - \lambda_1)(z - \lambda_2)\cdots(z - \lambda_n)$$

证明:

由代数基本定理,$p$ 有零点 $\lambda_1$。由因式定理,$p(z) = (z - \lambda_1)q_1(z)$,其中 $\deg q_1 = n - 1$。

对 $q_1$ 重复此过程,最终得到 $p(z) = c(z - \lambda_1)\cdots(z - \lambda_n)$。

唯一性由零点的唯一性(计重数)保证。$\square$

几何直觉:在复数域上,每个多项式都可以完全分解为一次因式。这意味着复数是"代数封闭"的——任何多项式方程都有解。

定义 4.4(重数)

在定理 4.5 的分解中,如果某个 $\lambda$ 出现了 $m$ 次,则称 $\lambda$ 是 $p$ 的$m$ 重零点,或称 $\lambda$ 的重数(Multiplicity)为 $m$。

例 4.3:复系数多项式的分解

$p(z) = z^3 - 1$ 在 $\mathbb{C}$ 中分解为:

$$p(z) = (z - 1)(z - e^{2\pi i/3})(z - e^{4\pi i/3})$$

三个零点分别是 $1$、$e^{2\pi i/3} = -\frac{1}{2} + i\frac{\sqrt{3}}{2}$、$e^{4\pi i/3} = -\frac{1}{2} - i\frac{\sqrt{3}}{2}$。

4.5 实系数多项式的因式分解

定理 4.6:实系数多项式的复零点成对出现

设 $p \in P(\mathbb{R})$(即系数都是实数)。如果 $\lambda \in \mathbb{C}$ 是 $p$ 的零点,则其共轭 $\overline{\lambda}$ 也是 $p$ 的零点。

证明:

设 $p(z) = a_n z^n + \cdots + a_1 z + a_0$,其中 $a_i \in \mathbb{R}$。

如果 $p(\lambda) = 0$,则:

$$0 = \overline{0} = \overline{p(\lambda)} = \overline{a_n \lambda^n + \cdots + a_1 \lambda + a_0}$$

由于 $a_i$ 是实数,$\overline{a_i} = a_i$,所以:

$$\overline{p(\lambda)} = a_n \overline{\lambda}^n + \cdots + a_1 \overline{\lambda} + a_0 = p(\overline{\lambda})$$

因此 $p(\overline{\lambda}) = 0$。$\square$

定理 4.7:实系数多项式的因式分解

设 $p \in P(\mathbb{R})$,$\deg p = n \geq 1$。则 $p$ 可以分解为一次因式和二次因式的乘积:

$$p(z) = c(z - r_1)\cdots(z - r_j)(z^2 + b_1 z + c_1)\cdots(z^2 + b_k z + c_k)$$

其中 $r_1, \ldots, r_j \in \mathbb{R}$ 是实零点,$z^2 + b_i z + c_i$ 是无实根的二次多项式(判别式 $b_i^2 - 4c_i < 0$),且 $j + 2k = n$。

证明思路:

由定理 4.5,$p$ 在 $\mathbb{C}$ 中分解为一次因式。实零点保持为一次因式 $(z - r)$。复零点成对出现 $\lambda, \overline{\lambda}$,对应的因式为:

$$(z - \lambda)(z - \overline{\lambda}) = z^2 - (\lambda + \overline{\lambda})z + \lambda\overline{\lambda} = z^2 - 2\text{Re}(\lambda)z + |\lambda|^2$$

这是实系数二次多项式,且无实根(因为 $\lambda$ 不是实数)。$\square$

例 4.4:实系数多项式的分解

$p(z) = z^4 + 1$ 在 $\mathbb{R}$ 中分解为:

$$p(z) = (z^2 + \sqrt{2}z + 1)(z^2 - \sqrt{2}z + 1)$$

这两个二次因式都无实根。

4.6 多项式作用于线性算子

定义 4.5(多项式作用于算子)

设 $T: V \to V$ 是线性算子,$p \in P(\mathbb{F})$,$p(z) = a_0 + a_1 z + \cdots + a_n z^n$。定义:

$$p(T) = a_0 I + a_1 T + a_2 T^2 + \cdots + a_n T^n$$

其中 $I$ 是恒等算子,$T^k = T \circ T \circ \cdots \circ T$($k$ 次复合)。

关键洞察:$p(T)$ 是从 $V$ 到 $V$ 的线性算子。多项式代数与线性算子代数之间存在同态关系。

定理 4.8:多项式作用于算子的性质

设 $T: V \to V$ 是线性算子,$p, q \in P(\mathbb{F})$,$\lambda \in \mathbb{F}$。则:

$(p + q)(T) = p(T) + q(T)$

$(\lambda p)(T) = \lambda p(T)$

$(pq)(T) = p(T) \circ q(T)$

如果 $p(z) = 1$(常数多项式),则 $p(T) = I$

证明:直接由定义和线性映射的运算性质可得。$\square$

定义 4.6(零化多项式)

设 $T: V \to V$ 是线性算子。如果 $p \in P(\mathbb{F})$ 满足 $p(T) = 0$(零算子),则称 $p$ 是 $T$ 的零化多项式(Annihilating Polynomial)。

定理 4.9:存在非零零化多项式

设 $V$ 是有限维向量空间,$\dim V = n$。则对于任意线性算子 $T: V \to V$,存在非零多项式 $p \in P(\mathbb{F})$,$\deg p \leq n^2$,使得 $p(T) = 0$。

证明思路:

考虑 $I, T, T^2, \ldots, T^{n^2}$。这些是 $\mathcal{L}(V, V)$ 中的 $n^2 + 1$ 个元素。

由于 $\dim \mathcal{L}(V, V) = n^2$,这些算子必线性相关。即存在不全为零的 $a_0, \ldots, a_{n^2}$ 使得:

$$a_0 I + a_1 T + \cdots + a_{n^2} T^{n^2} = 0$$

取 $p(z) = a_0 + a_1 z + \cdots + a_{n^2} z^{n^2}$,则 $p(T) = 0$。$\square$

重要意义:这个定理保证了零化多项式的存在性,为最小多项式的定义奠定了基础。

定义 4.7(最小多项式)

设 $T: V \to V$ 是线性算子,$V$ 是有限维的。$T$ 的最小多项式(Minimal Polynomial)是满足以下条件的首一多项式(最高次项系数为 1)$q$:

$q(T) = 0$

在所有满足 $p(T) = 0$ 的非零多项式中,$q$ 的次数最小

定理 4.10:最小多项式的性质

设 $T: V \to V$ 是线性算子,$q$ 是其最小多项式。则:

$q$ 是唯一的

如果 $p(T) = 0$,则 $q$ 整除 $p$

$\deg q \leq \dim V$

证明思路:

唯一性:如果有两个最小多项式 $q_1, q_2$,则 $q_1 - q_2$ 也是零化多项式且次数更小,除非 $q_1 = q_2$。

由除法算法,$p = qs + r$,$\deg r < \deg q$。则 $r(T) = p(T) - q(T)s(T) = 0$。由最小性,$r = 0$,即 $q$ 整除 $p$。

更精细的分析表明 $\deg q \leq \dim V$(实际上,$\deg q \leq n$,其中 $n = \dim V$)。$\square$


三、程序员的视角

3.1 在机器学习中的应用

特征多项式:在 PCA 中,我们需要计算协方差矩阵的特征值和特征向量。特征值是特征多项式 $\det(A - \lambda I) = 0$ 的根。虽然实际计算不使用行列式,但理论基础依赖多项式理论。

多项式回归:在回归分析中,使用多项式函数拟合数据。多项式的次数决定了模型的复杂度。

激活函数近似:许多非线性激活函数(如 sigmoid、tanh)可以用泰勒级数(多项式)近似。这在神经网络的可解释性分析中有用。

3.2 常见陷阱与误区

误区 1:认为实系数多项式总有实根

只有奇数次实系数多项式保证有实根。偶数次多项式可能没有实根(如 $z^2 + 1$)。

误区 2:混淆"零点"与"重零点"

重零点在因式分解中出现多次,在数值计算中可能导致病态问题。

误区 3:认为最小多项式等于特征多项式

最小多项式整除特征多项式,但次数可能更小。例如,单位矩阵的特征多项式是 $(z-1)^n$,但最小多项式是 $z-1$。

误区 4:忽略数值稳定性

高阶多项式的求值和求根在数值上可能不稳定。Horner 方法可以提高求值效率,但对于求根需要使用更稳健的算法(如 QR 算法)。

3.3 与其他层级的联系

  • 与特征值的联系:特征值是特征多项式的零点,最小多项式的零点包含所有特征值
  • 与对角化的联系:线性算子可对角化当且仅当最小多项式无重根
  • 与 Jordan 标准形的联系:最小多项式决定了 Jordan 块的最大尺寸
  • 与数值计算的联系:多项式求根是数值线性代数的核心问题之一

四、代码实战

4.1 多项式除法

python
import numpy as np

def polynomial_division(p_coeffs, s_coeffs):
    """
    多项式除法:p / s = q ... r
    
    参数:
    p_coeffs: 被除多项式系数列表(从高次到低次)
    s_coeffs: 除多项式系数列表(从高次到低次)
    
    返回:
    q_coeffs: 商多项式系数
    r_coeffs: 余式多项式系数
    """
    # 转换为 numpy 数组
    p = np.array(p_coeffs, dtype=float)
    s = np.array(s_coeffs, dtype=float)
    
    deg_p = len(p) - 1
    deg_s = len(s) - 1
    
    if deg_s < 0:
        raise ValueError("除数不能为零多项式")
    
    if deg_p < deg_s:
        return [], p.tolist()
    
    # 初始化商的系数
    q_deg = deg_p - deg_s
    q_coeffs = np.zeros(q_deg + 1)
    
    # 复制被除数作为余式
    r = p.copy()
    
    for i in range(q_deg + 1):
        # 计算当前位的商
        coeff = r[i] / s[0]
        q_coeffs[i] = coeff
        
        # 减去商乘以除数
        for j in range(len(s)):
            r[i + j] -= coeff * s[j]
    
    # 余式是剩余部分
    r_coeffs = r[q_deg + 1:]
    
    # 去除前导零
    while len(r_coeffs) > 0 and np.abs(r_coeffs[0]) < 1e-10:
        r_coeffs = r_coeffs[1:]
    
    return q_coeffs.tolist(), r_coeffs.tolist()

# 示例:(z^3 + 2z^2 + 3z + 4) / (z^2 + 1)
p = [1, 2, 3, 4]  # z^3 + 2z^2 + 3z + 4
s = [1, 0, 1]     # z^2 + 1

q, r = polynomial_division(p, s)
print(f"商: {q}")   # [1.0, 2.0] -> z + 2
print(f"余式: {r}") # [2.0, 2.0] -> 2z + 2

4.2 多项式求根

python
import numpy as np

def find_polynomial_roots(coeffs):
    """
    求多项式的根
    
    参数:
    coeffs: 多项式系数列表(从高次到低次)
    
    返回:
    roots: 根的数组(可能是复数)
    """
    # 使用 numpy 的 roots 函数(基于伴随矩阵的特征值)
    roots = np.roots(coeffs)
    return roots

# 示例:z^3 - 1 = 0
coeffs = [1, 0, 0, -1]  # z^3 - 1
roots = find_polynomial_roots(coeffs)
print("z^3 - 1 = 0 的根:")
for root in roots:
    print(f"  {root:.6f}")

# 验证
print("\n验证:")
for root in roots:
    val = np.polyval(coeffs, root)
    print(f"  p({root:.6f}) = {val:.2e}")

4.3 多项式作用于矩阵

python
import numpy as np

def polynomial_of_matrix(coeffs, A):
    """
    计算多项式 p(A),其中 p(z) = c_0 z^n + c_1 z^(n-1) + ... + c_n
    
    参数:
    coeffs: 多项式系数列表(从高次到低次)
    A: 方阵
    
    返回:
    p(A): 矩阵
    """
    n = len(coeffs) - 1
    result = np.zeros_like(A, dtype=float)
    
    # 使用 Horner 方法提高效率和数值稳定性
    # p(A) = c_0 A^n + c_1 A^(n-1) + ... + c_n
    # = ((...(c_0 A + c_1)A + c_2)A + ...)A + c_n
    
    result = coeffs[0] * np.eye(A.shape[0])
    for i in range(1, len(coeffs)):
        result = result @ A + coeffs[i] * np.eye(A.shape[0])
    
    return result

# 示例:p(z) = z^2 + 2z + 1,A = [[1, 2], [3, 4]]
coeffs = [1, 2, 1]  # z^2 + 2z + 1
A = np.array([[1, 2], [3, 4]])

pA = polynomial_of_matrix(coeffs, A)
print("p(A) = A^2 + 2A + I:")
print(pA)

# 直接计算验证
direct = A @ A + 2 * A + np.eye(2)
print("\n直接计算 A^2 + 2A + I:")
print(direct)

print(f"\n两者是否相等: {np.allclose(pA, direct)}")

五、深入思考

5.1 历史背景

多项式理论的发展贯穿了整个数学史:

  • 古代:巴比伦人已经知道二次方程的求解公式
  • 16世纪:意大利数学家找到了三次和四次方程的求根公式
  • 19世纪初:Abel 和 Galois 证明了五次及以上方程没有一般的根式解,开创了群论
  • 1799年:Gauss 给出了代数基本定理的第一个严格证明
  • 20世纪:多项式理论在抽象代数、代数几何中得到进一步发展

Axler 将多项式作为独立章节放在特征值之前,是因为多项式工具对于理解线性算子的结构至关重要。

5.2 前沿方向

计算代数几何:使用多项式系统研究几何对象的性质。Gröbner 基算法是核心工具。

编码理论:有限域上的多项式用于构造 Reed-Solomon 码等纠错码,广泛应用于通信和存储系统。

多项式优化:使用半定规划和矩方法求解多项式优化问题,在控制理论、机器学习中应用广泛。

5.3 延伸阅读

Sheldon Axler, Linear Algebra Done Right, 3rd Edition, Springer, 2015 - Chapter 4

Michael Artin, Algebra, 2nd Edition - 多项式环的理论

Gene H. Golub, Charles F. Van Loan, Matrix Computations - 多项式求根的数值方法

3Blue1Brown, "The Essence of Linear Algebra" - 关于多项式与特征值的直观解释


六、实验笔记

实验 1:探索多项式除法的几何意义

目标:理解多项式除法与因式分解的关系

步骤:

选择一个三次多项式 $p(z)$,找到它的一个实根 $\lambda$

用多项式除法计算 $p(z) / (z - \lambda)$,得到商 $q(z)$

验证 $p(z) = (z - \lambda)q(z)$

对 $q(z)$ 重复此过程,直到完全分解

绘制 $p(z)$ 的图像,观察零点位置

扩展:研究复根的情况,绘制多项式在复平面上的幅值图。

实验 2:最小多项式的数值计算

目标:理解最小多项式与特征多项式的区别

步骤:

生成一个随机 $n \times n$ 矩阵 $A$

计算 $A$ 的特征多项式(使用 np.poly 或符号计算)

尝试找到次数更低的多项式 $q$ 使得 $q(A) = 0$

比较最小多项式和特征多项式的次数

研究什么情况下两者相等,什么情况下最小多项式次数更低

挑战:实现一个算法,自动计算给定矩阵的最小多项式。


七、本章小结

本章深入研究了多项式理论及其在线性代数中的应用,核心内容包括:

核心概念:

  • 多项式空间 $P(\mathbb{F})$ 是无限维的,$P_n(\mathbb{F})$ 是 $n+1$ 维子空间
  • 除法算法保证了商和余式的存在唯一性
  • 因式定理将零点与一次因式联系起来
  • 代数基本定理保证了复系数多项式的完全分解

关键定理:

  • 除法算法:$p = sq + r$,$\deg r < \deg s$
  • 因式定理:$\lambda$ 是零点 $\iff (z - \lambda)$ 是因式
  • 零点个数不超过次数
  • 实系数多项式的复零点成对出现
  • 存在非零零化多项式,最小多项式唯一且整除任何零化多项式

几何直觉:

  • 多项式的零点对应图像与横轴的交点
  • 重零点对应"切触"行为(图像在该点与横轴相切)
  • 复零点在复平面上成共轭对称分布

编程实践:

  • 用长除法实现多项式除法
  • 用 np.roots 求多项式的根
  • 用 Horner 方法高效计算多项式作用于矩阵

多项式是研究线性算子的有力工具,下一章我们将进入特征值与特征向量的世界。


八、习题

基础题

执行多项式除法:$(z^4 + 2z^3 + 3z^2 + 4z + 5) / (z^2 + z + 1)$,求商和余式。

判断下列多项式在 $\mathbb{R}$ 中是否有零点:

- (a) $z^3 + z + 1$

- (b) $z^4 + z^2 + 1$

- (c) $z^5 - 3z^3 + 2z - 1$

将 $z^4 - 1$ 在 $\mathbb{C}$ 和 $\mathbb{R}$ 中分别分解为不可约因式的乘积。

设 $p(z) = z^3 - 3z^2 + 4z - 2$。已知 $1 + i$ 是一个零点,求所有零点。

进阶题

设 $p, q \in P(\mathbb{F})$,$\deg p = n$,$\deg q = m$。证明:如果 $p$ 和 $q$ 在 $n + m + 1$ 个不同点处取值相同,则 $p = q$。

设 $T: V \to V$ 是线性算子,$p \in P(\mathbb{F})$。证明:如果 $\lambda$ 是 $T$ 的特征值,则 $p(\lambda)$ 是 $p(T)$ 的特征值。

设 $T: V \to V$ 是线性算子,$q$ 是其最小多项式。证明:$q$ 的零点恰好是 $T$ 的所有特征值。

设 $A$ 是 $n \times n$ 矩阵,其特征多项式为 $p(z) = (z - \lambda_1)^{m_1}\cdots(z - \lambda_k)^{m_k}$。证明:$A$ 的最小多项式形如 $(z - \lambda_1)^{d_1}\cdots(z - \lambda_k)^{d_k}$,其中 $1 \leq d_i \leq m_i$。

挑战题

证明:线性算子 $T$ 可对角化当且仅当其最小多项式无重根。

设 $T: V \to V$ 是线性算子,$\dim V = n$。证明:存在向量 $v \in V$ 使得 $v, Tv, T^2v, \ldots, T^{n-1}v$ 线性无关当且仅当 $T$ 的最小多项式的次数为 $n$。(这样的 $v$ 称为循环向量)

4/9多项式
0%