第三章 · 3.C

3.C 矩阵

矩阵是线性映射在给定基下的"数表化身":第 k 列记录第 k 个基向量的像的坐标。本节定义矩阵的加法、标量乘法与乘法,并说明这些运算为何必须如此定义——为了与线性映射的运算完全同步,即 \(\mathcal{M}(S+T)=\mathcal{M}(S)+\mathcal{M}(T)\)、\(\mathcal{M}(\lambda T)=\lambda\mathcal{M}(T)\)、\(\mathcal{M}(ST)=\mathcal{M}(S)\mathcal{M}(T)\)。我们证明 \(\dim\mathbb{F}^{m,n}=mn\),并通过列–行分解 \(A=CR\) 建立本节的高潮定理:列秩等于行秩,由此定义矩阵的秩。

矩阵的概念

在线性代数中,我们真正关心的对象是线性映射;但在具体计算时,最方便的载体是矩阵 (matrix)——一张按行列排布的数表。本节的核心任务是建立两者之间严格的对应:取定基之后,每个线性映射对应一张矩阵;线性映射的加法、标量乘法与复合,恰好对应矩阵的加法、标量乘法与乘法。换言之,矩阵运算的规则并不是随意约定的,而是被"与线性映射保持一致"这一要求唯一确定的。

定义 3.29(m×n 矩阵,m-by-n matrix)

设 \(m,n\) 为正整数。把 \(\mathbb{F}\) 中的 \(mn\) 个数排成 \(m\) 行、\(n\) 列的矩形数表 \[ A=\begin{pmatrix} A_{1,1} & \cdots & A_{1,n}\\ \vdots & & \vdots\\ A_{m,1} & \cdots & A_{m,n} \end{pmatrix}, \] 称为一个 \(m\times n\) 矩阵;数 \(A_{j,k}\in\mathbb{F}\) 叫做 \(A\) 的位于第 \(j\) 行、第 \(k\) 列的元素 (entry)。记号 \(A_{j,k}\) 中,第一个下标是行号,第二个下标是列号;行自上而下编号,列自左至右编号。

例 3.30

设 \[ A=\begin{pmatrix} 1&7&5\\ 4&7&2\\ 3&5&6 \end{pmatrix}. \] 则 \(A\) 是一个 \(3\times 3\) 矩阵,且 \(A_{1,1}=1\),\(A_{2,3}=2\),\(A_{3,1}=3\),其余元素同理读出。

单看定义,矩阵只是一张静态的数表;它的一切生命力来自下一小节——用矩阵去记录线性映射。届时请特别留意"按列阅读"的习惯:\(A\) 的第 \(k\) 列将整体对应"第 \(k\) 个基向量的像"。因此,尽管定义 3.29 先行后列地编址元素,本节最自然的视角却是把矩阵看成若干列并排而成的整体

线性映射的矩阵

设 \(V\) 与 \(W\) 都是有限维向量空间,\(\dim V=n\)、\(\dim W=m\),取定 \(V\) 的基 \(v_1,\dots,v_n\) 与 \(W\) 的基 \(w_1,\dots,w_m\)。对任意 \(T\in\mathcal{L}(V,W)\) 与任意 \(k\),向量 \(Tv_k\) 落在 \(W\) 中,因而可以唯一地写成 \(W\) 的基的线性组合(基表示的唯一性已见于第 2 章)。把这些系数按列排好,便得到 \(T\) 的矩阵。

定义 3.31(线性映射的矩阵,matrix of a linear map)

设 \(T\in\mathcal{L}(V,W)\),\(v_1,\dots,v_n\) 是 \(V\) 的基,\(w_1,\dots,w_m\) 是 \(W\) 的基。规定 \(\mathcal{M}(T)\) 为满足 \[ Tv_k=A_{1,k}w_1+\cdots+A_{m,k}w_m,\qquad k=1,\dots,n \] 的 \(m\times n\) 矩阵 \(A\),称为 \(T\) 关于上述两组基的矩阵。需要同时指明基时,采用完整记号 \[ \mathcal{M}\bigl(T,(v_1,\dots,v_n),(w_1,\dots,w_m)\bigr). \]

换句话说,\(\mathcal{M}(T)\) 的第 \(k\) 列恰好是 \(Tv_k\) 在基 \(w_1,\dots,w_m\) 下的坐标。这里有两点必须强调。其一,由定理 3.5,线性映射由它在一组基上的取值唯一确定,因此 \(\mathcal{M}(T)\) 完整储存了 \(T\) 的全部信息——矩阵就是记录 \(T\) 在基上取值的账本。其二,\(\mathcal{M}(T)\) 不仅依赖 \(T\),还依赖两组基的选取:更换基,同一个映射一般对应不同的矩阵。这是使用矩阵时必须时刻警惕的一点,也是 Axler 强调"映射为主、矩阵为工具"的原因之一。

例 3.32

