syntax.garden

37 行列式

37 行列式

行列式

这讲讲什么:给方阵(更准确地说,给算子)配一个数。这个数必须对每一列线性、两列相同就归零、把恒等算子映成 1——三条要求合起来只剩唯一一个函数,那就是行列式;而它同时又是体积的缩放倍数。
前置:36 讲(交错多重线性型、排列与逆序数)、19 讲(上三角矩阵)、10 讲(可逆性与同构)、29 讲(奇异值,仅供理解几何那一节)、34 讲(迹,可对照「和 vs 积」)
一句话:行列式不是一堆符号游戏,它是被三条公理逼出来的唯一一个「交错 nn 重线性型」,所以它既是可逆性的开关,也是体积的倍率。


一、为什么需要它

1.1 三个场合在等同一个数

你已经不止一次遇到过「某个数决定了一切」的场面:

解线性方程组。 nn 个方程 nn 个未知数,什么时候有唯一解?把这个问题的答案压成一个数:这个数非零就有唯一解,为零就没有唯一解。这个数必须能用一个公式算出来,不能靠"试"。

判断可逆。 10 讲判定可逆用的是「零空间只有 00」或「矩阵的列线性无关」。这两种判定都要做一次完整的高斯消元。有没有一个数,看它是不是 00 就能下结论?有的话,检查可逆性就从"做一遍消元"降级成"算一个数"。

求特征值。 17 讲的特征值定义是「存在 v≠0v\ne0 使 Tv=λvTv=\lambda v」,也就是「T−λIT-\lambda I 不可逆」。如果可逆性有一个数值判据,那特征值方程就变成一个多项式方程:

λ 是 T 的特征值  ⟺  det⁡(λI−T)=0\lambda \text{ 是 } T \text{ 的特征值}\iff \det(\lambda I-T)=0

这一步的意义超出它本身:它把「算子有没有不变方向」这个几何问题,翻译成了「一个多项式有没有根」这个代数问题。后面的特征多项式、代数重数、Cayley–Hamilton 定理,全部从这里出发。

换元积分。 多元微积分里做变量替换 x↦Txx\mapsto Tx,积分要乘一个因子,那个因子是 ∣det⁡T∣|\det T|。它不是修正项,它是"体积被拉了几倍"的记账。

1.2 尴尬之处:候选太多了

想造一个「方阵 ↦\mapsto 数」的函数,你随手能写出一堆:

∑j,kAj,k,∏jAj,j,max⁡j,kAj,k,∑jAj,j2\sum_{j,k}A_{j,k},\qquad \prod_{j}A_{j,j},\qquad \max_{j,k}A_{j,k},\qquad \sum_j A_{j,j}^2

这些都是"方阵映成数"的合格函数。为什么偏偏要用那个带正负号、项数为 n!n! 的怪东西?

因为它们都不是线性的。第一个对列线性(是的,它是),但两列相同时不归零;第二个对每一列都线性、两列相同也归零,可惜它是连乘不是求和——你把第二列乘 22,∏Aj,j\prod A_{j,j} 未必跟着乘 22(只有 n=1n=1 时才是)。

换句话说:我们要的不是"某个函数",而是满足一组性质的那个函数。这组性质必须强到只留下一根独苗。

1.3 出路:36 讲已经给出了唯一性

36 讲证明了一个关键事实:nn 维空间上全体交错 nn 重线性型构成的空间,维数恰好是 11。

一个 nn 重线性型,就是"对每个自变量都线性"的函数。
「交错」是说:两个位置放同一个向量,值就是 00。

维数是 11,这句话的意思非常具体:这类函数全体就是"某一个函数"的所有标量倍数。所以只要指定它在某一组基上的值,整个函数就被钉死了;而如果规定它在标准基上取 11,那全世界就只剩一个这样的函数。

这就是行列式的公理化定义,也是本讲的主干:行列式 = 那个唯一满足「交错 + nn 重线性 + 归一」的函数。 三种讲法(排列公式 / 公理化 / 体积)里,只有这一种能一句话说清"为什么是它,不是别的"。

读完这一讲,你应该能回答:

  1. 三条公理里去掉哪一条,行列式就不再唯一?
  2. 为什么 det⁡(2A)=2ndet⁡A\det(2A)=2^n\det A,而不是 2det⁡A2\det A?
  3. 一个 3×33\times3 行列式,为什么可以用"按一行展开"和"高斯消元"两种完全不同的路线算,且必然对得上?
  4. 「∣det⁡T∣|\det T| 是体积倍率」这条,为什么能推出 det⁡T≠0  ⟺  T\det T\ne0\iff T 可逆?

二、定义与最小例子

2.1 先定义算子的行列式

从算子出发,而不是从矩阵出发。理由很实在:矩阵依赖基的选取,而我们想要的是 TT 自己的属性。如果先定义矩阵行列式,就得额外花力气证明它换基不变——那是一笔可以省掉的账。

定义(算子的行列式) 设 T∈L(V)T\in\mathcal{L}(V),dim⁡V=n\dim V=n。对 α∈Valt(n)\alpha\in V^{(n)}_{\mathrm{alt}},定义 αT\alpha T 为

αT(v1,…,vn)=α(Tv1,…,Tvn)\alpha T(v_1,\dots,v_n)=\alpha(Tv_1,\dots,Tv_n)

也就是说:先用 TT 把每个输入推过去,再交给 α\alpha 去读。

αT\alpha T 是不是也属于 Valt(n)V^{(n)}_{\mathrm{alt}}?逐个查:

  • nn 重线性:每个 TvkTv_k 对 vkv_k 线性,α\alpha 对它线性,复合起来仍线性。
  • 交错:若 vj=vkv_j=v_k,则 Tvj=TvkTv_j=Tv_k,于是 α(…,Tvj,…,Tvk,… )=0\alpha(\dots,Tv_j,\dots,Tv_k,\dots)=0。

所以 αT∈Valt(n)\alpha T\in V^{(n)}_{\mathrm{alt}}。于是「α↦αT\alpha\mapsto\alpha T」是一个从 Valt(n)V^{(n)}_{\mathrm{alt}} 到它自身的线性映射。

而 36 讲说过,这个空间是一维的。一维空间到自身的线性映射,只能是把每个向量乘上某个固定的标量。那个标量,就定义作 det⁡T\det T:

αT=(det⁡T) α对一切 α∈Valt(n)(37.1)\alpha T=(\det T)\,\alpha\qquad\text{对一切 } \alpha\in V^{(n)}_{\mathrm{alt}} \tag{37.1}

这个定义妙在哪

它没有用到任何一组基,没有用到任何公式,只用了「交错 nn 重线性型空间是一维」这一条。
而且它顺手就送出了 det⁡\det 是这个空间上的"特征值"这个视角——det⁡T\det T 就是线性映射 α↦αT\alpha\mapsto\alpha T 的特征值。
你可以把 det⁡\det 理解成:TT 作用在"体积测量尺"上时,那把尺被拉伸了多少倍。

2.2 四个立刻能读出的事实

