矩阵初等变换的变换矩阵

0. 符号

  • 设矩阵\boldsymbol{A}\in\mathbb{R}^{n\times m},按列分块以及按行分块是\boldsymbol{A}=[\boldsymbol{a_1},\boldsymbol{a_2},\cdots,\boldsymbol{a_m}]=\begin{bmatrix}\boldsymbol{b_1}\\\boldsymbol{b_2}\\\vdots\\\boldsymbol{b_n}\end{bmatrix}

  • \boldsymbol{e}_i是第i位为1,其余为0的向量:
    \begin{array}{cccccccc} \boldsymbol{e}_i=&[0&0&\cdots&1&0&\cdots&0]^T\\ &&&&{\small \uparrow\\ i}&&&\\ \end{array}
    具体尺寸根据上下文来确定。

  • \boldsymbol{I}是单位阵,具体大小由实际乘法中的位置决定。对于n\times n的单位阵可以表示为\boldsymbol{I}=[\boldsymbol{e_1},\cdots,\boldsymbol{e_n}]=\begin{bmatrix}\boldsymbol{e_1}^T\\\boldsymbol{e_2}^T\\\vdots\\\boldsymbol{e_n}^T\end{bmatrix}

1. 初等行变换

初等行变换包含三种运算:

  • 调换任意两行
  • 某一行乘以一个非零数
  • 某一行乘以一个非零数加到另一行上

1.1 调换任意两行

\boldsymbol{I}_{i\leftrightarrow j}表示将单位阵的第i,j两行互换,即
\boldsymbol{I}_{i\leftrightarrow j}=[\boldsymbol{e_1}^T,\cdots,\boldsymbol{e_j}^T,\cdots,\boldsymbol{e_i}^T,\cdots,\boldsymbol{e_n}^T]^T

命题:\boldsymbol{I}_{i\leftrightarrow j}\boldsymbol{A}的结果,等价于将\boldsymbol{A}的第i,j两行互换。

\begin{split} \boldsymbol{I}_{i\leftrightarrow j}\boldsymbol{A} &=\begin{bmatrix}\boldsymbol{e_1}^T\\\vdots\\\boldsymbol{e_j}^T\\\vdots\\\boldsymbol{e_i}^T\\\vdots\\\boldsymbol{e_n}^T\end{bmatrix}[\boldsymbol{a_1},\cdots,\boldsymbol{a_i},\cdots,\boldsymbol{a_j},\cdots,\boldsymbol{a_m}]\\ &=\begin{bmatrix} \boldsymbol{e_1}^T\boldsymbol{a_1}&\cdots&\boldsymbol{e_1}^T\boldsymbol{a_i}&\cdots&\boldsymbol{e_1}^T\boldsymbol{a_j}&\cdots&\boldsymbol{e_1}^T\boldsymbol{a_m}\\ \vdots&&\vdots&&\vdots&&\vdots\\ \boldsymbol{e_j}^T\boldsymbol{a_1}&\cdots&\boldsymbol{e_j}^T\boldsymbol{a_i}&\cdots&\boldsymbol{e_j}^T\boldsymbol{a_j}&\cdots&\boldsymbol{e_j}^T\boldsymbol{a_m}\\ \vdots&&\vdots&&\vdots&&\vdots\\ \boldsymbol{e_i}^T\boldsymbol{a_1}&\cdots&\boldsymbol{e_i}^T\boldsymbol{a_i}&\cdots&\boldsymbol{e_i}^T\boldsymbol{a_j}&\cdots&\boldsymbol{e_i}^T\boldsymbol{a_m}\\ \vdots&&\vdots&&\vdots&&\vdots\\ \boldsymbol{e_n}^T\boldsymbol{a_1}&\cdots&\boldsymbol{e_n}^T\boldsymbol{a_i}&\cdots&\boldsymbol{e_n}^T\boldsymbol{a_j}&\cdots&\boldsymbol{e_n}^T\boldsymbol{a_m} \end{bmatrix} \end{split}
因为\boldsymbol{e_p}^T\boldsymbol{a_q}=a_{pq},于是上面的矩阵是
\begin{bmatrix} a_{11}&\cdots&a_{1i}&\cdots&a_{ij}&\cdots&a_{1m}\\ \vdots&&\vdots&&\vdots&&\vdots\\ a_{j1}&\cdots&a_{ji}&\cdots&a_{jj}&\cdots&a_{jm}\\ \vdots&&\vdots&&\vdots&&\vdots\\ a_{i1}&\cdots&a_{ii}&\cdots&a_{ij}&\cdots&a_{im}\\ \vdots&&\vdots&&\vdots&&\vdots\\ a_{n1}&\cdots&a_{ni}&\cdots&a_{nj}&\cdots&a_{nm} \end{bmatrix}=\begin{bmatrix}\boldsymbol{b_1}\\\vdots\\\boldsymbol{b_j}\\\vdots\\\boldsymbol{b_i}\\\vdots\\\boldsymbol{b_n}\end{bmatrix}=\boldsymbol{A}_{i\leftrightarrow j}