设 \(T\in\mathcal{L}(\mathbb{F}^2,\mathbb{F}^3)\) 由 \[ T(x,y)=(x+3y,\;2x+5y,\;7x+9y) \] 给出,取标准基。则 \(T(1,0)=(1,2,7)\)、\(T(0,1)=(3,5,9)\),故 \[ \mathcal{M}(T)=\begin{pmatrix}1&3\\2&5\\7&9\end{pmatrix}. \] 一般地,当 \(T:\mathbb{F}^n\to\mathbb{F}^m\) 用坐标分式给出且取标准基时,\(\mathcal{M}(T)\) 的第 \(k\) 列就是把 \(x=e_k\) 代入公式所得的输出向量。

例 3.33

考虑求导算子 \(D\)。用 \(\mathcal{P}_3(\mathbb{R})\) 表示次数至多 \(3\) 的实系数多项式组成的空间,取基 \(1,x,x^2,x^3\);用 \(\mathcal{P}_2(\mathbb{R})\) 表示次数至多 \(2\) 者,取基 \(1,x,x^2\)。由 \[ D(1)=0,\qquad D(x)=1,\qquad D(x^2)=2x,\qquad D(x^3)=3x^2 \] 得 \[ \mathcal{M}(D)=\begin{pmatrix}0&1&0&0\\0&0&2&0\\0&0&0&3\end{pmatrix}, \] 其紧邻主对角线上方的斜线(即第 \((j,j+1)\) 元)上的元素恰为 \(1,2,3\)——正是求导公式 \((x^k)'=kx^{k-1}\) 中的系数。一个"无穷维感"很强的算子,在有限维框架下不过是一张 \(3\times 4\) 的数表。

矩阵的加法与标量乘法

现在为矩阵配置运算。原则只有一条:让矩阵的运算与线性映射的对应运算完全同步。先看加法与标量乘法,它们是逐元素进行的,因此必须要求参与运算的矩阵同型。

定义 3.34(矩阵加法)

设 \(A,B\) 都是 \(m\times n\) 矩阵,定义 \(A+B\) 为 \(m\times n\) 矩阵,其元素为 \[ (A+B)_{j,k}=A_{j,k}+B_{j,k}. \] 只有同型矩阵才能相加。

定理 3.35

设 \(S,T\in\mathcal{L}(V,W)\),基取法同定义 3.31。则 \[ \mathcal{M}(S+T)=\mathcal{M}(S)+\mathcal{M}(T). \]

证明。记 \(A=\mathcal{M}(S+T)\)、\(B=\mathcal{M}(S)\)、\(C=\mathcal{M}(T)\)。对每个 \(k\), \[(S+T)v_k=Sv_k+Tv_k=\sum_{j=1}^{m}B_{j,k}w_j+\sum_{j=1}^{m}C_{j,k}w_j=\sum_{j=1}^{m}\bigl(B_{j,k}+C_{j,k}\bigr)w_j.\] 由基表示系数的唯一性,\(A_{j,k}=B_{j,k}+C_{j,k}\) 对一切 \(j,k\) 成立,此即 \(\mathcal{M}(S+T)=\mathcal{M}(S)+\mathcal{M}(T)\)。

定义 3.36(矩阵的标量乘法)

设 \(A\) 为 \(m\times n\) 矩阵,\(\lambda\in\mathbb{F}\),定义 \(\lambda A\) 为 \(m\times n\) 矩阵,其元素为 \[ (\lambda A)_{j,k}=\lambda A_{j,k}. \]

定理 3.38

设 \(T\in\mathcal{L}(V,W)\),\(\lambda\in\mathbb{F}\)。则 \[ \mathcal{M}(\lambda T)=\lambda\,\mathcal{M}(T). \]

证明。记 \(A=\mathcal{M}(T)\)。对每个 \(k\), \[(\lambda T)v_k=\lambda(Tv_k)=\lambda\sum_{j=1}^{m}A_{j,k}w_j=\sum_{j=1}^{m}\bigl(\lambda A_{j,k}\bigr)w_j,\] 比较系数即得 \((\lambda T)\) 的矩阵元素为 \(\lambda A_{j,k}\),故 \(\mathcal{M}(\lambda T)=\lambda\mathcal{M}(T)\)。

记号 3.39

用 \(\mathbb{F}^{m,n}\) 表示元素取自 \(\mathbb{F}\) 的全体 \(m\times n\) 矩阵之集。在定义 3.34 与 3.36 之下,\(\mathbb{F}^{m,n}\) 构成一个向量空间,其加法单位元是所有元素皆为 \(0\) 的零矩阵(仍记作 \(0\),由上下文区分)。

定理 3.40

\(\dim\mathbb{F}^{m,n}=mn\)。

证明。对每对下标 \(j\in\{1,\dots,m\}\)、\(k\in\{1,\dots,n\}\),用 \(\mathcal{E}_{j,k}\) 表示 \((j,k)\) 元为 \(1\)、其余元素皆为 \(0\) 的 \(m\times n\) 矩阵。这样的矩阵共有 \(mn\) 个。

先证张成:任取 \(A\in\mathbb{F}^{m,n}\),逐元素比较可得 \[ A=\sum_{j=1}^{m}\sum_{k=1}^{n}A_{j,k}\,\mathcal{E}_{j,k}, \] 因为等式两边的 \((j,k)\) 元都是 \(A_{j,k}\)。故这 \(mn\) 个矩阵张成 \(\mathbb{F}^{m,n}\)。

再证线性无关:设 \(\sum_{j,k}c_{j,k}\mathcal{E}_{j,k}=0\)。取该线性组合的 \((j,k)\) 元,得 \(c_{j,k}=0\);这对一切 \(j,k\) 成立,故全部系数为零。

于是 \(\{\mathcal{E}_{j,k}:1\le j\le m,\;1\le k\le n\}\) 是 \(\mathbb{F}^{m,n}\) 的一组基,其中恰有 \(mn\) 个元素,因此 \(\dim\mathbb{F}^{m,n}=mn\)。

把定理 3.35、3.38 与 3.40 合起来看:映射 \(T\mapsto\mathcal{M}(T)\) 是 \(\mathcal{L}(V,W)\) 到 \(\mathbb{F}^{m,n}\) 的线性映射;由"基上取值确定映射"(定理 3.5),它还是单射;而两边维数皆为 \(mn\),故它必为双射。也就是说,取定基之后,线性映射与矩阵之间一一对应,且加法与标量乘法完全保持——这正是 3.D 中将以"同构"语言正式陈述的事实。

矩阵乘法

线性映射最精彩的运算是复合。为使矩阵世界与之同步,我们来推导矩阵乘法必须长成的样子。设 \(T\in\mathcal{L}(U,V)\)、\(S\in\mathcal{L}(V,W)\),分别取定 \(U\) 的基 \(u_1,\dots,u_n\)、\(V\) 的基 \(v_1,\dots,v_p\)、\(W\) 的基 \(w_1,\dots,w_m\)。记 \(B=\mathcal{M}(T)\in\mathbb{F}^{p,n}\)(注意其行数是 \(p\),列数是 \(n\))、\(A=\mathcal{M}(S)\in\mathbb{F}^{m,p}\)。对每个 \(k\) 与每个 \(r\), \[ Tu_k=\sum_{r=1}^{p}B_{r,k}v_r,\qquad Sv_r=\sum_{j=1}^{m}A_{j,r}w_j. \] 于是 \[ (ST)u_k=S(Tu_k)=\sum_{r=1}^{p}B_{r,k}\,Sv_r=\sum_{r=1}^{p}B_{r,k}\sum_{j=1}^{m}A_{j,r}w_j=\sum_{j=1}^{m}\Bigl(\sum_{r=1}^{p}A_{j,r}B_{r,k}\Bigr)w_j. \] 因此,若要恒等式 \(\mathcal{M}(ST)=\mathcal{M}(S)\mathcal{M}(T)\) 成立,乘积 \(AB\) 的元素别无选择,只能是 \(\sum_r A_{j,r}B_{r,k}\)。

定义 3.41(矩阵乘法)

设 \(A\) 是 \(m\times n\) 矩阵,\(B\) 是 \(n\times p\) 矩阵(左因子的列数必须等于右因子的行数),定义乘积 \(AB\) 为 \(m\times p\) 矩阵,其元素为 \[ (AB)_{j,k}=\sum_{r=1}^{n}A_{j,r}B_{r,k}=A_{j,1}B_{1,k}+\cdots+A_{j,n}B_{n,k}. \] 乘积的行数承自左因子,列数承自右因子。

例 3.42

一个 \(3\times 2\) 矩阵乘一个 \(2\times 4\) 矩阵: \[ \begin{pmatrix}1&2\\3&4\\5&6\end{pmatrix}\begin{pmatrix}1&0&2&-1\\3&1&0&2\end{pmatrix}=\begin{pmatrix}7&2&2&3\\15&4&6&5\\23&6&10&7\end{pmatrix}. \] 以 \((3,1)\) 元为例:\(5\cdot 1+6\cdot 3=23\),即左矩阵第 \(3\) 行与右矩阵第 \(1\) 列对应相乘再求和;其余元素同理逐个算出。结果是一个 \(3\times 4\) 矩阵。

定理 3.43

设 \(T\in\mathcal{L}(U,V)\)、\(S\in\mathcal{L}(V,W)\),基取法如上。则 \[ \mathcal{M}(ST)=\mathcal{M}(S)\,\mathcal{M}(T), \] 其中 \(\mathcal{M}(T)\in\mathbb{F}^{p,n}\)、\(\mathcal{M}(S)\in\mathbb{F}^{m,p}\)、\(\mathcal{M}(ST)\in\mathbb{F}^{m,n}\),乘积 \(\mathcal{M}(S)\mathcal{M}(T)\) 有定义且为 \(m\times n\) 矩阵。

证明。本定理正是上文推导的收口:该推导表明,\((ST)u_k\) 在基 \(w_1,\dots,w_m\) 下的第 \(j\) 个坐标为 \(\sum_{r=1}^{p}A_{j,r}B_{r,k}\),而这恰好是 \(\mathcal{M}(S)\mathcal{M}(T)\) 的 \((j,k)\) 元(定义 3.41)。于是 \(\mathcal{M}(ST)\) 与 \(\mathcal{M}(S)\mathcal{M}(T)\) 的每一列都相同,故两矩阵相等。

定理 3.43 是矩阵乘法"合法性的来源":乘法规则不是人为发明的一套约定,而是线性映射复合运算在坐标世界中的投影。正因如此,矩阵乘法自动继承了复合的运算律(结合律、对加法的分配律,见本节末注记),而继承交换律——复合本身就不交换。这种"由映射性质反推矩阵规则"的路线,正是本节方法论的缩影。

行、列与矩阵–向量乘积

记号 3.44(行与列)

对 \(A\in\mathbb{F}^{m,n}\),记 \[ A_{j,\cdot}=\bigl(A_{j,1},\dots,A_{j,n}\bigr)\in\mathbb{F}^{1,n} \] 为 \(A\) 的第 \(j\) 行 (row),它是一个 \(1\times n\) 矩阵;记 \[ A_{\cdot,k}=\begin{pmatrix}A_{1,k}\\\vdots\\A_{m,k}\end{pmatrix}\in\mathbb{F}^{m,1} \] 为 \(A\) 的第 \(k\) 列 (column),它是一个 \(m\times 1\) 矩阵。我们把 \(\mathbb{F}^m\) 中的向量与 \(m\times 1\) 列矩阵视为同一,于是"矩阵乘向量"就是矩阵乘法的特例。

定理 3.46(元素 = 行乘列)

设 \(A\in\mathbb{F}^{m,n}\)、\(B\in\mathbb{F}^{n,p}\)。则 \[ (AB)_{j,k}=A_{j,1}B_{1,k}+\cdots+A_{j,n}B_{n,k}. \] 右端也可以读作 \(1\times n\) 矩阵 \(A_{j,\cdot}\) 与 \(n\times 1\) 矩阵 \(B_{\cdot,k}\) 的乘积——一个 \(1\times 1\) 矩阵,其唯一元素恰为该和。

证明。把定义 3.41 中的求和号展开即得第一条等式。再看 \(1\times 1\) 矩阵的读法:按定义 3.41,\(A_{j,\cdot}B_{\cdot,k}\) 有定义且是 \(1\times 1\) 矩阵,其唯一元素为 \(\sum_{r=1}^{n}A_{j,r}B_{r,k}\),与 \((AB)_{j,k}\) 一致。

A(m×n) 加亮第 j 行 B(n×p) 加亮第 k 列 AB(m×p) 落座于 (j, k) 元 (AB)j,k = Aj,1B1,k + … + Aj,nBn,k
图 1:矩阵乘法的"行乘列"法则。乘积 \(AB\) 的第 \((j,k)\) 个元素,由 \(A\) 的第 \(j\) 行与 \(B\) 的第 \(k\) 列对应元素相乘再求和得到;换言之,该元素是这一行与这一列"交汇"的结果。
定理 3.48(乘积的列)

设 \(A\in\mathbb{F}^{m,n}\)、\(B\in\mathbb{F}^{n,p}\)。则对每个 \(k\), \[ (AB)_{\cdot,k}=A\,B_{\cdot,k}, \] 即乘积的第 \(k\) 列等于左矩阵整体乘以右矩阵的第 \(k\) 列

证明。两边都是 \(m\times 1\) 矩阵,逐分量比较。第 \(j\) 个分量上,由定理 3.46,左边为 \((AB)_{j,k}=\sum_{r=1}^{n}A_{j,r}B_{r,k}\);而由定义 3.41,右边为 \(\sum_{r=1}^{n}A_{j,r}(B_{\cdot,k})_r=\sum_{r=1}^{n}A_{j,r}B_{r,k}\)。两者相同,故两矩阵相等。

例 3.49

沿用例 3.42 的数据。\(B\) 的第 \(1\) 列是 \(B_{\cdot,1}=(1,3)^t\),于是 \(AB\) 的第 \(1\) 列应为 \[ A\,B_{\cdot,1}=\begin{pmatrix}1&2\\3&4\\5&6\end{pmatrix}\begin{pmatrix}1\\3\end{pmatrix}=1\begin{pmatrix}1\\3\\5\end{pmatrix}+3\begin{pmatrix}2\\4\\6\end{pmatrix}=\begin{pmatrix}7\\15\\23\end{pmatrix}, \] 与例 3.42 中乘积矩阵的第 \(1\) 列完全一致(这里我们提前使用了下面定理 3.50 的"列线性组合"解释)。

定理 3.50(矩阵乘向量 = 列的线性组合)

设 \(A\in\mathbb{F}^{m,n}\),\(b=(b_1,\dots,b_n)^t\in\mathbb{F}^{n,1}\)。则 \[ Ab=b_1A_{\cdot,1}+b_2A_{\cdot,2}+\cdots+b_nA_{\cdot,n}. \]

证明。两边都是 \(m\times 1\) 矩阵,比较第 \(j\) 个分量:由定义 3.41,左边为 \((Ab)_j=\sum_{r=1}^{n}A_{j,r}b_r\);由向量线性组合的分量式,右边为 \(\bigl(\sum_{r=1}^{n}b_rA_{\cdot,r}\bigr)_j=\sum_{r=1}^{n}b_r(A_{\cdot,r})_j=\sum_{r=1}^{n}b_rA_{j,r}\)。两者相同。

这条朴素的定理有重要的解释:集合 \(\{Ab:b\in\mathbb{F}^{n,1}\}\) 恰好是 \(A\) 的列的全部线性组合,即 \(A\) 的列空间。因此,线性方程组 \(Ax=b\) 有解,当且仅当右端 \(b\) 落在 \(A\) 的列空间中;"解方程组"在几何上就是"问右端向量是否属于列空间"。

定理 3.51(CR 的列与行)

设 \(C\in\mathbb{F}^{m,c}\)、\(R\in\mathbb{F}^{c,n}\)。则 \(CR\) 的每一列都是 \(C\) 的列的线性组合,\(CR\) 的每一行都是 \(R\) 的行的线性组合。

证明。列的方向:由定理 3.48,\((CR)_{\cdot,k}=C\,R_{\cdot,k}\);再由定理 3.50,它是 \(C\) 的各列以 \(R_{\cdot,k}\) 的分量为系数的线性组合。

行的方向:固定 \(j\),对每个 \(k\), \[(CR)_{j,k}=\sum_{r=1}^{c}C_{j,r}R_{r,k}=\sum_{r=1}^{c}C_{j,r}\,(R_{r,\cdot})_k,\] 这说明 \((CR)_{j,\cdot}=\sum_{r=1}^{c}C_{j,r}\,R_{r,\cdot}\),即 \(CR\) 的第 \(j\) 行是 \(R\) 的各行以 \(C\) 的第 \(j\) 行分量为系数的线性组合。

定理 3.51 是通向本节主定理(3.57)的关键踏板:若能把 \(A\) 写成 \(A=CR\),那么 \(A\) 的所有行都住在 \(R\) 的 \(c\) 个行所张成的空间里,\(A\) 的行秩便被数 \(c\) 从上方控制。

列–行分解与秩

定义 3.52(列秩与行秩)

设 \(A\in\mathbb{F}^{m,n}\)。把 \(A\) 的 \(n\) 个列视为 \(\mathbb{F}^{m}\) 中的向量,其张成空间的维数称为 \(A\) 的列秩 (column rank);把 \(A\) 的 \(m\) 个行视为 \(\mathbb{F}^{n}\) 中的向量,其张成空间的维数称为 \(A\) 的行秩 (row rank)。

例 3.53

设 \[ A=\begin{pmatrix}1&2&0&1\\3&6&1&0\end{pmatrix}. \] 列空间是 \(\mathbb{F}^2\) 的子空间,故列秩至多为 \(2\);又第 \(3\)、\(4\) 列 \((0,1)^t\) 与 \((1,0)^t\) 线性无关,故列秩 \(=2\)。再看行:设 \(a(1,2,0,1)+b(3,6,1,0)=0\),由第 \(3\) 个分量得 \(b=0\),再由第 \(1\) 个分量得 \(a=0\),故两行线性无关,行秩 \(=2\)。本例中列秩恰好等于行秩——这不是巧合,而是一条深刻的一般定理(3.57)。

定义 3.54(转置,transpose)

设 \(A\in\mathbb{F}^{m,n}\),定义 \(A^t\in\mathbb{F}^{n,m}\) 为 \[ (A^t)_{k,j}=A_{j,k}, \] 即把第 \(j\) 行改写成第 \(j\) 列,"行变列、列变行"。直接由定义可验证:\((A+B)^t=A^t+B^t\),\((\lambda A)^t=\lambda A^t\),\((A^t)^t=A\);乘积的转置满足 \((AB)^t=B^tA^t\)(注意顺序颠倒),见练习 3。

例 3.55

\[ \begin{pmatrix}1&2&3\\4&5&6\end{pmatrix}^t=\begin{pmatrix}1&4\\2&5\\3&6\end{pmatrix}. \] 由此立即得到一个将反复使用的观察:\(A\) 的行秩等于 \(A^t\) 的列秩,\(A\) 的列秩等于 \(A^t\) 的行秩——因为\(A\) 的行经转置恰好变成 \(A^t\) 的列。

定理 3.56(列–行分解,column–row factorization)

设 \(A\in\mathbb{F}^{m,n}\) 的列秩为 \(c\ge 1\)。则存在 \(C\in\mathbb{F}^{m,c}\) 与 \(R\in\mathbb{F}^{c,n}\),使得 \[ A=CR. \]

证明。记 \(A\) 的列为 \(A_{\cdot,1},\dots,A_{\cdot,n}\in\mathbb{F}^{m,1}\)。它们的张成空间(即列空间)维数为 \(c\),而张成组中必可选出列空间的一组基,故可取 \(c_1,\dots,c_c\) 是\(A\) 的列中 \(c\) 个线性无关者,构成列空间的一组基。令 \(C\in\mathbb{F}^{m,c}\) 为以 \(c_r\) 为第 \(r\) 列的矩阵。

对每个 \(k\),\(A_{\cdot,k}\) 属于列空间,故可唯一地写成 \[ A_{\cdot,k}=R_{1,k}c_1+\cdots+R_{c,k}c_c; \] 以这些系数构造 \(R\in\mathbb{F}^{c,n}\)(其第 \(k\) 列为 \((R_{1,k},\dots,R_{c,k})^t\))。

于是对每个 \(k\),相继使用定理 3.48 与 3.50: \[ (CR)_{\cdot,k}=C\,R_{\cdot,k}=\sum_{r=1}^{c}R_{r,k}\,C_{\cdot,r}=\sum_{r=1}^{c}R_{r,k}\,c_r=A_{\cdot,k}. \] 即 \(CR\) 与 \(A\) 的每一列都相同,故 \(A=CR\)。

例(列–行分解的数值演示)

设 \[ A=\begin{pmatrix}1&2&3\\2&4&7\end{pmatrix},\qquad A_{\cdot,1}=\begin{pmatrix}1\\2\end{pmatrix},\quad A_{\cdot,2}=\begin{pmatrix}2\\4\end{pmatrix}=2A_{\cdot,1},\quad A_{\cdot,3}=\begin{pmatrix}3\\7\end{pmatrix}, \] 故列秩 \(c=2\)。取 \(c_1=(1,2)^t\)、\(c_2=(3,7)^t\),则 \[ C=\begin{pmatrix}1&3\\2&7\end{pmatrix},\qquad R=\begin{pmatrix}1&2&0\\0&0&1\end{pmatrix},\qquad CR=\begin{pmatrix}1&2&3\\2&4&7\end{pmatrix}=A, \] 其中 \(R\) 的各个列恰是 \(A\) 的相应列在基 \(c_1,c_2\) 下的坐标。也可以按"列乘行"把 \(A\) 拆成两个秩 \(1\) 矩阵之和:\(A=C_{\cdot,1}R_{1,\cdot}+C_{\cdot,2}R_{2,\cdot}\)(见练习 5)。

C(m×c) × R(c×n) = A(m×n) A = + C 第 1 列 R 第 1 行 C 第 2 列 R 第 2 行 C·,1R1,·(秩 1) C·,2R2,·(秩 1) A = C·,1R1,· + C·,2R2,· + ⋯(共 c 项,每项秩 1)
图 2:列–行分解 \(A=CR\)。\(C\) 的第 \(r\) 列与 \(R\) 的第 \(r\) 行配对,生成一个秩 \(1\) 的"外积"块 \(C_{\cdot,r}R_{r,\cdot}\);把 \(c\) 个这样的块叠加起来,恰好重构出 \(A\)。
定理 3.57(列秩 = 行秩)

每个矩阵的列秩都等于它的行秩。

证明。设 \(A\in\mathbb{F}^{m,n}\)。若 \(A\) 的列秩为 \(0\),则所有列都是零向量,于是 \(A\) 是零矩阵,其行也全是零向量,行秩同为 \(0\),结论成立。

以下设列秩 \(c\ge 1\),取定理 3.56 给出的分解 \(A=CR\),其中 \(C\in\mathbb{F}^{m,c}\)、\(R\in\mathbb{F}^{c,n}\)。由定理 3.51,\(A\) 的每一行都是 \(R\) 的 \(c\) 个行的线性组合,因此 \(A\) 的行空间包含于 \(R\) 的行空间,故 \[ \text{行秩}(A)\le c=\text{列秩}(A). \]

现在把已证的不等式应用于转置 \(A^t\):行秩\((A^t)\le\) 列秩\((A^t)\)。而由例 3.55 之后的观察,行秩\((A^t)=\) 列秩\((A)\),列秩\((A^t)=\) 行秩\((A)\)。代入得 \[ \text{列秩}(A)\le\text{行秩}(A). \]

两个方向的不等式同时成立,故列秩 = 行秩。

定义 3.58(秩,rank)

矩阵 \(A\) 的秩定义为 \[ \operatorname{rank}A=A\text{ 的列秩}\;(=A\text{ 的行秩}), \] 零矩阵的秩为 \(0\)。显然 \(\operatorname{rank}A\le\min\{m,n\}\):列空间是 \(\mathbb{F}^m\) 的子空间,而行秩又等于列秩。

最后把秩与线性映射联系起来。设 \(A=\mathcal{M}(T)\in\mathbb{F}^{m,n}\)(基取法同定义 3.31),则 \[ \operatorname{rank}A=\dim\operatorname{range}T. \] 理由:设 \(x=b_1v_1+\cdots+b_nv_n\in V\),由 \(T\) 的线性性,\(Tx=\sum_{k=1}^{n}b_kTv_k\),其坐标列为 \[ \mathcal{M}(Tx)=b_1A_{\cdot,1}+\cdots+b_nA_{\cdot,n}=A\,b \] (这正是定理 3.50 的翻译)。于是 \(\{\mathcal{M}(Tx):x\in V\}\) 恰好等于 \(A\) 的列空间;两边取维数即得结论。结合 3.B 中的秩–零化度定理,矩阵的秩同时刻画了线性方程组解的存在性与解空间的维数。

注记:运算律与方法论

注(矩阵乘法不可交换)

一般而言 \(AB\ne BA\);甚至当 \(A\) 是 \(m\times n\) 矩阵、\(B\) 是 \(n\times p\) 矩阵且 \(p\ne m\) 时,\(BA\) 根本没有定义。即便都是方阵也不交换:取 \[ A=\begin{pmatrix}0&1\\0&0\end{pmatrix},\qquad B=\begin{pmatrix}1&0\\0&0\end{pmatrix}, \] 则 \[ AB=\begin{pmatrix}0&0\\0&0\end{pmatrix},\qquad BA=\begin{pmatrix}0&1\\0&0\end{pmatrix}, \] 两者并不相等。这与线性映射的复合天然一致:\(ST\) 与 \(TS\) 本来就不是一回事。

注(分配律与结合律成立)

矩阵乘法对矩阵加法满足左、右分配律;结合律 \((AB)C=A(BC)\) 可以用下标直接验证: \[ \bigl((AB)C\bigr)_{j,k}=\sum_{s}(AB)_{j,s}C_{s,k}=\sum_{s}\sum_{r}A_{j,r}B_{r,s}C_{s,k}=\sum_{r}A_{j,r}(BC)_{r,k}=\bigl(A(BC)\bigr)_{j,k}, \] 其中求和顺序的交换只是有限和的重排。更深刻的看法是:结合律是复合的结合律 \((RST)u=R\bigl((ST)u\bigr)\) 经定理 3.43 投射到矩阵世界的影子。同样,\(n\times n\) 单位矩阵(对角线元素为 \(1\),其余为 \(0\))对应恒等映射,满足 \(AI=IA=A\),扮演乘法单位元的角色。

注(方法论:映射为主,矩阵为仆)

Axler 在全书贯彻一个观点:定理应当尽量表述为与基的选取无关的、关于线性映射及其向量空间结构的命题;矩阵只是取定基之后的计算工具。例如,"列秩 = 行秩"(定理 3.57)乍看是关于数表的组合性质,其证明却完全依赖线性代数的核心机制——基、张成、维数,以及转置带来的对称性。当你在矩阵下标里迷路时,不妨退一步问:"对应的线性映射语言是什么?"往往豁然开朗。下一节 3.D 将把这一哲学推向极致:不同基给出的矩阵通过可逆矩阵相互转化,而 \(\mathcal{L}(V,W)\cong\mathbb{F}^{m,n}\) 这一"维数 \(mn\)"的解释,将成为同构理论的第一个重要应用。

练习

以下练习覆盖本节的主要结果。建议先自行尝试,再展开解答。

练习 3.C-1

设 \(T\in\mathcal{L}(\mathbb{R}^2)\) 由 \(T(x,y)=(3x-y,\;x+2y)\) 给出,取标准基 \((1,0),(0,1)\)。求 \(\mathcal{M}(T)\),计算 \(\mathcal{M}(T^2)\),并验证 \(\mathcal{M}(T^2)=\mathcal{M}(T)\,\mathcal{M}(T)\)(定理 3.43)。

解答

两列分别是 \(T(1,0)=(3,1)^t\) 与 \(T(0,1)=(-1,2)^t\),故 \(\mathcal{M}(T)=\begin{pmatrix}3&-1\\1&2\end{pmatrix}\)。直接计算:\(T^2(x,y)=T(3x-y,\,x+2y)=(8x-5y,\;5x+3y)\),故 \(\mathcal{M}(T^2)=\begin{pmatrix}8&-5\\5&3\end{pmatrix}\)。另一方面, \[ \mathcal{M}(T)^2=\begin{pmatrix}3&-1\\1&2\end{pmatrix}\begin{pmatrix}3&-1\\1&2\end{pmatrix}=\begin{pmatrix}8&-5\\5&3\end{pmatrix}, \] 两者一致,正是定理 3.43 的体现。

练习 3.C-2

设 \[ A=\begin{pmatrix}1&2\\0&1\\2&0\end{pmatrix},\qquad B=\begin{pmatrix}3&1\\4&2\end{pmatrix}. \] 计算 \(AB\),并分别验证定理 3.48 与 3.50:\((AB)_{\cdot,2}=A\,B_{\cdot,2}\),且 \(A\,B_{\cdot,2}\) 是 \(A\) 的列的线性组合。

解答

\(AB=\begin{pmatrix}11&5\\4&2\\6&2\end{pmatrix}\)(例如 \((1,1)\) 元 \(=1\cdot 3+2\cdot 4=11\))。\(B_{\cdot,2}=(1,2)^t\),故 \[ A\,B_{\cdot,2}=1\begin{pmatrix}1\\0\\2\end{pmatrix}+2\begin{pmatrix}2\\1\\0\end{pmatrix}=\begin{pmatrix}5\\2\\2\end{pmatrix}, \] 恰为 \(AB\) 的第 \(2\) 列,与直接相乘的结果一致。

练习 3.C-3

证明:\((AB)^t=B^tA^t\)。

解答

设 \(A\in\mathbb{F}^{m,n}\)、\(B\in\mathbb{F}^{n,p}\),则 \((AB)^t\) 与 \(B^tA^t\) 都是 \(p\times m\) 矩阵。比较 \((k,j)\) 元:由定义 3.54 与 3.41, \[ \bigl((AB)^t\bigr)_{k,j}=(AB)_{j,k}=\sum_{r=1}^{n}A_{j,r}B_{r,k}, \] \[ (B^tA^t)_{k,j}=\sum_{r=1}^{n}(B^t)_{k,r}(A^t)_{r,j}=\sum_{r=1}^{n}B_{r,k}A_{j,r}. \] 两个和逐项相同,故 \((AB)^t=B^tA^t\)。注意因子的顺序颠倒了。∎

练习 3.C-4

求 \[ A=\begin{pmatrix}1&2&1\\2&4&0\\3&6&2\end{pmatrix} \] 的列–行分解 \(A=CR\)(定理 3.56),并求 \(\operatorname{rank}A\)。

解答

\(A\) 的列为 \((1,2,3)^t\),\((2,4,6)^t\),\((1,0,2)^t\);第 \(2\) 列等于 \(2\) 倍第 \(1\) 列,而第 \(1\)、\(3\) 列不成比例,故列秩 \(c=2\)。取 \(c_1=(1,2,3)^t\)、\(c_2=(1,0,2)^t\),则 \[ C=\begin{pmatrix}1&1\\2&0\\3&2\end{pmatrix},\qquad R=\begin{pmatrix}1&2&0\\0&0&1\end{pmatrix}, \] 其中 \(R\) 的三个列恰是 \(A\) 的三个列在基 \(c_1,c_2\) 下的坐标。逐列验证 \(CR=A\):例如 \((CR)_{\cdot,3}=C\,(0,1)^t=c_2=(1,0,2)^t=A_{\cdot,3}\)。由定理 3.57,\(\operatorname{rank}A=2\)。

练习 3.C-5

设 \(A\in\mathbb{F}^{m,n}\) 的列秩为 \(c\)。证明:\(A\) 可以写成 \(c\) 个秩为 \(1\) 的矩阵之和,并且不能写成少于 \(c\) 个秩 \(1\) 矩阵之和。

解答

存在性:按定理 3.56 的证明,取 \(A\) 的列空间的一组基 \(c_1,\dots,c_c\)(由 \(A\) 的列构成),得 \(A=CR\)。把矩阵乘法按"列乘行"展开: \[ A=\sum_{r=1}^{c}C_{\cdot,r}R_{r,\cdot}. \] 每个加项 \(C_{\cdot,r}R_{r,\cdot}\) 的每一列都是 \(C_{\cdot,r}\) 的倍数;又因为 \(c_r\) 本身是 \(A\) 的某一列,它在这组基下的坐标行 \(R_{r,\cdot}\) 含有非零分量(在 \(r\) 位置为 \(1\)),故该项非零,秩恰为 \(1\)。

下界:设 \(A=\sum_{s=1}^{d}M_s\),其中每个 \(M_s\) 的秩为 \(1\),即其列空间由某个非零向量 \(u_s\) 张成。那么 \(A\) 的每个列都是 \(u_1,\dots,u_d\) 的线性组合(逐项相加即可看出),于是 \[ \text{列秩}(A)\le\dim\operatorname{span}(u_1,\dots,u_d)\le d, \] 即 \(c\le d\)。故少于 \(c\) 个秩 \(1\) 矩阵不可能拼出 \(A\)。∎