迈出量子力学的第一步:矩阵的运算
长文预警,可以按需分次看完。
公式显示不完整的可以尝试划动公式。
本文会涉及上一篇文章小学毕业就可以学的线性代数知识:从线性方程组到行列式的内容,建议略作浏览。
上一篇文章我们引入了非常重要的东西——矩阵,但是由于篇幅原因并没有展开讲,所以今天我们来补上它。
Part1矩阵的加法和数量乘法
回忆一下上一篇文章关于矩阵的定义:
首先,我们把 个数排成的 行、 列的一张表
称为一个 矩阵,其中 个数称为该矩阵的元素。
另外,矩阵 的第 行与第 列交叉位置的元素 称为 的 元,记作 。
还有,元素全为0的矩阵称为零矩阵;行数和列数相等的矩阵叫做方阵; 元线性方程组的系数组成的矩阵叫做系数矩阵,加上等号右侧的一列之后便是增广矩阵。
最后,我们把行数,列数都相等,且对应位置的元素相等的矩阵看作是相同的。
矩阵的加法
这个问题看起来无法操作,所以我们不妨考虑一下我们比较熟悉的矩阵——增广矩阵。如果两个增广矩阵相加,其实我们就是在把两个线性方程组相加,所以显然应该是对应系数相加。
所以我们引出了矩阵的加法的定义
对于数域 上的两个 矩阵 和 ,令矩阵 也是 矩阵,且 ,其中 ,则
矩阵的数量乘法
所谓数量乘法,就是一个数和矩阵相乘,也就是一个数和一个线性方程组乘起来。所以我们得到定义
对于数域 上的 矩阵 和数 ,令 也是 矩阵,且 ,其中 ,则
Part2 维向量空间
看完了矩阵的加法和数量乘法,你是不是有一种熟悉的感觉。没错,这和我们高中学过的向量一模一样。而且数学家给他们的符号又是如此相似(都是几个数加括号),好像单行的向量就是矩阵的一部分一样。所以我们不难想到,研究向量一定会对矩阵的研究有帮助。那么我们就来看看这个我们熟悉的向量。
维向量空间
高中我们学过的向量是几何空间的元素,每个向量有两个或三个分量。为了描述矩阵,我们就不能只局限于这样的向量,我们仿照几何空间上的向量的概念,提出 维向量的概念。
为了更好的和矩阵适配,我们还区分行向量和列向量。顾名思义,类似
这种排成一行的叫行向量,类似
的叫列向量。其中 是数域 上的元素(本文所有数都是数域 的元素,用小写英文字母表示,下文不再赘述)。本篇文章中的性质不涉及行向量与列向量之间的区别,所以我们可以只研究列向量(用大写字母,表示)。
仿照几何空间,我们把所有 维列向量组成的集合叫作 维向量空间,如果向量的分量都来自
数域 ,我们就把这个集合记作 。在 中,加法和数量乘法与高中所学的一致。
线性相关和线性无关的向量组
我们在高中学习过几何空间中向量的合成与分解,那么在运算完全相同的 维向量空间,理论上也可以进行向量的合成与分解。
为了方便交流,我们称 由 线性表出。
到了这里,我们必然会想到,对于一组向量 ,向量 由它们表出的方式是否唯一。
我们假设
即
(黑体0区分于普通的零表示分量全为零的向量,简称零向量)
所谓表出方式唯一就是(1)(2)完全相同,用数学语言,换言之,(3)中的系数全为零。
所以我们引出线性无关的定义
对于 中的向量组 ,如果满足只有当 全等于0时才能使
成立,则称向量组 线性无关
与之相对的概念是线性相关
对于 中的向量组 ,如果有一组不全为零的数 使
成立,则称向量组 线性相关
综上,我们知道了如果可以线性表出,想要表出方式唯一,就要线性无关。
向量组的秩
线性无关的向量组可以唯一的线性表出一个向量,可见线性无关这个概念的重要性。但是我们遇到的向量组很可能是线性相关的,所以我们就需要找到其中线性无关的部分。不过仔细想想,向量组中任一非零向量都可以看作是线性无关的,只是找线性无关的向量就没什么意思了,我们应该找到尽可能多的线性无关的向量,直到再多一个就会线性相关。也就是找到向量组的极大线性无关组。
极大线性无关组就是一个向量组中的一个含有最多线性无关向量的部分组,这个最多的意思是再原向量组再额外挑一个向量加入这个部分组,都会是这个部分组线性相关。
极大线性无关组的寻找方法就是先找一个向量,再一个一个添加向量,时刻保证新向量组线性无关,直到一个向量也填不进去为止。
现在对于一个向量组和它的一个极大线性无关组,如果我们从不属于这个极大线性无关组的向量挑起,就可以生成一个不同的极大线性无关组。看来对于一个向量组,可以有不同的极大线性无关组,那么这些极大线性无关组有什么关系呢?
为了方便接下来的交流,我先引入一个概念
如果一个向量组 的所有元素都可以由另一个向量组 线性表出,就称向量组 可以由向量组 线性表出。如果两个向量组可以互相线性表出,则称两个向量组等价
首先我们可以证明向量组和它的极大线性无关组等价。不妨设向量组 的一个极大线性无关组是 。很显然向量组 的前 个向量都可以由它的极大线性无关组线性表出,我们来看其余的向量。根据极大线性无关组的定义,我们把 中任意一个向量 添入极大线性无关组得到 ,这个向量组肯定是线性相关的,即有一组不全为零的数 ,使得
这个式子里,如果 ,则 不全为零,且(1)式变为
不符合 线性无关。所以 ,那么有
即 中任意一个向量 可以由 线性表出。综上,向量组可以由它的极大线性无关组线性表出,又因为显然有极大线性无关组可以由原向量组线性表出。所以向量组和它的极大线性无关组等价。
第二步,我们证明一个向量组的所有极大线性无关组等价。由于我们已经证明了极大线性无关组和原向量组等价,所以我们只需要证明向量组等价的传递性,即线性表出的传递性,也就是给定条件: 可由 线性表出, 可由 线性表出。求证 可由 线性表出。这很简单,只需要把 线性表出 的式子代入 线性表出 的式子,就能得到 线性表出 的式子。所以向量组的所有极大线性无关组等价。
现在我们只需要知道等价的线性无关向量组有什么关系,就是我们问题的答案。
这里我们首先要证明:若 可 线性表出,且 线性无关,则 。
用反证法,假设 。
然后把 可 线性表出这个条件翻译成数学语言
则有
接下来看如下方程组
首先,
是该线性方程组的一组解。又因为我们假设 ,即方程组的增广矩阵经过初等行变换得到的简化行阶梯形矩阵主元数大于行数。所以方程组有除了的另一组不同的解,即一组不全为0的数
又因为刚才我们得到
把
(不全为0)代入,得
所以 线性相关,与假设矛盾。即若 可 线性表出,且 线性无关,则 。
利用这个结论,我们可以轻松的知道一个向量组的两个极大线性无关组 和 之间的的关系。
前两步我们证明了它们是等价的,即他们可以互相线性表出。所以有 且 ,所以只能是 ,即向量组的所有极大线性无关组个数相等。
既然极大线性无关组的概念如此重要,我们就把一个向量组的极大线性无关组的个数叫做向量组的秩。
Part3矩阵的秩
嗯,向量的性质我们已经研究的差不多了,该回归我们的主线了。
矩阵的行秩和列秩
我们之前说过,向量可以看作矩阵的一部分,接下来让我们看看这么做的好处。
对于一个矩阵
我们把它的 行看作 个向量,叫做行向量,它们构成的向量组叫做行向量组;它的 列看作 个向量,叫做列向量,它们构成的向量组叫做列向量组。
行向量组和列向量组的秩分别叫作行秩和列秩。
阶梯形矩阵的行秩和列秩
这是一个 矩阵,有 个非零行,也就是有 个主元,分别位于第 ,第 ,,第 列。(前三列和后三行是为了严谨加上的零行,用黑体区分,阅读时可忽略。)
把这个矩阵的行向量组记为 ,其中 是非零向量,也是主元所在行的行向量;列向量组记为 ,其中 是非零向量, 是主元所在列的列向量。
首先我们我们来看所有主元所在行的行向量
给出判定线性无关的式子
根据向量的加法和数量乘法,以及向量相等的定义,可得
首先有作为主元的数。那么根据(1)式,有;接下来根据(2)式,有;依此类推,全部为零,所以线性无关。
接下来想证是的极大线性无关组,就是要证明再添进来任何一个向量,都会使新向量组线性相关。
由于我们只剩下零向量没有添进来,所以当我们添进来一个零向量,有
说明新向量组线性相关。所以是的极大线性无关组,阶梯形矩阵的行秩为。
接下来看阶梯形矩阵的主元所在列的列向量
再次构造一个判定线性无关的式子
根据向量的加法和数量乘法,以及向量相等的定义,可得
仿照刚才的过程,不过这次我们从式开始,不难得到全部为零,所以线性无关。
接下来想证是的极大线性无关组,就是要证明再添进来任何一个向量,都会使新向量组线性相关。
首先前列都是零向量,添入后显然会线性相关。
接下来是第列到第列
例如,我们把添入。这时我们有
这正是线性相关的表达式。第列到第列的其它向量同理。
然后我们看第列到列
例如,我们把添入。这时我们有
这正是线性相关的表达式。第列到列的其它向量同理。
依此类推,我们可以证明是的极大线性无关组,也就是阶梯形矩阵的列秩是。
综上,我们得到了阶梯形矩阵的行秩和列秩相等,对于阶梯形矩阵的非零行个数。
矩阵的秩
我们知道了阶梯形矩阵的行秩等于列秩,又知道任何一个矩阵可以通过初等行变换变换变成阶梯形矩阵。那么我们不妨猜测,矩阵的初等行变换不会改变矩阵的行秩和列秩,这样所有矩阵的行秩和列秩就相等了。
首先证明矩阵的初等行变换不改变矩阵的行秩,也就是证明初等行变换前后的行向量组等价。
证明行秩相等需要我们回忆一下之前的知识,任给两个等价的向量组,根据等价的传递性可以知道这两个向量组的极大线性无关组是等价的,所以这两个极大线性无关组所含向量个数相等。换言之,等价的向量组有相等的秩。
我们设矩阵的行向量组为,它经过初等行变换可能会变成以下三种可能。
而证明等价就是要证明互相线性表出,这很简单,读者不妨自行尝试。
证明矩阵的初等行变换不改变矩阵的列秩。这个问题比上一个复杂了不少,你可千万不要以为二者是相同的,如果我们设矩阵的列向量组为,它经过初等行变换可不会变成
要想解决这个问题,我们首先要证明和秩的概念关系密切的相关性的概念,也就是证明矩阵的初等行变换不改变矩阵列向量组的相关性。我们假设矩阵列向量组是,变换后是
先写出判定相关性的式子
根据分量相等可以写出两个方程组,一个以为系数矩阵,一个以初等行变换后的矩阵为系数矩阵,它们两个的增广矩阵也是相差了一个初等行变换(因为两个增广矩阵最后一列都是零),所以两个方程同解,即
所以两个向量组相关性完全一致。
如果我们只取出其中几个向量,比如,由于,所以和相关性相同。
也就是说两个向量组的部分组(向量组的子集)相关性完全一致,进而不难得到两个向量组秩相同。
综上,对一个矩阵进行初等行变换,矩阵的行秩和列秩不会改变。又由于对于一个矩阵进行初等行变换总可以变为阶梯形矩阵,所以矩阵的行秩和列秩与它的阶梯形矩阵一样,都相等且等于非零行个数。我们把这个数叫做矩阵的秩。
Part4矩阵的乘法
刚才我们知道
这种式子可以看作一个方程组,还有增广矩阵可以看作一个线性方程组,这些是简化线性方程组写法的方法。其实还有一种简化线性方程组写法的方法,我们可以把线性方程组
写成
矩阵的乘法的定义
要想(2)式展开后等于(1)式,我们可以定义矩阵的乘法如下
一个矩阵(记为)和矩阵(记为)的乘积为一个矩阵(记为)。其中的元是的第行(有个元素)和的第列(有个元素)对应相乘再相加的结果。
例如,计算如下两个矩阵的乘法
先是是左矩阵第一行和右矩阵第一列对应相乘再相加,即
作为矩阵的第一行和第一列交叉位置的元素。
依次类推,可得积矩阵为
不难看出矩阵的乘法必须满足左矩阵列数与右矩阵行数相等,本文接下来的所有矩阵乘法如果不特殊说明均满足此条件。
另外,上述例子也可以说明矩阵乘法没有交换律,不信你可以自己算一下。
矩阵的分块
矩阵的乘法可以简单概括为左矩阵的第行和右矩阵的第列对应相乘再相加作为结果的元,那如果我把左矩阵的每一行看作一个整体,写成行向量;右矩阵的每一列写成列向量,再相乘,会得到
其中
正是我们结果矩阵的元。所以(3)式是
的一个很好的简化。
那么,我们可以类比这个化简方法,看看能不能把矩阵化成一个个矩阵块,然后对由矩阵块构成的矩阵作乘法。由于加法和数量乘法都能在分块的过程中保留,所以如果矩阵的乘法也能在分块的过程中得以保留,那将会是一个很好的结果,所以让我们来看一下下式是否成立。
式中,每一个大写字母都是一个矩阵。而且除了大矩阵相乘时左矩阵列数与右矩阵行数相等,作为元素的小矩阵相乘时也要满足左矩阵列数与右矩阵行数相等。
先来验证一种简单的情况,就是我们把大矩阵分成几个横着排或竖着排的小矩阵。类似这样
它的一般形式是
(5)式中的每一个元素
正好是(4)式中的矩阵块。所以这种化简是合理的。
现在来看最一般的情形,也就是
一方面,这个式子的左边可以按(3)式化简,变成
不知道你有没有注意到式中的问号,你可以想一下为什么要有这个问号。
我来揭晓答案,因为这个式子中的和虽然都是向量,但是这些向量的分量不再是数,而是矩阵。
所以你应该知道为什么我证明了一下(4)到(5)的成立,因为这正好补充了这个问题。
分块矩阵的应用
分块矩阵的一个重要应用是可以可以简化有关矩阵的证明过程,例如我们可以用它证明一下矩阵的乘法的结合律,即。
我们把三个矩阵分别写成
所以有
所以矩阵的乘法具有结合律。
倘若我们不用分块矩阵,过程会比现在复杂的多。