从 (37.1) 出发,不用算任何东西就能得到四条。这也是公理化定义的价值——性质是"读"出来的,不是"算"出来的。

① det⁡I=1\det I=1。 αI=α\alpha I=\alpha,所以乘的标量是 11。

② det⁡(λI)=λn\det(\lambda I)=\lambda^n。 α(λI)\alpha(\lambda I) 把每个输入都乘了 λ\lambda,而 α\alpha 是 nn 重线性的,nn 个自变量各提一个 λ\lambda 出来,共 λn\lambda^n。

③ det⁡(λT)=λndet⁡T\det(\lambda T)=\lambda^n\det T。 同一个道理:nn 个位置,每个提一个 λ\lambda。这一个式子就能挡掉"det⁡(2A)=2det⁡A\det(2A)=2\det A"这个最常见的错。n=3n=3 时,det⁡(2A)=8det⁡A\det(2A)=8\det A——边长都乘 22,体积当然乘 88。

④ 若有由特征向量构成的基,则 det⁡T=λ1⋯λn\det T=\lambda_1\cdots\lambda_n。 设 e1,…,ene_1,\dots,e_n 是 TT 的特征向量,Tek=λkekTe_k=\lambda_k e_k。取 α∈Valt(n)\alpha\in V^{(n)}_{\mathrm{alt}} 且 α≠0\alpha\ne0,由交错性知 α(e1,…,en)≠0\alpha(e_1,\dots,e_n)\ne0(这组是基,线性无关),于是

αT(e1,…,en)=α(λ1e1,…,λnen)=(λ1⋯λn) α(e1,…,en)\alpha T(e_1,\dots,e_n)=\alpha(\lambda_1e_1,\dots,\lambda_ne_n)=(\lambda_1\cdots\lambda_n)\,\alpha(e_1,\dots,e_n)

两边的 α(e1,…,en)\alpha(e_1,\dots,e_n) 都不是 00,消掉即得 det⁡T=λ1⋯λn\det T=\lambda_1\cdots\lambda_n。

这条是整个理论的枢纽。它说:行列式在"能被特征向量张满"的情形下,就是特征值之积。 后面 19 讲的「上三角化」会告诉你,换成复空间或加上基的条件,几乎总能做到这一点;于是"det⁡=\det= 特征值之积"从特例升级成通例。

2.3 矩阵的行列式

定义:设 AA 是 n×nn\times n 方阵,令 T∈L(Fn)T\in\mathcal{L}(\mathbb{F}^n) 是关于标准基的矩阵等于 AA 的那个算子,定义

det⁡A=det⁡T\det A=\det T

也就是说:矩阵的行列式,就是"它所代表的那个算子"的行列式。这个定义暂时看着有点绕——它取决于"矩阵对应的算子"这一中间物。但很快(3.6 节之后)会看到,它其实可以直接用矩阵元素写出来。

例(对角矩阵):A=diag⁡(λ1,…,λn)A=\operatorname{diag}(\lambda_1,\dots,\lambda_n)。标准基就是特征向量基,于是

det⁡A=λ1λ2⋯λn(37.2)\det A=\lambda_1\lambda_2\cdots\lambda_n \tag{37.2}

例(上三角):对角元是 λ1,…,λn\lambda_1,\dots,\lambda_n 的上三角矩阵,也有 det⁡A=λ1⋯λn\det A=\lambda_1\cdots\lambda_n(3.3 节证)。注意这里已经不只是对角矩阵了——右上角那一堆非零元素都不影响结果。

2.4 从公理推出 2×22\times2 的公式

不要背 ad−bcad-bc,把它推出来。这一步是整讲的模板:后面 3×33\times3、n×nn\times n 的公式,全是同一套动作。

设 A=(abcd)A=\begin{pmatrix}a&b\\ c&d\end{pmatrix},两列是 v1=(ac)v_1=\binom{a}{c}、v2=(bd)v_2=\binom{b}{d}。把每列按标准基 e1,e2e_1,e_2 拆开:

v1=ae1+ce2,v2=be1+de2v_1=ae_1+ce_2,\qquad v_2=be_1+de_2

现在让 det⁡\det 上场。由多重线性,可以逐列展开(先展第一列,再展第二列):

det⁡(v1,v2)=det⁡(ae1+ce2, be1+de2)=abdet⁡(e1,e1)+addet⁡(e1,e2)+cbdet⁡(e2,e1)+cddet⁡(e2,e2)\begin{aligned}\det(v_1,v_2)&=\det(ae_1+ce_2,\ be_1+de_2)\\ &=ab\det(e_1,e_1)+ad\det(e_1,e_2)+cb\det(e_2,e_1)+cd\det(e_2,e_2)\end{aligned}

四项分别处理:

  • det⁡(e1,e1)=0\det(e_1,e_1)=0:交错,两个位置放同一个向量。
  • det⁡(e2,e2)=0\det(e_2,e_2)=0:同上。
  • det⁡(e1,e2)=1\det(e_1,e_2)=1:归一。
  • det⁡(e2,e1)=−1\det(e_2,e_1)=-1:交换两个位置,符号翻转(这条是从交错 + 多重线性推出来的,见 3.1 节)。

代回去:

det⁡(abcd)=ad−bc(37.3)\det\begin{pmatrix}a&b\\ c&d\end{pmatrix}=ad-bc \tag{37.3}

这个推导值得抄一遍

它只用了三条公理,却一步不跳地得到教科书上那个公式。
你以后看到任何"行列式公式",都可以用同一招重建:把每列拆成基向量的线性组合,用多重线性炸开成 nnn^n 项,再用交错性砍掉重复的,最后只剩排列项。

2.5 3×33\times3 的六项式

同样的流程走 n=3n=3,得到

det⁡(abcdefghi)=aei+bfg+cdh−ceg−bdi−afh(37.4)\det\begin{pmatrix}a&b&c\\ d&e&f\\ g&h&i\end{pmatrix}=aei+bfg+cdh-ceg-bdi-afh \tag{37.4}

六项,三项带 ++、三项带 −-。看图记:从左上往右下的三条"主方向"对角线取正,从右上往左下的三条取负(这就是中学的"对角线法则")。

对角线法则只对 n≤3n\le3 成立

n=4n=4 时项数是 4!=244!=24,其中 1212 正 1212 负,而"对角线"只画出 88 条。
再往上更不可能靠图记。n≥4n\ge4 请老老实实用 3.3 的排列公式,或者用消元(3.7 节)。


三、几个必须自己算一遍的结论

3.1 行列式是交错 nn 重线性型

这是全部性质的源头。结论:把 Fn\mathbb{F}^n 中 nn 个向量 v1,…,vnv_1,\dots,v_n 映成 det⁡(v1⋯vn)\det\begin{pmatrix}v_1&\cdots&v_n\end{pmatrix} 的那个函数,是 Fn\mathbb{F}^n 上的交错 nn 重线性型。

证明(短,但要看清每一行的出处)。设 TT 是满足 Tek=vkTe_k=v_k 的算子——它的矩阵正是 (v1 ⋯ vn)(v_1\ \cdots\ v_n)。取 α\alpha 是任一交错 nn 重线性型且 α(e1,…,en)=1\alpha(e_1,\dots,e_n)=1。那么

