因为线性空间的知识点多而杂,无法一一记录,因此只取一些学习中遇到困难的地方做笔记。
列向量与行向量
只要不特殊提及,在线性代数中研究的向量都是 列向量。
显然,一个列向量左乘行向量的结果是一个标量。而一个列向量左乘一个矩阵,可以看作左乘一行列向量。即:
\[A\mathbf x=A\begin{bmatrix}x_1\\x_2\\\vdots\\x_n\end{bmatrix}=[\alpha_1,\alpha_2,\cdots,\alpha_n]\begin{bmatrix}x_1\\x_2\\\vdots\\x_n\end{bmatrix}=\sum_{i=1}^nx_i\alpha_i \]假设式子中的 \(\alpha_i\) 是 \(m\) 行的列向量,那么
\[A\mathbf x=\sum_{i=1}^nx_i\begin{bmatrix}a_{1,i}\\a_{2,i}\\\vdots\\a_{m,i}\end{bmatrix}=\begin{bmatrix}\sum_{i=1}^nx_ia_{1,i}\\\sum_{i=1}^nx_ia_{2,i}\\\vdots\\\sum_{i=1}^nx_ia_{m,i}\end{bmatrix} \]答案是一个 \(m\) 行的列向量。
一个简单直观的例子:假如有这么一个方程组
\[\begin{bmatrix}3&2\\1&0\end{bmatrix}\begin{bmatrix}x_1\\x_2\end{bmatrix}=\begin{bmatrix}0\\0\end{bmatrix} \]那么它可以写作
\[x_1\begin{bmatrix}3\\1\end{bmatrix}+x_2\begin{bmatrix}2\\0\end{bmatrix}=\begin{bmatrix}0\\0\end{bmatrix} \]这与我们常见的写法 \(\begin{cases}3x_1+2x_2=0\\x_1=0\end{cases}\) 即
\[\begin{bmatrix}3x_1+2x_2\\x_1\end{bmatrix}=\begin{bmatrix}0\\0\end{bmatrix} \]是等价的。
由此,我们可以定义向量 \(\alpha\) 与 \(\beta\) 的内积为 \(\alpha^T\beta\),即将 \(\alpha\) 转置为行向量后与 \(\beta\) 做乘法。称两个向量正交,当且仅当两个向量的内积为 \(0\)。
线性空间的基
为什么一个线性空间的所有基大小相等?
考虑反证。首先,假设某线性空间的一组基为 \(A=[\alpha_1,\alpha_2,\cdots,\alpha_n]\),另一组基为 \(B=[\beta_1,\beta_2,\cdots,\beta_m]\) 且 \(n<m\)。将 \([\beta_1,\beta_2,\cdots,\beta_n]\) 用 \(A\) 线性表出,能得到一个 \(n\) 阶方阵 \(D\)。用初等列变换对 \(D\) 进行高斯消元,显然不改变 \(AD\) 张成的线性空间。由于 \([\beta_1,\beta_2,\cdots,\beta_n]\) 线性无关,根据高斯消元的过程可以得知,\(D\) 最终一定可以被消成单位矩阵,故 \(\beta_{n+1}\) 可以被 \([\beta_1,\beta_2,\cdots,\beta_n]\) 线性表出,不成立。
然后就可以搞出一堆关于线性空间的定义。
为什么一个向量组 \(A\) 的所有极大线性无关组的大小相等?因为它们都与 \(A\) 等价,都是 \(\operatorname{span}A\) 的一组基,证毕!这个问题困扰了我好几天。
矩阵的秩
定义矩阵的 列秩 为矩阵列向量组的极大线性无关组的大小,行秩 为矩阵行向量组的极大线性无关组的大小。
结论:一个矩阵的列秩等于行秩。
证明:
设矩阵 \(A=[\alpha_1,\alpha_2,\cdots,\alpha_n]\),列秩为 \(r\)。从 \(A\) 中选出一个极大线性无关组横向拼接为一个矩阵 \(B=[\beta_1,\beta_2,\cdots,\beta_r]\)。那么,矩阵 \(A\) 的每一列都可以表示为 \(B\) 与一个行数为 \(r\) 的列向量的乘积。即
\[\alpha_i=\sum_{j=1}^rx_{i,j}\beta_j=B\begin{bmatrix}x_{i,1}\\x_{i,2}\\\vdots\\x_{i,r}\end{bmatrix} \]将这些行数为 \(r\) 的向量横向拼接为一个矩阵 \(X\)。那么 \(A=BX\)。
设 \(A\) 有 \(m\) 行,\(A=\begin{bmatrix}\mathbf a_1\\\mathbf a_2\\\vdots\\\mathbf a_m\end{bmatrix}\),\(B=\begin{bmatrix}\mathbf b_1\\\mathbf b_2\\\vdots\\\mathbf b_m\end{bmatrix}\),\(X=\begin{bmatrix}\mathbf c_1\\\mathbf c_2\\\vdots\\\mathbf c_r\end{bmatrix}\)。可以看出
\[\mathbf a_i=\mathbf b_iX=[b_{i,1},b_{i,2},\cdots,b_{i,r}]\begin{bmatrix}\mathbf c_1\\\mathbf c_2\\\vdots\\\mathbf c_r\end{bmatrix}=\sum_{j=1}^rb_{i,j}\mathbf c_j \]故 \(A\) 的每个行向量都可以表示为 \(r\) 个向量的线性组合。即 \(A\) 的行秩不大于列秩。对 \(A^T\) 做同样的证明可以得到 \(A\) 的列秩不大于行秩。故 \(A\) 的列秩等于行秩。
核空间与像空间
矩阵 \(A\) 的核空间(即零空间),定义为方程 \(A\mathbf x=\mathbf 0\) 的全体解 \(\mathbf x\) 构成的集合上定义的线性空间,记作 \(N(A)\)。为什么可以在上面定义线性空间?因为高斯消元的过程告诉我们,假如有 \(k\) 个自由元,则解一定可以表示为 \(\sum_{i=1}^kx_{p_i}\beta_i\),其中 \(p\) 表示自由元的下标。所以 \(\mathbf x\) 可以是任意 \(\operatorname{span}\{\beta_1,\beta_2,\cdots,\beta_k\}\) 中的向量。由此也可以知道,\(N(A)=\operatorname{span}\{\beta_1,\beta_2,\cdots,\beta_k\}\)。
矩阵 \(A\) 的像空间(即列空间),定义为 \(A\) 的所有列向量张成的线性空间,记作 \(R(A)\)。
那么我们有结论:\(\dim N(A)+\dim R(A)\) 等于矩阵 \(A\) 的列数,且 \(N(A)\) 与 \(R(A)\) 正交。
证明:
不失一般性地,假设 \(A=[\alpha_1,\alpha_2,\cdots,\alpha_n]\) 的前 \(m\) 个列向量构成极大线性无关组。那么,\(A\) 的后 \(n-m\) 个列向量都可以写作前 \(m\) 个列向量的线性组合。
原方程可以写作 \(\sum_{i=1}^nx_i\alpha_i=\mathbf 0\)。则对于在标量域中任意取值的一组 \(x_{n-m+1},\cdots,x_n\),都有唯一一组 \(x_1,x_2,\cdots,x_{n-m}\) 与之对应。所以显然 \(N(A)\) 与 \(R(A)\) 正交。
逆矩阵
对于 \(n\) 阶方阵 \(A\),若存在 \(n\) 阶方阵 \(B\),使得 \(A\times B=I\)(\(I\) 为单位矩阵),则称 \(A\) 可逆,\(B\) 为 \(A\) 的逆矩阵。
求解逆矩阵的方法为:将 \(A\) 与 \(I\) 横向拼接为矩阵 \([A|I]\),对其使用初等行变换进行高斯消元,将前 \(n\) 列构成的矩阵化为 \(I\),此时后 \(n\) 列构成的矩阵就是 \(B\)。
可以从线性方程组的角度证明。考虑 \(B\) 的第 \(i\) 个列向量 \(\beta_i\),用 \(I_i\) 表示 \(I\) 的第 \(i\) 个列向量,可以发现
\[A\beta_i=I_i \]是一个线性方程组的形式,所以只要正常高斯消元就能解出 \(\beta_i\)。每一列都是如此,故后 \(n\) 列组成的矩阵就是 \(B\)。