M04 · 第 4 章 · 第二编 方程组与行列式

行列式:有向体积、乘法结构与可逆性

从多线性、交替性和归一化唯一推出行列式,跟踪行变换与矩阵乘法,再把非零判据解释为唯一可解性和有向体积缩放。

报告页面错误
预备知识线性方程组的解结构矩阵

本章目标

  1. 用多线性、交替性和单位矩阵归一化刻画行列式,并说明置换公式为何唯一。
  2. 根据初等行变换、三角结构和余子式展开准确计算行列式。
  3. 证明 det(AB)=det(A)det(B),并推导转置、逆矩阵与伴随矩阵公式。
  4. 建立行列式非零、满秩、零空间平凡、可逆与唯一可解之间的等价链。
  5. 解释行列式的符号、绝对值和单位在有向面积与体积中的含义。
页面阅读位置0% · 仅保存在此浏览器
章节未开始
本册完成进度0/6 章 · 0%
本页目录

一个标量怎样浓缩方阵的结构

在线性方程组中,方阵每列都有主元时,对每个右端项都存在唯一解;少一个主元,零空间便出现非零方向。行列式把这条主元结论压缩成一个标量:非零表示没有方向被完全压扁,零表示至少一个输入方向丢失。这个标量还记录线性映射对有向体积的统一缩放,因此它既是代数判据,也是几何倍率。

本章只对方阵定义行列式。记 A=[a1  an]Rn×nA=[\mathbf a_1\ \cdots\ \mathbf a_n]\in\mathbb R^{n\times n},其列依次为 a1,,an\mathbf a_1,\ldots,\mathbf a_ndetA\det A 的绝对值给出体积倍率,符号比较有序列组 (a1,,an)(\mathbf a_1,\ldots,\mathbf a_n) 与标准基的取向。普通体积非负;“有向”二字负责保存列次序翻转的信息。

多线性、交替性与归一化

定义

nn 阶行列式是列向量的实值函数 D(a1,,an)D(\mathbf a_1,\ldots,\mathbf a_n),满足:

  1. 对每一列分别线性;
  2. 交换任意两列,函数值乘以 1-1
  3. D(e1,,en)=D(In)=1D(\mathbf e_1,\ldots,\mathbf e_n)=D(I_n)=1

满足这三条性质的唯一函数记作 det(a1,,an)\det(\mathbf a_1,\ldots,\mathbf a_n)detA\det A

“分别线性”不是把所有列同时乘标量。例如只改变第 jj 列时,

D(,cu+dv,)=cD(,u,)+dD(,v,).D(\ldots,c\mathbf u+d\mathbf v,\ldots) =cD(\ldots,\mathbf u,\ldots) +dD(\ldots,\mathbf v,\ldots).

交替性立即推出两列相同时行列式为零:交换两列既不改变输入,又要求结果变号,只能有 D=D=0D=-D=0。若一列是其余列的线性组合,多线性展开后的每一项都含重复列,结果同样为零。这正是列线性相关导致体积退化的代数来源。

三条性质唯一决定置换公式

A=(aij)A=(a_{ij})

detA=σSnsgn(σ)j=1naσ(j),j.\det A= \sum_{\sigma\in S_n} \operatorname{sgn}(\sigma) \prod_{j=1}^{n}a_{\sigma(j),j}.
证明

先把右侧置换和记作 F(A)F(A)。每一项对每一列都只含一个一次因子,所以 FF 对各列分别线性;交换两列等于给所有置换复合一次对换,故每项符号翻转;在 InI_n 上只有恒等置换对应的乘积非零,且其值为一。因此该公式确实满足多线性、交替性和归一化,存在性成立。

再设 DD 是任意满足三条性质的函数。把第 jj 列写成 aj=iaijei\mathbf a_j=\sum_i a_{ij}\mathbf e_i,再对各列逐次使用多线性。完全展开后,每项对应从每列选择一支标准基。若两列选择了同一支标准基,该项因交替性为零;剩余非零项恰好让 e1,,en\mathbf e_1,\ldots,\mathbf e_n 各出现一次,也就是一个置换。把该排列交换回标准顺序会产生 sgn(σ)\operatorname{sgn}(\sigma),归一化给出标准顺序的值一。任何满足三条性质的函数都必须得到同一展开,因此它只能等于 FF,唯一性成立。