det⁡(v1 ⋯ vn)=det⁡T=(det⁡T) α(e1,…,en)=α(Te1,…,Ten)=α(v1,…,vn)\begin{aligned}\det(v_1\ \cdots\ v_n)&=\det T\\ &=(\det T)\,\alpha(e_1,\dots,e_n)\\ &=\alpha(Te_1,\dots,Te_n)\\ &=\alpha(v_1,\dots,v_n)\end{aligned}

第二行用归一,第三行用 det⁡T\det T 的定义 (37.1),第四行用 Tek=vkTe_k=v_k。

于是"取行列式"这个函数就是 α\alpha,当然交错、当然 nn 重线性。■\blacksquare

由它立刻掉出一条:

两列相同 ⇒\Rightarrow 行列式为 00。 交错性的定义就是这么写的。

更一般地,两列成比例也归零:det⁡(cv,v)=cdet⁡(v,v)=0\det(cv,v)=c\det(v,v)=0。这条马上要在"可逆性"和"体积"两处各用一次。

3.2 排列公式:把行列式写成 n!n! 项之和

把 2.4 的推导推到一般 nn。设 AA 的列是 v1,…,vnv_1,\dots,v_n,写成 vk=∑jbj,kejv_k=\sum_{j}b_{j,k}e_j。代进去,用 nn 重线性炸开:

det⁡A=∑j1=1n⋯∑jn=1nbj1,1⋯bjn,n α(ej1,…,ejn)\det A=\sum_{j_1=1}^{n}\cdots\sum_{j_n=1}^{n}b_{j_1,1}\cdots b_{j_n,n}\,\alpha(e_{j_1},\dots,e_{j_n})

nnn^n 项。但由交错性,只要某个下标重复,α(ej1,…,ejn)=0\alpha(e_{j_1},\dots,e_{j_n})=0。所以只有 (j1,…,jn)(j_1,\dots,j_n) 互不相同——也就是 1,…,n1,\dots,n 的一个排列——才有贡献。剩下的项用"交换一次变号"归一:

det⁡A=∑(j1,…,jn)∈perm⁡nsign⁡(j1,…,jn) Aj1,1Aj2,2⋯Ajn,n(37.5)\det A=\sum_{(j_1,\dots,j_n)\in\operatorname{perm}_n}\operatorname{sign}(j_1,\dots,j_n)\,A_{j_1,1}A_{j_2,2}\cdots A_{j_n,n} \tag{37.5}

其中 perm⁡n\operatorname{perm}_n 是 1,…,n1,\dots,n 的全部排列,sign⁡\operatorname{sign} 是排列的符号:

sign⁡(j1,…,jn)=(−1)N,N=#{(k,ℓ):k<ℓ 但 k 排在 ℓ 之后}(37.6)\operatorname{sign}(j_1,\dots,j_n)=(-1)^{N},\quad N=\#\{(k,\ell):k<\ell\ \text{但}\ k\ \text{排在}\ \ell\ \text{之后}\} \tag{37.6}

NN 叫逆序数。一句话记:数一数"大数跑到了小数前面"的次数,偶数次为正,奇数次为负。

为什么逆序数能代替"交换次数"

把一个排列还原成 (1,…,n)(1,\dots,n) 所需交换次数的奇偶性是固定的(不管你怎么换),它恰好等于逆序数的奇偶性。
所以 sign⁡\operatorname{sign} 是一个定义完善的函数,不是"看你走哪条路"。

用 (37.5) 核对 3×33\times3:六个排列的符号是 +,−,−,+,+,−+,-,-,+,+,-,展开正好是 (37.4)。你也应当自己手推一次 2×22\times2 的四个排列,确认只有 (1,2)(1,2) 和 (2,1)(2,1) 两项。

(37.5) 的代价:n!n! 项。n=10n=10 时超过三百万项,n=100n=100 时是 1015810^{158} 量级——比宇宙原子数还多。所以这个公式是用来推导性质的,不是用来算数的。真正算数请走 3.7 节。

3.3 上三角矩阵:乘积只剩一项

设 AA 上三角,对角元 λ1,…,λn\lambda_1,\dots,\lambda_n。在 (37.5) 里看:若某个排列 (j1,…,jn)≠(1,…,n)(j_1,\dots,j_n)\ne(1,\dots,n),必存在某个 kk 使得 jk>kj_k>k——因为它不能一直"jk≤kj_k\le k"(那样每个位置都被前 kk 个下标占满,只能是恒等排列)。而 jk>kj_k>k 意味着 Ajk,kA_{j_k,k} 位于对角线下方,上三角矩阵在那里的元素是 00。

于是整项为 00。只剩 (1,…,n)(1,\dots,n) 这一项,符号 +1+1,值是 λ1⋯λn\lambda_1\cdots\lambda_n:

det⁡A=λ1λ2⋯λn(A 上三角)(37.7)\det A=\lambda_1\lambda_2\cdots\lambda_n\qquad(A\ \text{上三角}) \tag{37.7}

这条看起来平淡,其实是计算行列式的主力:整个 3.7 节就是在讲"怎么把矩阵变成上三角而把账记清"。

3.4 可乘性:det⁡(ST)=det⁡Sdet⁡T\det(ST)=\det S\det T

证明只有三行,因为定义里那个"α↦αT\alpha\mapsto\alpha T"是复合:

α(ST)(v1,…,vn)=α(STv1,…,STvn)=(det⁡S) α(Tv1,…,Tvn)=(det⁡S)(det⁡T) α(v1,…,vn)\begin{aligned}\alpha(ST)(v_1,\dots,v_n)&=\alpha(STv_1,\dots,STv_n)\\ &=(\det S)\,\alpha(Tv_1,\dots,Tv_n)\\ &=(\det S)(\det T)\,\alpha(v_1,\dots,v_n)\end{aligned}

对一切 α\alpha 成立,故 det⁡(ST)=det⁡Sdet⁡T\det(ST)=\det S\det T。■\blacksquare

矩阵版随之而来:取 S,TS,T 使矩阵为 A,BA,B,则 STST 的矩阵是 ABAB,于是

det⁡(AB)=det⁡Adet⁡B(37.8)\det(AB)=\det A\det B \tag{37.8}

与迹的对照(回看 34 讲)

tr⁡(S+T)=tr⁡S+tr⁡T\operatorname{tr}(S+T)=\operatorname{tr}S+\operatorname{tr}T,但 tr⁡(ST)≠tr⁡Str⁡T\operatorname{tr}(ST)\ne\operatorname{tr}S\operatorname{tr}T。
det⁡(ST)=det⁡Sdet⁡T\det(ST)=\det S\det T,但 det⁡(S+T)≠det⁡S+det⁡T\det(S+T)\ne\det S+\det T。
两个数各自守着一条运算:迹管加法,行列式管乘法。这就是为什么"可逆性"归行列式,"期望与求和"归迹。

3.5 可逆   ⟺  \iff 行列式非零