1.2 某一行乘以一个非零数

\boldsymbol{I}_{ki}表示将单位阵的第i行乘以一个非零数k,即
\boldsymbol{I}_{ki}=[\boldsymbol{e_1}^T,\cdots,k\boldsymbol{e_i}^T,\cdots,\boldsymbol{e_n}^T]^T

命题:\boldsymbol{I}_{ki}\boldsymbol{A},等价于将\boldsymbol{A}的第i行乘以k

\begin{split} \boldsymbol{I}_{ki}\boldsymbol{A} &=\begin{bmatrix}\boldsymbol{e_1}^T\\\vdots\\k\boldsymbol{e_i}^T\\\vdots\\\boldsymbol{e_n}^T\end{bmatrix}[\boldsymbol{a_1},\boldsymbol{a_2},\cdots,\boldsymbol{a_m}]\\ &=\left[k^{\mathbf{1}\{ r=i \}}\boldsymbol{e}_r^T\boldsymbol{a}_c\right]_{r,c}\\ &=\left[k^{\mathbf{1}\{ r=i \}}a_{rc}\right]_{r,c} \end{split}

于是,结果的矩阵可以发现,若k^{\mathbf{1}\{ r=i \}}\equiv1,则结果矩阵是[a_{rc}]_{r,c}=\boldsymbol{A},而k出现,当且仅当r=i,即第i行,于是命题成立。

1.3 某一行乘以一个非零数加到另一行上

\boldsymbol{I}_{ki\rightarrow j}表示将单位阵的第i行乘以一个非零数k加到第j行,即
\boldsymbol{I}_{ki}=[\boldsymbol{e_1}^T,\cdots,\boldsymbol{e_i}^T,\cdots,k\boldsymbol{e_i}^T+\boldsymbol{e_j}^T,\cdots,\boldsymbol{e_n}^T]^T

命题:\boldsymbol{I}_{ki\rightarrow j}\boldsymbol{A},等价于\boldsymbol{A}的第i行乘以一个非零数k加到第j行。

与上面的证明方法类似,但是结果的第j行为(\boldsymbol{I}_{ki\rightarrow j}\boldsymbol{A})_{j,:}=[(k\boldsymbol{e}_i^T+\boldsymbol{e}_j^T)\boldsymbol{a}_1,(k\boldsymbol{e}_i^T+\boldsymbol{e}_j^T)\boldsymbol{a}_2,\cdots,(k\boldsymbol{e}_i^T+\boldsymbol{e}_j^T)\boldsymbol{a}_m]

其中对c=1,2,\cdots,m,有(k\boldsymbol{e}_i^T+\boldsymbol{e}_j^T)\boldsymbol{a}_c=k\boldsymbol{e}_i^T\boldsymbol{a}_c+\boldsymbol{e}_j^T\boldsymbol{a}_c=ka_{ic}+a_{jc}
从而(\boldsymbol{I}_{ki\rightarrow j}\boldsymbol{A})_{j,:}=[ka_{i1}+a_{j1},ka_{i2}+a_{j2},\cdots,ka_{im}+a_{jm}]=k\boldsymbol{b}_i+\boldsymbol{b}_j

即结果的第j行是\boldsymbol{A}的第i行乘以一个非零数k加到第j行,其余行与\boldsymbol{A}相同。

2. 初等列变换

初等列变换包含三种运算:

  • 调换任意两列
  • 某一列乘以一个非零数
  • 某一列乘以一个非零数加到另一列上

我们先来证明下面三个命题:

  1. \boldsymbol{I}_{ki}的转置,就是将\boldsymbol{I}的第i列乘以k。这是显然的,因为\boldsymbol{I}_{ki}是对称阵,故而它的转置仍然保持不变,而\boldsymbol{I}_{ki}中,k位于第i行,也位于第j列,从而命题成立。
  2. \boldsymbol{I}_{i\leftrightarrow j}的转置,就是将\boldsymbol{I}的第i列和第j列交换(假设i<j)。因为\boldsymbol{I}_{i\leftrightarrow j}=\begin{bmatrix}\boldsymbol{e}_1^T\\\vdots\\\boldsymbol{e}_j^T\\\vdots\\\boldsymbol{e}_i^T\\\vdots\\\boldsymbol{e}_n^T\end{bmatrix}于是\boldsymbol{I}_{i\leftrightarrow j}^T=[\boldsymbol{e}_1,\cdots,\boldsymbol{e}_j,\cdots,\boldsymbol{e}_i,\cdots,\boldsymbol{e}_n]显然转置操作没有改变各个列的相对位置,\boldsymbol{I}的第i列和第j列交换了。
  3. \boldsymbol{I}_{ki\rightarrow j}的转置,就是将\boldsymbol{I}的第i列乘以k再加到第j列上去。因为\boldsymbol{I}_{ki\rightarrow j}=\begin{bmatrix}\boldsymbol{e}_1^T\\\vdots\\k\boldsymbol{e}_i^T+\boldsymbol{e}_j^T\\\vdots\\\boldsymbol{e}_n^T\end{bmatrix}于是\boldsymbol{I}_{ki\rightarrow j}^T=[\boldsymbol{e}_1,\cdots,k\boldsymbol{e}_i+\boldsymbol{e}_j,\cdots,\boldsymbol{e}_n]