置换公式有 n!n! 项,适合证明而不适合大矩阵计算。它还表明 det(AT)=detA\det(A^{\mathsf T})=\det A:转置只把置换乘积中的行列索引互换,所有置换与符号仍一一对应。因此列变换规则也可原样转成行变换规则。

二阶公式与取向

二阶行列式同时给出面积和方向

A=[2111].A= \begin{bmatrix} 2&1\\ 1&-1 \end{bmatrix}.

由置换公式

detA=2(1)11=3.\det A=2(-1)-1\cdot1=-3.

两列张成的平行四边形面积为 3=3|-3|=3,负号表示列向量的有序方向与标准基相反。若交换两列,几何图形不变而行列式变为三;若把第一列加上第二列的五倍,平行四边形经历剪切,底与高组合出的有向面积仍为负三。

二阶公式 det[abcd]=adbc\det\begin{bmatrix}a&b\\c&d\end{bmatrix}=ad-bc 不是一条孤立口诀。它恰好是“对每列线性、交换列变号、单位正方形取一”在二维的唯一结果。三阶对角线口诀只是一种记忆置换项的方式,不能推广为一般定义。

行变换如何改变行列式

三类初等行变换规则

对方阵实施一次行变换:

  1. 交换两行,行列式乘以 1-1
  2. 把一行乘以常数 cc,行列式乘以 cc
  3. 把一行加上另一行的任意倍数,行列式不变。

因而上三角或下三角矩阵的行列式等于对角元素之积。

证明

前两条分别来自交替性和单列线性,再利用 det(AT)=detA\det(A^{\mathsf T})=\det A 转为行规则。第三条把新行 ri+crj\mathbf r_i+c\mathbf r_j 按线性性展开:第一项是原行列式,第二项有两行成比例,故为零。对三角矩阵沿第一列展开,或逐步用加倍行消去对角线下方元素,可归纳得到对角乘积。

计算时必须记账。若把某行除以主元以便得到一,行列式也被除以该主元;若只做“某行减另一行倍数”,则无需修正。最稳妥的手算策略是尽量只用加倍行与必要的行交换,把矩阵化为三角形,再补回交换产生的负号。

用消元与余子式交叉核对三阶结果

计算

A=[120211032].A= \begin{bmatrix} 1&2&0\\ 2&1&1\\ 0&3&2 \end{bmatrix}.

R2R22R1R_2\leftarrow R_2-2R_1,再作 R3R3+R2R_3\leftarrow R_3+R_2,两步都不改变行列式:

A[120031003].A\sim \begin{bmatrix} 1&2&0\\ 0&-3&1\\ 0&0&3 \end{bmatrix}.

所以 detA=1(3)3=9\det A=1(-3)3=-9。沿原矩阵第一列展开得到

1det[1132]2det[2032]=18=9,1\det\begin{bmatrix}1&1\\3&2\end{bmatrix} -2\det\begin{bmatrix}2&0\\3&2\end{bmatrix} =-1-8=-9,

与消元一致。第二项前的负号来自位置 (2,1)(2,1) 的代数余子式符号。

特殊矩阵先看结构,再决定算法

对角矩阵的行列式是全部对角元素之积;置换矩阵的行列式是对应置换的符号;初等矩阵的行列式则分别是 1-1、行倍乘因子 cc 或一。这些结果让“矩阵分解成简单因子”成为计算行列式的统一方法,而不是为每种矩阵另背一条公式。

若矩阵具有分块三角结构

M=[BC0D],M= \begin{bmatrix} B&C\\ 0&D \end{bmatrix},

其中 B,DB,D 都是方阵,则

detM=detBdetD.\det M=\det B\det D.