先证 ⇒\Rightarrow。 设 TT 可逆,则 TT−1=ITT^{-1}=I。由可乘性:

1=det⁡I=det⁡(T)det⁡(T−1)1=\det I=\det(T)\det(T^{-1})

所以 det⁡T≠0\det T\ne0,而且 det⁡(T−1)=1det⁡T\det(T^{-1})=\dfrac{1}{\det T}。

再证 ⇐\Leftarrow。 设 det⁡T≠0\det T\ne0,要证 TT 可逆,即证零空间只有 00。取 v≠0v\ne0,把它扩充成一组基 v,e2,…,env,e_2,\dots,e_n,取非零的 α∈Valt(n)\alpha\in V^{(n)}_{\mathrm{alt}}。因为这组是基,α(v,e2,…,en)≠0\alpha(v,e_2,\dots,e_n)\ne0(3.1 节的交错性 + 线性无关)。于是

α(Tv,Te2,…,Ten)=(det⁡T) α(v,e2,…,en)≠0\alpha(Tv,Te_2,\dots,Te_n)=(\det T)\,\alpha(v,e_2,\dots,e_n)\ne0

右边非零(两个因子都非零),所以左边非零,故 Tv≠0Tv\ne0——不然整组里有重复向量,值就是 00 了。v≠0v\ne0 时必有 Tv≠0Tv\ne0,即零空间是 {0}\{0\},TT 可逆。■\blacksquare

于是得到一个只看一个数的判据:

T 可逆  ⟺  det⁡T≠0,A 可逆  ⟺  det⁡A≠0(37.9)T\ \text{可逆}\iff \det T\ne0,\qquad A\ \text{可逆}\iff\det A\ne0 \tag{37.9}

结合 2.2 的第四条,还有一句极好记的话:行列式为 00   ⟺  \iff 有特征值 00(在复空间上;实空间上等价于"某个特征值为 00 或存在复的零特征值")。用几何语言说:TT 把整个空间压扁了至少一维。

3.6 转置不变:det⁡AT=det⁡A\det A^{\mathsf{T}}=\det A

这条的价值在于它允许你"行话"与"列话"随意切换。证明的骨架是把 (37.5) 里的求和重排一次。

思路:定义 α(v1,…,vn)=det⁡((v1 ⋯ vn)T)\alpha(v_1,\dots,v_n)=\det\left((v_1\ \cdots\ v_n)^{\mathsf{T}}\right)。由转置矩阵的行列式公式可知 α\alpha 是 nn 重线性的;若 vj=vkv_j=v_k,则 (v1 ⋯ vn)T(v_1\ \cdots\ v_n)^{\mathsf{T}} 的第 j,kj,k 行相同,矩阵不可逆,α=0\alpha=0,故 α\alpha 交错。又 α(e1,…,en)=det⁡I=1\alpha(e_1,\dots,e_n)=\det I=1。由"交错 nn 重线性型空间一维",α\alpha 只能是行列式本身。■\blacksquare

这条为什么重要

它意味着「转置」这个看似只是把矩阵翻过来的操作,不改变任何本质。
后面所有关于"列"的性质,都能免费翻译成关于"行"的性质;"按列展开"和"按行展开"是同一件事。
也正因为如此,行秩 = 列秩这件事才不奇怪。

3.7 行/列操作的记账表:这才是真算法

由 3.1 + 3.6,行列式对行和列都满足同样的三条。这张表要背下来,因为它是所有手算的地基。

操作 对 det⁡\det 的影响 依据
交换两行(或两列) 变为原来的 −1-1 倍 交错性
某一行(列)乘 cc 变为原来的 cc 倍 多重线性
某行的 cc 倍加到另一行 不变 多重线性 + 交错性
两行(列)相同或成比例 等于 00 交错性

第三条要单独推一下,它是消元法的合法性来源:

det⁡(v1+cv2, v2,… )=det⁡(v1,v2,… )+cdet⁡(v2,v2,… )=det⁡(v1,v2,… )+0\det(v_1+cv_2,\ v_2,\dots)=\det(v_1,v_2,\dots)+c\det(v_2,v_2,\dots)=\det(v_1,v_2,\dots)+0

第一项拆开用多重线性,第二项归零用交错性。一行加上另一行的倍数,行列式一动不动。

于是有了完整算法:

  1. 用"倍加"把矩阵消成上三角(这一步不记任何账);
  2. 遇到需要交换两行时,交换并记一个负号;
  3. 遇到某行乘了非零常数 cc,记下 cc;
  4. 上三角后对角元相乘(3.3 节),再按记账的符号与因子还原。

单一交换一次的代价是乘 −1-1,所以交换次数是奇是偶很重要——这就是为什么"逆序数"那套东西会在消元法里再次出现。

最常丢分的一处

化简时"顺手把某行除以 33"图好看——这一步让行列式除以了 33,最后必须乘回来。
更安全的做法:只用倍加,把主元"造"成 11 而不是"除"成 11。

3.8 一个 3×33\times3 的完整手算(两条路线对照)

取

A=(2−1312−1405)A=\begin{pmatrix}2&-1&3\\ 1&2&-1\\ 4&0&5\end{pmatrix}

路线一:按第一行展开(余子式)

det⁡A=2⋅det⁡(2−105)−(−1)⋅det⁡(1−145)+3⋅det⁡(1240)\det A=2\cdot\det\begin{pmatrix}2&-1\\ 0&5\end{pmatrix}-(-1)\cdot\det\begin{pmatrix}1&-1\\ 4&5\end{pmatrix}+3\cdot\det\begin{pmatrix}1&2\\ 4&0\end{pmatrix}

逐个算三个 2×22\times2:

  • det⁡(2−105)=2⋅5−(−1)⋅0=10\det\begin{pmatrix}2&-1\\ 0&5\end{pmatrix}=2\cdot5-(-1)\cdot0=10
  • det⁡(1−145)=1⋅5−(−1)⋅4=5+4=9\det\begin{pmatrix}1&-1\\ 4&5\end{pmatrix}=1\cdot5-(-1)\cdot4=5+4=9
  • det⁡(1240)=1⋅0−2⋅4=−8\det\begin{pmatrix}1&2\\ 4&0\end{pmatrix}=1\cdot0-2\cdot4=-8

代回,注意中间的符号是 −- 而 A1,2=−1A_{1,2}=-1,两个负号相乘得 ++:

det⁡A=2⋅10+1⋅9+3⋅(−8)=20+9−24=5\det A=2\cdot10+1\cdot9+3\cdot(-8)=20+9-24=5

路线二:行变换化上三角

第一行首元是 22,不方便;交换第 1、2 行(代价:整体变号):

det⁡A=−det⁡(12−12−13405)≡−D1\det A=-\det\begin{pmatrix}1&2&-1\\ 2&-1&3\\ 4&0&5\end{pmatrix}\equiv -D_1

现在做倍加(不改值):R2←R2−2R1R_2\leftarrow R_2-2R_1、R3←R3−4R1R_3\leftarrow R_3-4R_1:

D1=det⁡(12−10−550−89)D_1=\det\begin{pmatrix}1&2&-1\\ 0&-5&5\\ 0&-8&9\end{pmatrix}

再做 R3←R3−85R2R_3\leftarrow R_3-\dfrac{8}{5}R_2,得 (009−8)=(001)\begin{pmatrix}0&0&9-8\end{pmatrix}=\begin{pmatrix}0&0&1\end{pmatrix}:

D1=det⁡(12−10−55001)=1⋅(−5)⋅1=−5D_1=\det\begin{pmatrix}1&2&-1\\ 0&-5&5\\ 0&0&1\end{pmatrix}=1\cdot(-5)\cdot1=-5

所以 det⁡A=−D1=−(−5)=5\det A=-D_1=-(-5)=5。

两条路线对上,都是 55。

这个对照要读出三件事

① 路线一只用了九个乘法,路线二用了更多步但每步都是整数/简单分数——nn 大了以后路线二压倒性更快(O(n3)O(n^3) 对 O(n!)O(n!))。
② 路线二的每一笔账都记在明面上:交换 11 次记 −1-1。若忘了这个负号,会得到 −5-5,错得很有欺骗性(数值合理、符号反了)。
③ 两条路线互不影响,正好互为验算。考试时算完一个 3×33\times3,用另一种方法抽验一遍,比重做可靠得多。

3.9 按一行(或一列)展开:Laplace 展开

路线一不是巧合,它是一条定理。先定义两个东西。

余子式 Mi,jM_{i,j}:划掉第 ii 行与第 jj 列后剩下 (n−1)×(n−1)(n-1)\times(n-1) 矩阵的行列式。
代数余子式 Ci,j=(−1)i+jMi,jC_{i,j}=(-1)^{i+j}M_{i,j}。

定理(按第 ii 行展开)

det⁡A=∑j=1nAi,jCi,j=∑j=1n(−1)i+jAi,jMi,j(37.10)\det A=\sum_{j=1}^{n}A_{i,j}C_{i,j}=\sum_{j=1}^{n}(-1)^{i+j}A_{i,j}M_{i,j} \tag{37.10}

为什么成立(用 3.7 的"交换两列变号"来做,比数逆序数干净得多):

固定 i,ji,j。把第 ii 行向上移到第 11 行,需要 i−1i-1 次相邻交换;把第 jj 列向左移到第 11 列,需要 j−1j-1 次。因每次交换变号,总共乘上 (−1)(i−1)+(j−1)=(−1)i+j(-1)^{(i-1)+(j-1)}=(-1)^{i+j}。移完之后矩阵长这样:

(Ai,j0 ⋯ 0∗Mi,j)\begin{pmatrix}A_{i,j} & 0\ \cdots\ 0\\ \ast & M_{i,j}\end{pmatrix}

(右下角那一块就是原来的 Mi,jM_{i,j},尺寸 (n−1)×(n−1)(n-1)\times(n-1)。)第一行只有首元非零,按第一行展开(或者直接由"上三角"的思路)得 det⁡=Ai,j⋅det⁡Mi,j\det=A_{i,j}\cdot\det M_{i,j}。所以贡献是 (−1)i+jAi,jMi,j(-1)^{i+j}A_{i,j}M_{i,j}。

把所有 jj 加起来就是 (37.10)——为什么可以"所有 jj 加起来":det⁡\det 对第 ii 行是线性的,把这一行拆成 nn 个"只有一个位置非零"的行之和,逐项用上式即可。■\blacksquare

展开的实际用法

展开本身是 O(n!)O(n!) 的,不适合大矩阵。它真正的用处有两个:
① 某一行(列)里有很多 00 时,直接砍掉一大片。比如第一行是 (1,0,0,…,0)(1,0,0,\dots,0),那就 det⁡A=(−1)1+1⋅1⋅M1,1\det A=(-1)^{1+1}\cdot1\cdot M_{1,1},一次降维。
② 处理含文字的矩阵——比如特征多项式 det⁡(λI−A)\det(\lambda I-A)。这类矩阵里出现 λ\lambda,高斯消元要判断"某量是否为零",很麻烦;按一行展开则一路平坦(这就是 34 讲里特征多项式两条系数公式的来历)。


四、几何直观 / 记忆钩子

4.1 二维:单位正方形怎么变成平行四边形

左:单位正方形,面积 1;右:T 作用后成为平行四边形,面积等于 <span class=∣det⁡A∣|\det A|" loading="lazy" decoding="async" />
左:单位正方形,面积 1;右:T 作用后成为平行四边形,面积等于 ∣det⁡A∣|\det A|

这是本讲最该盯着看的一张图。左图是标准基 e1,e2e_1,e_2 张成的单位正方形;右图是 TT 把它的每一点都送过去之后的像。

看图的关键是:右图的边界,就是 Te1Te_1 与 Te2Te_2 这两条向量。因为正方形是 {se1+te2:0≤s,t≤1}\{se_1+te_2:0\le s,t\le 1\},TT 是线性的,像就是 {s(Te1)+t(Te2)}\{s(Te_1)+t(Te_2)\}——正好是那两条边张成的平行四边形。

于是"行列式"这件事就非常具体了:

像的面积=∣det⁡T∣⋅原来的面积=∣det⁡T∣⋅1=∣det⁡T∣(37.11)\text{像的面积}=|\det T|\cdot\text{原来的面积}=|\det T|\cdot 1=|\det T| \tag{37.11}

图中那个平行四边形的面积,就是单位正方形面积的 ∣det⁡A∣|\det A| 倍——具体倍数取决于这张图所用的矩阵,你可以自己从图上读出两条边的坐标,用 ad−bcad-bc 验一遍。更有用的是反过来读:底边是 Te1Te_1,高是 Te2Te_2 在垂直于 Te1Te_1 方向上的投影,"底 × 高"算出来的正是 ∣ad−bc∣|ad-bc|。

为什么二维的 ∣det⁡∣|\det| 恰好是"底 × 高"? 因为 ad−bcad-bc 就是 v1=(a,c)v_1=(a,c) 与 v2=(b,d)v_2=(b,d) 的叉积的绝对值。这不是巧合,是所有维数下的同一个事实的低维影子。

4.2 一般维数:体积的缩放因子

定理:设 T∈L(Rn)T\in\mathcal{L}(\mathbb{R}^n),Ω⊆Rn\Omega\subseteq\mathbb{R}^n 可测,则

volume⁡(T(Ω))=∣det⁡T∣⋅volume⁡(Ω)(37.12)\operatorname{volume}\big(T(\Omega)\big)=|\det T|\cdot\operatorname{volume}(\Omega) \tag{37.12}

也就是说:∣det⁡T∣|\det T| 就是"每单位体积被放大多少倍"。理由是 29 讲的那条:∣det⁡T∣|\det T| 等于 TT 的奇异值之积

∣det⁡T∣=det⁡(T∗T)=s1s2⋯sn(37.13)|\det T|=\sqrt{\det(T^{*}T)}=s_1s_2\cdots s_n \tag{37.13}

