跳转至

初等变换

初等矩阵

以下三类方阵称为初等矩阵。

倍乘矩阵

倍乘矩阵是一种特殊的对角矩阵。

Di(k)=diag{1,,1,k,1,,1}

表示一个对角阵,主对角线上第 i 个元素为 k,并且规定 k 不能为 0,其余的元素全部为 1

特别地,当 k1 的时候,Di(1) 就是单位阵 I

对换矩阵

对换矩阵是一种特殊的对称矩阵。

Pij=(Ii101Iji110Inj)

对换矩阵的元素全是 10,主对角线上其余元素均为 1,仅有第 i 个元素和第 j 个元素为 0,而在第 i 行第 j 列、第 j 行第 i 列上的两个元素为 1

对换矩阵要求 ij 不能相等。

倍加矩阵

倍加矩阵是在单位阵 I 的基础上,令第 i 行第 j 列为 k

Tij(k)=(11k11)

倍加矩阵要求 ij 不能相等。如果 k0,则 Tij(0) 退化为单位阵 I

倍加矩阵是一种上三角矩阵或者下三角矩阵。

初等矩阵的行列式

三种初等矩阵具有行列式:

|Di(k)|=k|Pij|=1|Tij(k)|=1

由于方阵乘法的行列式等于行列式的乘法,借助下文初等变换与矩阵乘法的等价性,初等矩阵的这个性质可以用于行列式的计算。

初等变换

不仅限于方阵,对于一般的矩阵 A,可以进行初等行变换和初等列变换,统称为初等变换。

初等行变换与初等列变换一样,都有 3 种:倍乘(multiplication)、对换(switching)、倍加(addition)。这里先介绍初等行变换:

  • i 行乘非零数 kBDi(k)B
  • ij 行互换:BPijB
  • j 行乘 k 加到第 i 行:BTij(k)B

将上述操作的行改为列,即得到初等列变换。

在初等变换中,对换可以通过倍乘和倍加实现。显然,倍加不能通过倍乘和对换实现。借助行列式的知识,以及下文的初等变换与矩阵乘法的等价性,也能说明倍乘不能通过倍加和对换实现。

因此,相较对换而言,倍乘和倍加是更为本质的操作。对换操作是为了在消元法中,保证消元的有序,而引入的辅助操作。

初等变换与矩阵乘法

可以发现,三类初等矩阵都是在单位阵 I 上进行一次相应的变换得到的结果。在后文的线性变换中指出,线性变换与矩阵之间有对应关系,与这里的关系类似。

无论矩阵 A 是否方阵,对矩阵 A 进行初等行变换,等价于对矩阵 A 左乘初等矩阵。对矩阵 A 进行初等列变换,等价于对矩阵 A 右乘初等矩阵。

倍乘操作

左乘一个倍乘矩阵 Di(k),等价于将第 i 行变为 k 倍。右乘一个倍乘矩阵 Di(k),等价于将第 i 列变为 k 倍。

对角阵乘对角阵还是对角阵,对于对角阵的乘法,将主对角线上对应的元素相乘。由于单位阵是特殊的倍乘阵,而倍乘阵要求 k 不为 0,可以看出,只要对角阵主对角线上的元素均非 0,就可以拆分为倍乘阵的乘积。

对于一般的对角阵,无论元素是否为 0,也有相应的结论。左乘对角阵,等价于将对应的行变为原来的若干倍,倍数恰为对角阵主对角线上的相应元素。右乘对角阵,是对相应的列进行同样操作。

由于倍乘矩阵 Di(k) 的行列式为 k,对于方阵的行或列进行倍乘操作之后,方阵对应的行列式变为原来的 k 倍。对角阵的行列式为主对角线元素的乘积。

倍乘矩阵的乘法可以交换,对角阵的乘法也可以交换,在乘法只有对角阵时,顺序可以任意排列。

单位阵对应的倍乘操作为保持矩阵 A 不变,在实际应用中不进行这样的操作。

对换操作

左乘一个对换矩阵 Pij,等价于将第 i 行与第 j 行交换。右乘一个对换矩阵 Pij,等价于将第 i 列与第 j 列交换。

与倍乘阵和对角阵的关系类似,这里引入置换矩阵的概念。置换矩阵是一个方阵,每行每列均恰有一个 1,其余位置均为 0。单位阵 I 也是特殊的置换矩阵。

置换阵和对于单位阵 I 的行进行置换操作一致,也和对于单位阵 I 的列进行置换操作一致。单位阵 I 本身对应于恒等变换。

左乘一个置换矩阵等价于对原矩阵的行进行置换,右乘一个置换矩阵等价于对原矩阵的列进行置换,相应置换的方法和对于单位阵 I 的行或列进行置换操作一致。

置换矩阵与置换完全对应,置换矩阵构成的乘法群与置换群同构。由于有定理,在恒等变换视为零个对换的乘积的情形下,任何置换都可以拆为对换的乘积,因此任何置换矩阵也可以拆分为对换矩阵的乘积。

由于对换矩阵的行列式为 1,对于方阵的行或列进行对换操作之后,方阵对应的行列式变为原来的 1 倍。

对换阵的乘法不可交换,置换阵的乘法也不可交换。

置换矩阵的行列式为 (1)p,其中 p 为置换矩阵对应置换的逆序数,即置换拆分为对换乘积的个数。

倍加操作