BB 可逆时,可用只加倍行的分块消元把 CC 清除为零,行列式不变;若 BB 奇异,可从置换公式看出,任何非零项必须分别在两个对角方块中选择完整的行列匹配,结论仍成立。普通分块矩阵若左下角不为零,不能不加条件地套用对角方块乘积。

缩放整个矩阵也容易混淆。cAcAnn 列都乘以 cc,因此

det(cA)=cndetA,\det(cA)=c^n\det A,

而不是 cdetAc\det A。这条次数规律与 nn 维体积随长度尺度的 nn 次方变化一致,也解释了高维行列式为什么对单位缩放格外敏感。

余子式、伴随矩阵与展开

定义

删去 AA 的第 ii 行、第 jj 列所得子矩阵记为 MijM_{ij}。代数余子式为

Cij=(1)i+jdetMij.C_{ij}=(-1)^{i+j}\det M_{ij}.

余子式矩阵为 C=(Cij)C=(C_{ij}),伴随矩阵定义为 adj(A)=CT\operatorname{adj}(A)=C^{\mathsf T}

沿第 ii 行的拉普拉斯展开是

detA=j=1naijCij;\det A=\sum_{j=1}^n a_{ij}C_{ij};

沿第 jj 列也可展开。选择零较多的行或列能减少手算,但递归展开的计算量仍增长很快;一般数值算法不会用它求大型行列式。

伴随矩阵恒等式

任意 nn 阶方阵满足

Aadj(A)=adj(A)A=(detA)In.A\operatorname{adj}(A) =\operatorname{adj}(A)A =(\det A)I_n.

detA0\det A\ne0,则

A1=1detAadj(A).A^{-1}=\frac{1}{\det A}\operatorname{adj}(A).
证明

Aadj(A)A\operatorname{adj}(A) 的第 (i,j)(i,j) 个元素是 kaikCjk\sum_k a_{ik}C_{jk}。若 i=ji=j,这就是沿第 ii 行的余子式展开,等于 detA\det A;若 iji\ne j,它等于把第 jj 行替换成第 ii 行后作展开,而该矩阵有两行相同,行列式为零。于是乘积只有主对角线为 detA\det A。另一侧同理。行列式非零时除以它便得到双侧逆。

例如 A=[2111]A=\begin{bmatrix}2&1\\1&1\end{bmatrix}detA=1\det A=1adj(A)=[1112]\operatorname{adj}(A)=\begin{bmatrix}1&-1\\-1&2\end{bmatrix},所以伴随矩阵就是逆矩阵。直接相乘得到单位矩阵,完成符号核对。这个公式适合理论证明和低阶手算;实际求解 Ax=bA\mathbf x=\mathbf b 通常不先显式构造逆矩阵。

乘法性来自复合变换

行列式的乘法性

对同阶方阵 A,BA,B

det(AB)=detAdetB.\det(AB)=\det A\det B.

因此 det(Ak)=(detA)k\det(A^k)=(\det A)^k;若 AA 可逆,则 det(A1)=1/detA\det(A^{-1})=1/\det A

证明

固定 AA,把 B=[b1  bn]B=[\mathbf b_1\ \cdots\ \mathbf b_n] 看作列向量的有序组。函数

F(B)=det(Ab1,,Abn)=det(AB)F(B)=\det(A\mathbf b_1,\ldots,A\mathbf b_n)=\det(AB)

BB 的每一列分别线性;交换两列时 FF 变号;并且 F(In)=detAF(I_n)=\det A。若 detA=0\det A=0,交替多线性函数 FF 的置换展开中每个系数都由 F(In)F(I_n) 决定,故 F0F\equiv0。若 detA0\det A\ne0,则 F/detAF/\det A 满足行列式的三条定义性质。两种情形都由置换公式的唯一性得到 F(B)=detAdetBF(B)=\det A\det B

几何上,BB 先改变有向体积,AA 再改变一次,复合倍率自然相乘。乘法性不意味着 det(A+B)=detA+detB\det(A+B)=\det A+\det B:多线性针对的是逐列变化,不是把两个完整矩阵相加后整体线性。