而奇异值正是"在各个互相垂直的方向上分别拉伸的倍数"。nn 个正交方向各拉 sks_k 倍,体积就乘 ∏sk\prod s_k。

这条把整讲的三个身份缝在一起

① 公理化定义:交错 nn 重线性 + 归一;
② 排列公式:n!n! 项带符号的和;
③ 体积倍率:∣det⁡T∣|\det T|。
三者是同一个数。代数上它测"列向量张成的块有多大",符号则记录"定向有没有翻"。

教材插图:单位立方体经 <span class=TT 作用后成为长方体,其中 e2e_2 方向被拉长到 2e22e_2;体积从 1 变成 ∣det⁡T∣|\det T|——这个例子里正好是 2" loading="lazy" decoding="async" />
教材插图:单位立方体经 TT 作用后成为长方体,其中 e2e_2 方向被拉长到 2e22e_2;体积从 1 变成 ∣det⁡T∣|\det T|——这个例子里正好是 2

上面这张是教材上的插图(不是本课自绘):单位立方体被送成一个长方体,只有 e2e_2 方向被拉成两倍,于是体积恰好变成 22,与 ∣det⁡T∣=2|\det T|=2 吻合。"立方体变成一个箱子"是最好记的体积图像——它把一个抽象的数变成了一次具体的拉伸。

教材插图:三条棱 <span class=v1,v2,v3v_1,v_2,v_3 张成的平行六面体;它的体积是 ∣det⁡(v1 v2 v3)∣|\det(v_1\ v_2\ v_3)|" loading="lazy" decoding="async" />
教材插图:三条棱 v1,v2,v3v_1,v_2,v_3 张成的平行六面体;它的体积是 ∣det⁡(v1 v2 v3)∣|\det(v_1\ v_2\ v_3)|

这张同样是教材插图。它把"列向量 → 平行六面体"这层对应单独拎出来:矩阵的列不必正交、不必等长,它们张成的那块"斜箱子"的体积就是 ∣det⁡∣|\det|。配合 4.3 的哈达马不等式看会更清楚:在棱长固定的所有斜箱子里,正方体(棱两两正交)体积最大。

4.3 符号的含义:定向

∣det⁡∣|\det| 管大小,det⁡\det 的符号管"翻没翻个儿"。

  • det⁡>0\det>0:定向保持(右手还是右手)。
  • det⁡<0\det<0:定向反转(右手变左手,像是在镜子里的像)。
  • det⁡=0\det=0:整个空间被压扁到更低维——体积变为 00,这正是 3.5 节"不可逆"的几何版本。

交换两列 ⇒\Rightarrow 变号,几何上就是"把箱子的两条棱换个顺序,箱子从'右手系'变成'左手系'"。同一块体积,定向相反。

记忆钩子:一句话把三个身份串起来

「行列式 = 有向体积的倍率」。
体积给绝对值,有向给正负号。
于是:可逆   ⟺  \iff 体积没被压成 00   ⟺  det⁡≠0\iff\det\ne0。
于是:det⁡(AB)=det⁡Adet⁡B\det(AB)=\det A\det B   ⟺  \iff 先拉 aa 倍再拉 bb 倍 = 拉 abab 倍。

4.4 一个必须亲手验的算例

取 TT 把 e1↦(3,0)e_1\mapsto(3,0)、e2↦(1,2)e_2\mapsto(1,2),矩阵 (3102)\begin{pmatrix}3&1\\ 0&2\end{pmatrix},det⁡=6\det=6。单位正方形变成底 33、高 22 的平行四边形,面积 66 ✓。

再取 SS 把 e1↦(0,1)e_1\mapsto(0,1)、e2↦(1,0)e_2\mapsto(1,0),矩阵 (0110)\begin{pmatrix}0&1\\ 1&0\end{pmatrix},det⁡=−1\det=-1。它把正方形翻成同样的正方形,面积 11,符号 −1-1——这就是"交换两列变号"的几何解释。


五、常见误区

误区 1:det⁡(A+B)=det⁡A+det⁡B\det(A+B)=\det A+\det B

错得离谱,但很多人第一反应就是这样。反例:

A=(1000), B=(0001),det⁡A=det⁡B=0, 但 det⁡(A+B)=det⁡I=1A=\begin{pmatrix}1&0\\ 0&0\end{pmatrix},\ B=\begin{pmatrix}0&0\\ 0&1\end{pmatrix},\quad \det A=\det B=0,\ \text{但}\ \det(A+B)=\det I=1

行列式对每一列线性,不对方阵整体线性。这也正是"多重线性"这个怪名字的由来。

误区 2:det⁡(2A)=2det⁡A\det(2A)=2\det A

正确是 det⁡(cA)=cndet⁡A\det(cA)=c^{n}\det A,nn 是阶数。
理由:把 nn 列各提一个 cc 出来。
几何版本:边长都乘 22,33 维体积乘 88 而不是 22——这个直觉比公式可靠。

误区 3:以为行列式对所有线性映射都有定义

只有 V→VV\to V(同维、同空间)才有。T:V→WT:V\to W 且 dim⁡V≠dim⁡W\dim V\ne\dim W 时,det⁡T\det T 无定义——连"算子"都不是。
这不是吹毛求疵:相似不变量的证明里就吃过这个亏。若 S:W→VS:W\to V 可逆且 W≠VW\ne V,则 det⁡S\det S 无定义,就不能写 det⁡(S−1TS)=det⁡S−1det⁡Tdet⁡S\det(S^{-1}TS)=\det S^{-1}\det T\det S,得换一条路证(用交错型的拉回)。

误区 4:把"det⁡=0\det=0"等同于"矩阵是零矩阵"

(1224)\begin{pmatrix}1&2\\ 2&4\end{pmatrix} 行列式为 00,但它显然不是零矩阵。
det⁡=0\det=0 只说明列线性相关(存在非平凡线性组合为零),秩降了,别的什么都没说。

误区 5:按行展开时符号搞错

余子式的符号是 (−1)i+j(-1)^{i+j},是棋盘格:

(+−+−+−+−+)\begin{pmatrix}+&-&+\\ -&+&-\\ +&-&+\end{pmatrix}

常见错误:把 A1,2A_{1,2} 的项也写成 ++。注意 3.8 里 A1,2=−1A_{1,2}=-1 而符号是 −-,两个负号相乘得正——符号与元素的正负是两件事,分别记。

误区 6:消元时忘了记账

交换两行不记 −1-1、某行乘了常数不记回来、把"提取公因子"当成"倍加"——这三类错误会让结果符号或倍数错掉,而数值往往仍然"看着合理",极难自查。
对策:只用倍加;非要除的时候,把除以的常数写在旁边,最后乘回去。


六、拓展(可选,可跳过)

6.1 特征多项式与 Cayley–Hamilton

把 λ\lambda 当变量,det⁡(λI−T)\det(\lambda I-T) 是一个关于 λ\lambda 的 nn 次首一多项式,叫特征多项式。由 3.5 节的等价,它的根恰是特征值。展开后