左乘倍加矩阵 Tij(k) 等价于把第 j 行的 k 倍加到第 i 行上。右乘倍加矩阵 Tij(k) 等价于把第 i 列的 k 倍加到第 j 列上。

如果难以记忆,可以观察倍加阵 Tij(k) 是对单位阵 I 进行了怎样的操作,两者是对应的,左乘是对行的操作,右乘是对列的操作,符合口诀左行右列。

由于倍加矩阵的行列式为 1,对于方阵进行倍加操作之后,方阵对应的行列式不变。

倍加矩阵的乘法不可交换。

单位阵对应的倍加操作为保持矩阵 A 不变,在实际应用中不进行这样的操作。

上三角矩阵

倍加矩阵是一种上三角矩阵或者下三角矩阵。由于两种矩阵关于主对角线对称,这里讨论上三角矩阵。事实上在这个例子中,只需要进行初等行变换,而不需要列变换。

如果一个上三角矩阵的主对角线均为 1,则可拆分为一连串倍加矩阵的乘积。拆分的顺序为,先对单位矩阵 I 的第一行进行倍加操作,再对单位矩阵 I 的第二行进行倍加操作,以此类推,直到每一行均被操作完毕为止。

由于倍加矩阵的乘法不可交换,上述操作不可调换顺序。

如果一个上三角矩阵的主对角线均非 0,则可拆分为一连串倍加矩阵和倍乘矩阵的乘积。可以在操作单位矩阵 I 的每一行时,先将该行进行倍乘操作,效果为主对角线元素变为指定非零值。

如果一个上三角矩阵的主对角线存在 0,则不可拆分为一连串初等矩阵的乘积。

无论上三角矩阵的主对角线上是否有 0,上三角矩阵的行列式等于主对角线元素乘积,与对角阵一致。

倍加操作将方阵转化为对角阵

只使用倍加操作可以使任意一个方阵变为对角阵,这个例子既需要初等行变换也需要初等列变换。

如果方阵的第一行和第一列存在非零元素,则可以通过倍加办法将左上角元素变为非零,进而借助初等行变换和初等列变换,将第一行和第一列除了左上角元素以外,均变为 0

如果方阵的第一行和第一列已经均为 0,则直接看第二行和第二列即可。

借助这个办法,甚至可以规定对角阵的非零元素均在左上角。

如果方阵的第一行和第一列已经均为 0,则看剩余的行列是否有非零元素,只要有非零元素,则可以通过倍加操作将第一行和第一列中某个元素变为非 0,进而化归为一开始的情况,使得左上角元素非 0

仅当剩余的行列也均没有非零元素时,左上角无法变为非零元素,此时剩余的方阵已经为零矩阵。

标准形矩阵

借助初等变换可以将任意的矩阵,无论形状,化归为标准形矩阵。

标准形矩阵拥有一个单位阵 I 作为子矩阵位于左上角,其余部分均为 0。化归的办法与将方阵转化为对角阵的操作类似,并需要借助倍乘操作使左上角非零元素变为 1

矩阵转化为标准形矩阵后,含有元素 1 的个数恰好为矩阵的秩。

可逆矩阵

A 是一个 n 阶矩阵。如果存在一个 n 阶矩阵 B,使得 AB=BA=I,那么 A 叫做一个可逆矩阵或非奇异矩阵,B 叫做 A 的逆矩阵,并记为 A1

如果矩阵 A 可逆,那么 A 的逆矩阵由 A 唯一确定。

可逆矩阵 A 的逆 A1 也可逆,并且 A1 的逆就是 A

两个可逆矩阵 AB 的乘积 AB 也可逆,并且逆为 B1A1

可逆矩阵 A 的转置 AT 也可逆,并且转置的逆等于逆的转置。

初等矩阵的逆

初等矩阵均可逆,并且逆为同类的初等矩阵:

Di(k)1=Di(1k)Pij1=PijTij(k)1=Tij(k)

显然单位阵 I 可逆,逆矩阵仍为 I

初等变换保持矩阵的可逆性,变换前后矩阵要么同时可逆,要么同时不可逆。

矩阵 A 可逆,当且仅当矩阵 A 可以写成初等矩阵的乘积,即可以通过初等变换变为单位阵 I

等到引入行列式之后可以知道:

矩阵 A 可逆,当且仅当矩阵 A 的秩为 n,当且仅当矩阵 A 的行列式非 0

一种简单的记法为:记 Eij 为第 i 行第 j 列的元素为 1、其余为零的 n×n 矩阵,那么

  • Di(k)=In+(k1)Eii
  • Pij=InEiiEjj+Eij+Eji
  • Tij(k)=In+kEij

这种记法也可以应用于它们的逆矩阵。

应用

线性方程组求解

对于一个线性方程组,未知数前的系数构成系数矩阵,如果在系数矩阵右端补上线性方程组的常数项则构成增广矩阵。

应用初等行变换,可以将线性方程组对应的增广矩阵先转化为行阶梯形矩阵,再转化为行最简形矩阵,进而完成线性方程组的求解。这个方法叫做消元法解线性方程组,后文的 Gauss–Jordan 消元,是按照一定的顺序进行的消元算法。

行列式计算

由于方阵乘积的行列式等于方阵行列式的乘积,初等矩阵的行列式便于计算,以及初等变换等价于初等矩阵的乘法,在行列式计算中也会使用初等变换。

由于按照一定的顺序进行初等变换更加便于程序书写,行列式计算也可以使用后文的 Gauss–Jordan 消元算法。