非零行列式与可逆性的等价链

方阵的等价判据

ARn×nA\in\mathbb R^{n\times n},下列命题等价:

  1. detA0\det A\ne0
  2. AA 的列线性无关;
  3. rank(A)=n\operatorname{rank}(A)=n
  4. N(A)={0}\mathcal N(A)=\{\mathbf0\}
  5. AA 可逆;
  6. 对每个 bRn\mathbf b\in\mathbb R^nAx=bA\mathbf x=\mathbf b 有唯一解。
证明

若列相关,多线性展开会使每项含重复列,所以行列式为零。反过来,把 AA 行化简:若每列都有主元,三角形主元乘积非零,补回每次非零倍乘与交换后 detA0\det A\ne0;若缺主元,三角形出现零对角元,行列式为零。因此非零行列式等价于满秩。满秩、零空间平凡、可逆及对每个右端项唯一可解,正是线性方程组的主元等价链。

用一个行列式分类参数方程组

A(t)=[11001110t].A(t)= \begin{bmatrix} 1&1&0\\ 0&1&1\\ 1&0&t \end{bmatrix}.

沿第一行展开得 detA(t)=t+1\det A(t)=t+1。因此 t1t\ne-1 时,对每个右端项都有唯一解; t=1t=-1 时, (1,1,1)T(1,-1,1)^{\mathsf T} 是非零零空间向量。若右端项取 (1,2,3)T(1,2,3)^{\mathsf T},前三条方程变为 x+y=1x+y=1y+z=2y+z=2xz=3x-z=3。前两式相减实际给 xz=1x-z=-1,与第三式矛盾,所以该特定系统无解。零行列式只说明“不是唯一解”;究竟无解还是无穷多解,仍须检查增广矩阵。

有向面积、体积与单位

由列向量 a1,,an\mathbf a_1,\ldots,\mathbf a_n 张成的平行多面体是

P={t1a1++tnan:0ti1}.P= \left\{ t_1\mathbf a_1+\cdots+t_n\mathbf a_n: 0\le t_i\le1 \right\}.

它的普通 nn 维体积为 detA|\det A|。当行列式为正,有序列组与标准基同向;为负时取向翻转;为零时多面体被压进低维子空间,nn 维体积为零。三维中这就是标量三重积 a1(a2×a3)\mathbf a_1\cdot(\mathbf a_2\times\mathbf a_3)

若三个列向量都是以米为单位的位移,三阶行列式的单位是 m3\mathrm m^3,不是无单位数。若 AA 是同量纲坐标之间的纯数值变换,行列式才通常视为无量纲倍率。把温度、时间和长度等不同物理量直接并列成列向量时,必须先解释坐标归一化及乘积单位,不能把数值行列式自动称为几何体积。

对于足够规则的区域 SS 和可逆线性映射,换元公式给出 vol(AS)=detAvol(S)\operatorname{vol}(AS)=|\det A|\operatorname{vol}(S)。非线性映射则在每一点使用 Jacobian 矩阵,其行列式绝对值是局部体积因子;积分中取绝对值是因为普通体积非负,而曲面取向或有向积分会另外保留符号。

三维平行多面体的体积倍率

取列向量组成

A=[210011101].A= \begin{bmatrix} 2&1&0\\ 0&1&1\\ 1&0&1 \end{bmatrix}.

沿第一行展开:

detA=2det[1101]det[0111]=2(1)=3.\det A =2\det\begin{bmatrix}1&1\\0&1\end{bmatrix} -\det\begin{bmatrix}0&1\\1&1\end{bmatrix} =2-(-1)=3.

若列是以米为单位的三条边,平行六面体体积为 3m33\,\mathrm m^3,取向保持。以同三条边和同一顶点构成的四面体体积是平行六面体的六分之一,即 0.5m30.5\,\mathrm m^3

克拉默法则能做什么,不能做什么

detA0\det A\ne0,把 AA 的第 ii 列替换为 b\mathbf b 得到 Ai(b)A_i(\mathbf b),则