det⁡(zI−T)=zn−(tr⁡T)zn−1+⋯+(−1)ndet⁡T(37.14)\det(zI-T)=z^{n}-(\operatorname{tr}T)z^{n-1}+\cdots+(-1)^{n}\det T \tag{37.14}

最高次与次高次系数分别锁住了 det⁡\det 与 tr⁡\operatorname{tr}——这就是 34 讲说的"迹与行列式是特征多项式的两个最低次系数"。把 TT 代进去还得 00,即 Cayley–Hamilton 定理。它在实空间上也成立(借助复化),这也是"用一个多项式刻画算子"这条线的终点之一。

6.2 范德蒙德行列式

det⁡(1β1⋯β1n−11β2⋯β2n−1⋮⋮⋮1βn⋯βnn−1)=∏1≤j<k≤n(βk−βj)(37.15)\det\begin{pmatrix}1&\beta_1&\cdots&\beta_1^{n-1}\\ 1&\beta_2&\cdots&\beta_2^{n-1}\\ \vdots&\vdots&&\vdots\\ 1&\beta_n&\cdots&\beta_n^{n-1}\end{pmatrix}=\prod_{1\le j<k\le n}(\beta_k-\beta_j) \tag{37.15}

这个公式一眼看出:βj\beta_j 互不相同时行列式非零,于是就插值问题"过 nn 个不同点的 n−1n-1 次多项式存在且唯一"有了一个干净的证明。这条在数值分析(插值、求积公式)和信号处理(离散傅里叶)里天天出现。

6.3 哈达马不等式

∣det⁡A∣≤∏k=1n∥vk∥(37.16)\left|\det A\right|\le\prod_{k=1}^{n}\|v_k\| \tag{37.16}

vkv_k 是 AA 的各列。几何读法(由 4.2):棱长固定的平行体中,体积最大的是各棱两两正交的那个。 等号成立当且仅当各列两两正交。

6.4 为什么要有"更快的方法"

排列公式 n!n! 项,消元 O(n3)O(n^3)。n=20n=20 时前者约 2.4×10182.4\times10^{18} 项,后者约 80008000 步。这个差距不是常数因子,是量级——所以行列式在计算上从来不是"按定义算"的。

顺带一句:算特征值也别指望这条路线。det⁡(λI−A)=0\det(\lambda I-A)=0 对 n≥5n\ge5 一般没有根式解,实际用的是迭代法(QR 算法等),行列式在这里的作用是"理论刻画"而不是"数值算法"。

6.5 关于"三种定义"

本课用"交错多重线性型"这条线定义行列式。你会在别处见到另外两条:排列公式直接定义(先给公式,再证性质),或几何定义(先定义为体积倍率,再证性质)。三条等价,选哪条当定义只是取舍:公理化那条最容易说清"为什么唯一",排列公式那条最方便算小矩阵,几何那条最有直觉。


七、自测(先做,再看答案)

1. 设 AA 是 4×44\times4 矩阵,det⁡A=3\det A=3。求 det⁡(2A)\det(2A)、det⁡(−A)\det(-A)、det⁡(ATA)\det(A^{\mathsf{T}}A)、det⁡(A−1)\det(A^{-1})。

2. 不展开,直接说出 det⁡(123246789)\det\begin{pmatrix}1&2&3\\ 2&4&6\\ 7&8&9\end{pmatrix} 的值,并说明理由。

3. 用两种方法求 det⁡(012103450)\det\begin{pmatrix}0&1&2\\ 1&0&3\\ 4&5&0\end{pmatrix},验证结果一致。

4. 设 AA 是 n×nn\times n 矩阵且 A2=AA^2=A(幂等)。证明 det⁡A\det A 只能是 00 或 11。

5. 设 T∈L(R3)T\in\mathcal{L}(\mathbb{R}^3) 把一个体积为 55 的球映成一个体积为 4040 的椭球。问 ∣det⁡T∣|\det T| 是多少?det⁡T\det T 可能是 −2-2 吗?

答案(点开)

1. det⁡(2A)=24det⁡A=16⋅3=48\det(2A)=2^4\det A=16\cdot3=48;det⁡(−A)=(−1)4det⁡A=3\det(-A)=(-1)^4\det A=3;det⁡(ATA)=det⁡(AT)det⁡A=3⋅3=9\det(A^{\mathsf{T}}A)=\det(A^{\mathsf{T}})\det A=3\cdot3=9;det⁡(A−1)=1/3\det(A^{-1})=1/3。
(第 2 问最容易错成 −3-3:nn 是偶数时 (−1)n=1(-1)^n=1,负号被吃掉了。)

2. 值是 00。因为第 2 行 =2×=2\times 第 1 行,两行成比例,由交错性归零。
(顺便:det⁡(789⋅⋅⋅)\det\begin{pmatrix}7&8&9\\ \cdot&\cdot&\cdot\end{pmatrix} 不要真的去算——3×33\times3 一旦出现成比例的行列,答案必然是 00。)

3. 按第一行展开:

det⁡=0⋅det⁡(0350)−1⋅det⁡(1340)+2⋅det⁡(1045)=0−(−12)+2⋅5=22\det=0\cdot\det\begin{pmatrix}0&3\\ 5&0\end{pmatrix}-1\cdot\det\begin{pmatrix}1&3\\ 4&0\end{pmatrix}+2\cdot\det\begin{pmatrix}1&0\\ 4&5\end{pmatrix}=0-(-12)+2\cdot5=22

消元:R1↔R2R_1\leftrightarrow R_2(记 −1-1),得 (103012450)\begin{pmatrix}1&0&3\\ 0&1&2\\ 4&5&0\end{pmatrix};R3←R3−4R1R_3\leftarrow R_3-4R_1 得 (0,5,−12)(0,5,-12);R3←R3−5R2R_3\leftarrow R_3-5R_2 得 (0,0,−22)(0,0,-22)。
上三角对角元 1⋅1⋅(−22)=−221\cdot1\cdot(-22)=-22,故 det⁡=(−1)×(−22)=22\det=(-1)\times(-22)=22。两种方法一致 ✓

4. 由 A2=AA^2=A 与可乘性:det⁡A=det⁡(A2)=(det⁡A)2\det A=\det(A^2)=(\det A)^2。于是 det⁡A\det A 是方程 x=x2x=x^2 的根,只能 00 或 11。
(几何意义:幂等就是投影,特征值只有 0,10,1,乘积自然是 00 或 11;det⁡=1\det=1 对应"投影到全空间"即 A=IA=I,det⁡=0\det=0 对应真投影。)

5. 由 (37.12),40=∣det⁡T∣⋅540=|\det T|\cdot5,故 ∣det⁡T∣=8|\det T|=8。
det⁡T=−2\det T=-2 不可能,因为 ∣det⁡T∣|\det T| 必须等于 88;det⁡T\det T 只能是 88 或 −8-8(后者表示定向被翻)。


八、复习卡