综上,我们仍记\boldsymbol{I}_{ki}表示\boldsymbol{I}的第i列乘以非零数k的结果,它等于\boldsymbol{I}_{ki}^T;记\boldsymbol{I}_{ki\overset{c}{\rightarrow} j}表示\boldsymbol{I}的第i列乘以非零数k加到第j列的结果,它同样等于\boldsymbol{I}_{ki\rightarrow j}^T;记\boldsymbol{I}_{i\overset{c}{\leftrightarrow} j}表示\boldsymbol{I}的第i列和第j列互相交换的结果,它等于\boldsymbol{I}_{i\leftrightarrow j}^T

2.1 调换任意两列

命题:\boldsymbol{A}\boldsymbol{I}_{i\overset{c}{\leftrightarrow} j}的结果,等价于将\boldsymbol{A}的第i,j两列互换。

因为
\begin{split} \boldsymbol{A}\boldsymbol{I}_{i\overset{c}{\leftrightarrow} j} &=\left(\boldsymbol{I}_{i\overset{c}{\leftrightarrow} j}^T\boldsymbol{A}^T\right)^T\\ &=\left(\boldsymbol{I}_{i\leftrightarrow j}\boldsymbol{A}^T\right)^T \end{split}

因为对\boldsymbol{A}的转置的第i,j行互换,这就等于把\boldsymbol{A}的第i,j列互换,所以命题成立。

2.2 某一列乘以一个非零数

命题:\boldsymbol{A}\boldsymbol{I}_{ki}的结果,等价于将\boldsymbol{A}的第i列乘以k

因为
\begin{split} \boldsymbol{A}\boldsymbol{I}_{ki} &=\left(\boldsymbol{I}_{ki}^T\boldsymbol{A}^T\right)^T\\ &=\left(\boldsymbol{I}_{ki}\boldsymbol{A}^T\right)^T \end{split}

因为对\boldsymbol{A}的转置的第i行乘以k,这就等于给\boldsymbol{A}的第i列乘以k,所以命题成立。

2.3 某一列乘以一个非零数加到另一列上

命题:\boldsymbol{A}\boldsymbol{I}_{ki\overset{c}{\leftrightarrow} j}的结果,等价于将\boldsymbol{A}的第i列乘以k再加到第j列上。

因为
\begin{split} \boldsymbol{A}\boldsymbol{I}_{ki\overset{c}{\rightarrow} j} &=\left(\boldsymbol{I}_{ki\overset{c}{\rightarrow} j}^T\boldsymbol{A}^T\right)^T\\ &=\left( \boldsymbol{I}_{ ki \rightarrow j}\boldsymbol{A}^T\right)^T \end{split}

因为把\boldsymbol{A}的转置的第i行乘以k再加到第j行,就等于把\boldsymbol{A}的转置的第i列乘以k再加到第j列上。

3. 初等变换保秩

命题:对任意矩阵进行初等行/列变换,矩阵的秩不变。

设任意矩阵\boldsymbol{A},对其初等行变换对应于左乘\boldsymbol{I}_{ki},\boldsymbol{I}_{ki\rightarrow j},\boldsymbol{I}_{i\leftrightarrow j}中的一个,同样对其初等列变换对应于右乘\boldsymbol{I}_{ki},\boldsymbol{I}_{ki\overset{c}{\rightarrow} j},\boldsymbol{I}_{i\overset{c}{\leftrightarrow} j}中的某一个,于是\boldsymbol{A}经过有限次初等变换得到矩阵\boldsymbol{B},表示为\boldsymbol{B}=(\boldsymbol{E}_{r_1}\cdots\boldsymbol{E}_{r_n})\boldsymbol{A}(\boldsymbol{E}_{c_1}\cdots\boldsymbol{E}_{c_m})其中\boldsymbol{E}_{r_i}\in\{\boldsymbol{I}_{ki},\boldsymbol{I}_{ki\rightarrow j},\boldsymbol{I}_{i\leftrightarrow j}\}, \boldsymbol{E}_{c_i}\in\{ \boldsymbol{I}_{ki},\boldsymbol{I}_{ki\overset{c}{\rightarrow} j},\boldsymbol{I}_{i\overset{c}{\leftrightarrow} j} \}

推荐阅读更多精彩内容