xi=detAi(b)detA.x_i=\frac{\det A_i(\mathbf b)}{\det A}.

证明把 b=Ax=jxjaj\mathbf b=A\mathbf x=\sum_jx_j\mathbf a_j 代入替换列,再用多线性展开;除 j=ij=i 外,每项都有重复列而为零,剩下 detAi(b)=xidetA\det A_i(\mathbf b)=x_i\det A。公式清楚展示解对右端项的线性依赖,也适合二、三阶理论推导。

它不是大型系统的推荐算法。逐坐标重复计算行列式成本高,且显式行列式比带主元消元、QR 或其他分解更易掩盖舍入误差。对非方阵、无解系统或无穷多解系统,分母条件不成立;此时应返回秩、参数解或最小二乘,而不是强套克拉默法则。

数值判断的边界

精确数学中 detA=0\det A=0detA0\det A\ne0 界限明确,浮点计算却不能只用一个固定阈值判断。行列式随整体尺度变化很快:把 nn 阶矩阵乘以 cc 会把行列式乘以 cnc^n。所以“绝对值很小”可能只因单位选择或矩阵尺度小,不必然表示病态;反过来,高维矩阵的行列式不小也不能完整描述最差方向的压缩。

数值求解更关心奇异值与条件数。detA|\det A| 等于全部奇异值的乘积,行列式的符号还记录取向;这个乘积可能让一个极小方向与其他较大方向相互遮掩。计算大矩阵的行列式时,库通常通过 LU 分解累计对角因子,并用符号加对数绝对值避免上溢或下溢。若任务是判断数值秩,应报告容差、尺度与奇异值,而不是把 det === 0 当作可靠算法。

常见误区

“行列式是矩阵所有元素的乘积。”只有三角矩阵的行列式等于对角元素乘积;一般矩阵包含不同置换的带符号乘积。

常见误区

“行列式非零表示每个具体方程组都有正解。”它只保证对每个右端项存在唯一的实向量解,不保证分量为正、整数或满足额外约束。

相同行列式不代表相同几何作用

单位矩阵与剪切矩阵 [1501]\begin{bmatrix}1&5\\0&1\end{bmatrix} 的行列式都为一。前者保持每个向量,后者改变多数长度和夹角;行列式只保留总体有向面积倍率,不能重建整个变换。

练习:代数规则与几何解释互相复核

练习

不用完全展开,计算 det[121031210]\det\begin{bmatrix}1&2&1\\0&3&-1\\2&1&0\end{bmatrix},并用一次余子式展开复核。

查看提示
先用第三行减去第一行的两倍,再把第二行加到新的第三行;两步都不改变行列式。
查看解答

R3R32R1R_3\leftarrow R_3-2R_1(0,3,2)(0,-3,-2),再作 R3R3+R2R_3\leftarrow R_3+R_2(0,0,3)(0,0,-3)。所得上三角矩阵对角线为 1,3,31,3,-3,故行列式为 9-9。沿原矩阵第一行展开也得 146=91-4-6=-9

练习

只用多线性和交替性证明:对任意 u,v,wR3\mathbf u,\mathbf v,\mathbf w\in\mathbb R^3det(u+2v,v,w)=det(u,v,w)\det(\mathbf u+2\mathbf v,\mathbf v,\mathbf w)= \det(\mathbf u,\mathbf v,\mathbf w)

查看提示
先把第一列拆成两列之和,再观察哪些项出现重复列。
查看解答

对第一列线性展开:

det(u+2v,v,w)=det(u,v,w)+2det(v,v,w).\det(\mathbf u+2\mathbf v,\mathbf v,\mathbf w) =\det(\mathbf u,\mathbf v,\mathbf w) +2\det(\mathbf v,\mathbf v,\mathbf w).

第二项有两列相同,由交替性为零,结论成立。这正是“给一列加另一列倍数不改变行列式”的列版本。

练习