项 内容
公理化定义 交错 nn 重线性 + 归一 α(e1,…,en)=1\alpha(e_1,\dots,e_n)=1;由 36 讲「维数为 1」保证唯一
算子版定义 αT=(det⁡T)α\alpha T=(\det T)\alpha,即 det⁡T\det T 是 α↦αT\alpha\mapsto\alpha T 那个标量
矩阵版定义 det⁡A=det⁡T\det A=\det T,TT 是标准基下矩阵为 AA 的算子
2×22\times2 det⁡(abcd)=ad−bc\det\begin{pmatrix}a&b\\ c&d\end{pmatrix}=ad-bc
3×33\times3 aei+bfg+cdh−ceg−bdi−afhaei+bfg+cdh-ceg-bdi-afh(对角线法则,仅 n≤3n\le3)
排列公式 det⁡A=∑perm⁡sign⁡(j1,…,jn)Aj1,1⋯Ajn,n\det A=\sum_{\operatorname{perm}}\operatorname{sign}(j_1,\dots,j_n)A_{j_1,1}\cdots A_{j_n,n},共 n!n! 项
符号 sign⁡=(−1)逆序数\operatorname{sign}=(-1)^{\text{逆序数}},逆序数 = 大数排在小数前面的次数
上三角 det⁡=∏λk\det=\prod\lambda_k(对角元之积),对角、上三角、下三角通用
可乘性 det⁡(ST)=det⁡Sdet⁡T\det(ST)=\det S\det T,det⁡(AB)=det⁡Adet⁡B\det(AB)=\det A\det B
可逆判据 det⁡T≠0  ⟺  T\det T\ne0\iff T 可逆;det⁡(T−1)=1/det⁡T\det(T^{-1})=1/\det T
转置 det⁡AT=det⁡A\det A^{\mathsf{T}}=\det A;行性质与列性质完全对称
交换两行/列 变号
某行乘 cc 乘 cc
倍加 不变(消元法合法性的来源)
成比例 两行/列成比例 ⇒det⁡=0\Rightarrow\det=0
按一行展开 det⁡A=∑j(−1)i+jAi,jMi,j\det A=\sum_j(-1)^{i+j}A_{i,j}M_{i,j},棋盘格符号 (−1)i+j(-1)^{i+j}
体积 ∣det⁡T∣=volume⁡(T(Ω))/volume⁡(Ω)|\det T|=\operatorname{volume}(T(\Omega))/\operatorname{volume}(\Omega)
奇异值 ∣det⁡T∣=s1s2⋯sn=det⁡(T∗T)|\det T|=s_1s_2\cdots s_n=\sqrt{\det(T^{*}T)}
特征值 F=C\mathbb{F}=\mathbb{C} 时 det⁡T=∏λk\det T=\prod\lambda_k(含重数)
与迹对照 迹管加法,行列式管乘法;两者是特征多项式的两个最低次系数
算法 排列公式 O(n!)O(n!) 只用于推导;实际算用消元 O(n3)O(n^3),并记好交换与倍乘的账

九、出处与延伸(可选,不影响阅读)

  • 主线出处:本讲的定义与主要结论系统对应《线性代数应该这样学》(第 4 版,吴俊达、何阳 译)第 9 章 9C 节「行列式」,PDF 页码 p309–322(印刷页码 p296–308)。原文编号:9.40(αT\alpha T 的定义)、9.41(算子的行列式)、9.42(det⁡I\det I、det⁡(λI)\det(\lambda I)、det⁡(λT)\det(\lambda T)、特征值之积)、9.43(矩阵的行列式)、9.45(行列式是交错多重线性型)、9.46(排列公式)、9.48(上三角)、9.49(可乘性)、9.50(可逆   ⟺  \iff 非零)、9.51(特征值与 det⁡(λI−T)\det(\lambda I-T))、9.52(相似不变)、9.53(算子行列式 = 任一基下矩阵的行列式)、9.55(复空间上 = 特征值之积)、9.56(转置/对偶/伴随)、9.57(行列式计算的五条)、9.60(∣det⁡T∣=|\det T|= 奇异值之积)、9.61(TT 把体积变为 ∣det⁡T∣|\det T| 倍)、9.62–9.63(特征多项式)、9.64(Cayley–Hamilton)、9.65(特征多项式的系数与迹、行列式)、9.66(哈达马不等式)、9.67(范德蒙德行列式)。
  • 公理化定义的前置:9.36(交错多重线性型的展开公式)、9.37(dim⁡Valt(n)=1\dim V^{(n)}_{\mathrm{alt}}=1)、9.39(非零交错 nn 重线性型与线性无关的等价)——这三条对应本课 36 讲。
  • 本讲的顺序调整:原文先给算子定义、再给矩阵定义与公式;本讲把"为什么必须是它"(第 1.2–1.3 节)提前,并在第 2.4 节把 2×22\times2 的公式完整推导一遍,因为它是最便宜的"公理 → 公式"演示。逻辑关系未变。
  • 本讲自行补充、原文未单列的内容:① 3.9 节的 Laplace 展开。原文只在习题中给出特例(方阵第一列除首元外全为零时 det⁡A=A1,1det⁡B\det A=A_{1,1}\det B),本讲把它推广成一般的按行/按列展开,并用"行列交换移动 + 变号"给出证明,未使用逆序数计数。请以本讲的证明为准,若与别处教材陈述有异,按"移动行列 + 每次变号"的逻辑自查即可。② 4.1 节那张示意图中的平行四边形坐标由绘图者选定,本讲不给出其行列式的具体数值,只用它说明"面积 = ∣det⁡∣|\det|"这个关系。
  • 配图说明:ch37/det-area.png 为本课绘制的示意图;ch37/book-p255.png、ch37/book-p256.png 为教材插图(分别对应平行六面体与单位立方体的像),已在正文注明来源。
  • 与其他讲次的关系:可逆性见 10 讲;上三角化见 19 讲;特征值与代数重数见 17 讲;奇异值与 ∣det⁡T∣=∏sk|\det T|=\prod s_k 见 29 讲;迹与特征多项式系数见 34 讲;交错多重线性型与排列符号见 36 讲。
  • 术语别名:「行列式」= determinant = Determinante(德)= определитель(俄);「余子式」= minor;「代数余子式」= cofactor;「逆序数」= number of inversions;「幺正/酉」= unitary。中文教材有时把"按一行展开"称作"拉普拉斯展开"。
  • 想深挖时可查:Horn & Johnson《Matrix Analysis》第 0 章关于行列式的公理化处理与哈达马不等式的加强版;《行列式入门》中排列、逆序数与范德蒙德行列式的计算细节;数值线性代数教材中 LU 分解与行列式的关系(det⁡A=±∏Uk,k\det A=\pm\prod U_{k,k},符号由行交换次数决定)。
一个提醒

这一讲真正只有一句话:行列式是唯一一个"交错、nn 重线性、归一"的函数,而它恰好是体积的倍率。
所有让你觉得"公式很多"的地方,都是这两句的展开。
若只记一件,记 det⁡(AB)=det⁡Adet⁡B\det(AB)=\det A\det B 与 det⁡T≠0  ⟺  T\det T\ne0\iff T 可逆——它们撑起了后面所有"用数判断结构"的论证。