对正文中的 A(t)=[11001110t]A(t)=\begin{bmatrix}1&1&0\\0&1&1\\1&0&t\end{bmatrix},求所有不可逆的 tt,并在退化参数处给出零空间的一组基。随后判断右端项 (0,0,0)T(0,0,0)^{\mathsf T} 的解有多少个。

查看提示
先沿第一行计算 detA(t)\det A(t),再在退化参数处求一个非零齐次解。
查看解答

detA(t)=t+1\det A(t)=t+1,所以只在 t=1t=-1 时不可逆。此时 N(A)=span{(1,1,1)T}\mathcal N(A)=\operatorname{span}\{(1,-1,1)^{\mathsf T}\}。齐次系统的全部解是 s(1,1,1)Ts(1,-1,1)^{\mathsf T}sRs\in\mathbb R,因此有无穷多个,而不是无解。

练习

已知 AA 可逆、detA=2\det A=-2detB=3\det B=3。计算 det(A1BTA)\det(A^{-1}B^{\mathsf T}A),并说明结果为何与 AA 的具体元素无关。

查看提示
逐个使用 det(XY)=detXdetY\det(XY)=\det X \det Ydet(BT)=detB\det(B^{\mathsf T})=\det Bdet(A1)=1/detA\det(A^{-1})=1/\det A
查看解答
det(A1BTA)=1detAdet(BT)detA=123(2)=3.\det(A^{-1}B^{\mathsf T}A) =\frac{1}{\det A}\det(B^{\mathsf T})\det A =\frac1{-2}\cdot3\cdot(-2)=3.

A1A^{-1}AA 的行列式因子抵消;结论只依赖乘法性、转置与逆矩阵规则,不需要知道 AA 的具体元素。

练习

从同一顶点出发的三条边为 u=(1,0,1)Tm\mathbf u=(1,0,1)^{\mathsf T}\,\mathrm mv=(0,2,1)Tm\mathbf v=(0,2,1)^{\mathsf T}\,\mathrm mw=(1,1,0)Tm\mathbf w=(1,1,0)^{\mathsf T}\,\mathrm m。求有向体积、普通平行六面体体积与四面体体积。

查看提示
把三条边按列组成矩阵;四面体体积是对应平行六面体体积的六分之一。
查看解答

按列组成

A=[101021110],detA=3.A= \begin{bmatrix} 1&0&1\\ 0&2&1\\ 1&1&0 \end{bmatrix}, \qquad \det A=-3.

有向体积为 3m3-3\,\mathrm m^3,负号表示取向与标准基相反;普通平行六面体体积为 3m33\,\mathrm m^3,四面体体积为 3/6=0.5m33/6=0.5\,\mathrm m^3

关系、资源与后续学习

  • 矩阵 提供方阵、乘法、转置与逆矩阵语言。
  • 线性方程组 把非零行列式解释为对每个右端项唯一可解。
  • 矩阵的秩 把主元数与列空间维数连接到零行列式判据。
  • 线性变换 赋予行列式有向体积缩放的几何意义。
  • 特征值与特征向量det(AλI)=0\det(A-\lambda I)=0 寻找出现非零零空间的参数。
课程 · 2011

MIT 18.06SC Linear Algebra

Gilbert Strang

提供线性代数核心概念的完整课程顺序、例题、习题和考试材料。

打开官方来源

MIT OpenCourseWare 18.06SC 把行列式放在消元、逆矩阵、特征值和体积解释之间,可用于继续练习行变换计算并核对可逆矩阵定理。

书籍 · 2019

Interactive Linear Algebra

Dan Margalit, Joseph Rabinoff

章节含几何解释、交互图、例题、练习提示和部分解答,可用于交叉核对本册六章的代数与几何主线。

打开官方来源

Georgia Tech 的 Interactive Linear Algebra 从行变换、体积缩放和可逆性进入行列式,并配有交互几何解释,可用于独立复核本章的计算规则和等价判据。

下一章把矩阵看作线性映射,并研究不同基下的表示。随后进入

特征值与特征向量:当 AλIA-\lambda I 的行列式为零时,齐次系统才可能出现非零解,这正是特征方程的来源。