从反函数的观点看逆矩阵

教育   2025-01-25 19:40   河北  



星标,才能不错过每日推送!方法见文末插图



要想让线性代数生动起来,除了介绍一些精彩应用的例子,一个可行的办法是强调几何的语言。所谓几何语言,简单讲,就是用线性变换代替矩阵,用抽象向量代替列向量。代数语言具体清晰,而几何语言直观明快。通常的教科书往往过分强调代数语言,导致思路曲折,概念引入缺乏动机,掩盖了线性代数的本质。


本文从“单射”和“满射”入手,引出反函数概念,采用更直观的方式描述逆矩阵。这种观点可能比通常的“𝐴−1𝐴 = 𝐴𝐴−1 = 𝐼”式定义更具几何特色,更能直接、深刻地触及逆矩阵的数学内涵。


撰文 朱慧坚(玉林师范学院数学与统计学院副教授)、丁玖(美国南密西西比大学数学系教授)

我们在之前的文章《矩阵乘法为什么是这样定义的?》中,运用包罗万象的抽象函数概念,论证了矩阵乘法定义中积矩阵元素表达式的合理性和必要性。与矩阵乘积运算直接相关的一个关键术语是“逆矩阵”,同样,我们可以借用反函数的思想来帮助理解这个处处有用的数学对象。

单射和满射


中学教科书里,有一章专讲“反函数”。物理学有个说法,每种基本粒子都有对应的反粒子。可惜,数学不是物理,并非每个函数都有反函数,具有反函数的函数必须满足如下条件:它将定义域一对一地映射到值域上,符合这个要求的函数也被称为单射(injection)。更数学化地说,一对一的函数𝑓: 𝑋 → 𝑌意指,对于定义域𝑋中的任意两个元素𝑥和𝑦,若𝑓(𝑥) = 𝑓(𝑦),则必定有𝑥 = 𝑦;或言之,一对一的函数将定义域中的不同元素映射成值域中的不同元素。

抽象函数𝑓: 𝑋 → 𝑌定义中的两个集合𝑋和𝑌,第二个集合𝑌可以换成任何一个包含它的集合,在集合论的眼里𝑓没有发生变化,比如一个将定义域𝑋 = {1, 2, … , 365}映射到有理数集𝑌 = 𝑄当中的函数,也可以被视为将同一个定义域映射到实数集𝑌 = 𝑅里;虽然它们各自的𝑌并不相同,但本质上是一样的函数。事实上,任何函数𝑓: 𝑋 → 𝑌中的“目标集合”𝑌都可以换成𝑓的值域𝑅(𝑓),即所有函数值组成的集合。

这样看来,如果𝑓: 𝑋 → 𝑌是一对一的,那么𝑓: 𝑋 → 𝑅(𝑓)不仅是一对一的,而且是映上的,映上的函数也称为满射(surjection)。同时是单射和满射的函数称为双射(bijection),即对于𝑅(𝑓)中的任意一个元素𝑦,有且仅有𝑋中的一个元素𝑥使得𝑓(𝑥) = 𝑦。我们称双射𝑓为一可逆函数。如果𝑓: 𝑋 → 𝑌将𝑋映射到𝑌之上,给定函数的“映上”条件保证了上述可逆函数定义中的“有”发生,而“一对一”的假设确保了“仅有”成立。本文为了讨论矩阵求逆问题,我们碰到可逆函数𝑓: 𝑋 → 𝑌时总假设它是一个满射,这样,下一段引进的𝑓的反函数将定义在𝑌上。

可逆函数𝑓: 𝑋 → 𝑌意味着𝑋中的所有元素与𝑌中的所有元素,通过𝑓形成了一一对应关系。这种相互对应关系构成了定义𝑓的“反函数”概念之基础。可逆函数𝑓: 𝑋 → 𝑌的反函数是这样定义的:对于𝑌中的任一元素𝑦,被𝑓映射到𝑦的属于𝑋的那个唯一存在的元素𝑥,就是这个反函数在𝑦的值。习惯上我们将𝑓: 𝑋 → 𝑌的反函数记成𝑓−1: 𝑌 → 𝑋,此刻,𝑓−1的定义域是𝑓的值域,而𝑓−1的值域是𝑓的定义域。以上的讨论告诉我们:𝑓−1(𝑦) = 𝑥当且仅当𝑓(𝑥) = 𝑦,其中𝑥 ∈ 𝑋及𝑦 ∈ 𝑌。如此的等价关系也导出下列关于原函数和反函数基本关系的两个恒等式:


算子和可逆矩阵


有了高中生熟知的反函数概念作铺垫,我们可用同样的思想引进大学线性代数中逆矩阵的概念。设𝑛为任一正整数,记𝑅𝑛为𝑛维欧几里得空间,它由所有𝑛维向量𝑥 = (𝑥1, … , 𝑥𝑛)组成,其中每一个分量𝑥𝑖为任意实数。为了符合矩阵和向量相乘的规则,我们也常把向量𝑥理解成或写成列向量的形式。在𝑅𝑛中人们定义了向量的加法及实数乘以向量的代数运算,使得它成为一个标准的𝑛维线性空间。一个有𝑛行𝑛列的实数矩阵𝐴可以被视为将定义域𝑅𝑛映射到自身内的一个函数𝑇: 𝑅𝑛 → 𝑅𝑛,通常称为算子,有时也叫变换或映射,该算子在𝑥 = (𝑥1, … , 𝑥𝑛)的值等于𝑦 = 𝐴𝑥(这时,𝑥是列向量,否则不能用𝐴左乘它),即𝑦的第𝑖个分量𝑦𝑖由代数表达式

𝑦𝑖 = 𝑎𝑖1𝑥1 + 𝑎𝑖2𝑥2 + ⋯ + 𝑎𝑖𝑛𝑥𝑛

给出,其中𝑖 = 1, 2, … , 𝑛。有时我们不加区别地将矩阵称为算子。易证𝑇是线性算子,即𝑇(𝜉𝑥 + 𝜂𝑦) = 𝜉𝑇𝑥 + 𝜂𝑇𝑦,其中𝑥和𝑦为𝑅𝑛中的任意两个向量,𝜉和𝜂为任意两个实数。假如由此定义的算子𝑇是一对一的,并且值域是𝑅𝑛,则它作为函数存在反函数𝑇−1: 𝑅𝑛 → 𝑅𝑛,称为𝑇的逆算子,此时𝑇是可逆的,而对应的矩阵𝐴也被说是可逆的。反之,任一线性算子𝑇: 𝑅𝑛 → 𝑅𝑛唯一确定一个𝑛阶方阵𝐴,使得𝑇𝑥 = 𝐴𝑥对𝑅𝑛中所有𝑥都成立,事实上,

𝐴 = [𝑇𝑒1, 𝑇𝑒2, … , 𝑇𝑒𝑛],

其中对𝑗 = 1, 2, … , 𝑛,单位坐标向量𝑒𝑗的第𝑗个分量为1,其余的分量为0。显而易见,线性算子𝑇是一对一的当且仅当它的零空间𝑁(𝑇)(定义域中所有被𝑇映到零向量的向量全体)是{0},即𝑇𝑥 = 0隐含𝑥 = 0。如果线性算子𝑇是一对一或映上的,我们也说其对应的矩阵𝐴是一对一或映上的。在教科书中,可逆矩阵也常被称为是非奇异的。我们首先验证:逆算子也是线性算子。

为此目的,任给𝑅𝑛中的两个向量𝑥和𝑦以及任意两个实数𝜉和𝜂。令𝑧和𝑤为𝑅𝑛中的元素,满足𝑇−1𝑥 = 𝑧及𝑇−1𝑦 = 𝑤,则𝑇𝑧 = 𝑥及𝑇𝑤 = 𝑦,故𝑇(𝜉𝑧 + 𝜂𝑤) = 𝜉𝑇𝑧 + 𝜂𝑇𝑤 = 𝜉𝑥 + 𝜂𝑦,由此可得

𝑇−1(𝜉𝑥 + 𝜂𝑦) = 𝜉𝑧 + 𝜂𝑤 = 𝜉𝑇−1𝑥 + 𝜂𝑇−1𝑦,

这证明𝑇−1和𝑇一样是线性算子。

既然𝑇−1: 𝑅𝑛 → 𝑅𝑛是线性算子,那么存在一个𝑛阶方阵,记为𝐴−1,使得对所有𝑥 ∈ 𝑅𝑛都有𝑇−1𝑥 = 𝐴−1𝑥。这个唯一确定的矩阵𝐴−1称为可逆矩阵𝐴的逆矩阵。因为线性算子的复合运算对应于矩阵的乘法运算,恒等式(1)用于逆矩阵的一个直接推论是:

𝐴−1𝐴 = 𝐴𝐴−1 = 𝐼, (2)

其中𝐼是𝑛阶的单位矩阵,其对角元素为1,其余元素为0。单位矩阵和任何矩阵如能合法相乘,即左边矩阵的列数等于右边矩阵的行数,不论它是左乘还是右乘,结果都是那个被乘矩阵,如同数1在算术中的角色。单位矩阵所对应的线性算子是恒等算子,即它把每个向量映到自己。

在绝大多数线性代数教科书中,公式(2)通常用作逆矩阵的定义,即对于给定的𝑛阶方阵𝐴,如果存在𝑛阶方阵𝐵,使得等式𝐵𝐴 = 𝐼和𝐴𝐵 = 𝐼都成立,则称𝐵为𝐴的逆矩阵。按照如上的算子观点,在此定义中,第一个等式𝐵𝐴 = 𝐼意味着𝐴是一对一的线性算子(因为若非如此,则存在两个不同的向量𝑥和𝑦使得𝐴𝑥 = 𝐴𝑦,从而𝑥 = 𝐵𝐴𝑥 = 𝐵𝐴𝑦 = 𝑦,与𝑥 ≠ 𝑦矛盾);第二个等式𝐴𝐵 = 𝐼则隐含𝐴具有映上的性质,即值域是𝑅𝑛(如果𝑅(𝐴) ≠ 𝑅𝑛,则𝑅(𝐴𝐵) ⊆ 𝑅(𝐴) ≠ 𝑅𝑛不可能等于单位矩阵𝐼的值域𝑅𝑛

从前面的定义已经得知,如果一个方阵𝐴所定义的线性算子是一对一的,并且值域等于定义域,那么存在同阶的逆矩阵𝐴−1,且逆矩阵是唯一的。此时,公式(2)包含的两个矩阵乘积等式为真。这样,我们就懂得了矩阵论中的一个事实:方阵𝐴是个一对一和映上的线性算子当且仅当存在方阵𝐵满足等式𝐵𝐴 = 𝐴𝐵 = 𝐼。

更进一步,上述定义中的条件可以弱化:给定方阵𝐴,只要与之同阶的两个方阵𝐵和𝐶满足𝐵𝐴 = 𝐴𝐶 = 𝐼,便有

𝐵 = 𝐵𝐼 = 𝐵𝐴𝐶 = 𝐼𝐶 = 𝐶,

因而𝐴的逆矩阵𝐴−1存在且𝐴−1 = 𝐵 = 𝐶。

用算子的语言很容易理解矩阵求逆运算的几个基本性质,比方说,两个同阶可逆矩阵𝐴和𝐵的乘积𝐴𝐵也是可逆矩阵,且(𝐴𝐵)−1 = 𝐵−1𝐴−1。这是因为双射的复合算子也是双射,而乘积逆矩阵公式来自𝐴𝐵 ∙ 𝐵−1𝐴−1 = 𝐴𝐴−1 = 𝐼和𝐵−1𝐴−1 ∙ 𝐴𝐵 = 𝐵−1𝐵 = 𝐼。

方阵的“单满等价”


到目前为止,事情似乎进行得很顺利很成功,然而,喜欢思考的读者的脑袋瓜里可能会冒出一个疑问:既然𝐴属于方阵,形状是特殊的正方形,它或许会像方方正正的君子风范一样,具有比一般狭长形或瘦高形矩阵更好的数学品质?具体来说:作为“一对一”线性算子的方阵是否已经自动具备了“映上”的性质?或者对偶性地问:作为“映上”线性算子的方阵是否已经自动具备了“一对一”的性质?如果对于它们的回答都是“Yes, sir”,那么逆矩阵定义中的两个等式就可以只取其中之一,因为另一个就成为直接推论了。

答案确实是肯定的,即对方阵而言,算子性质“一对一”隐含“映上”,反之算子性质“映上”推出“一对一”。为了解释好这两个重要结论,我们假设读者已经知晓线性空间的代数运算,懂得有限维线性空间的维数概念,理解任何矩阵的值域和零空间都是线性子空间,并且至少能从几何上领会:给定𝑅𝑛的一个𝑘维子空间𝑉,存在𝑉在𝑅𝑛中的一个𝑛 − 𝑘维补空间𝑉𝑐,满足直和分解𝑅𝑛 = 𝑉 ⊕ 𝑉𝑐,即𝑅𝑛中的所有向量𝑥都可以唯一写成𝑉中的一个向量𝑦和𝑉𝑐中的一个向量𝑧之和。例如,令𝑉为𝑥𝑦 −坐标平面上的主对角线𝑦 = 𝑥,取𝑉𝑐为次对角线𝑦 = −𝑥,则该平面是它们的直和。

在后面的讨论中,我们将用到一个基本事实:

引理 不存在𝑚行𝑛列矩阵将𝑅𝑛的𝑘维线性子空间满射到𝑅𝑚上,其中𝑘 < 𝑚。

在𝑚 = 𝑛的特殊情形,上述引理提供了一个能帮助理解逆矩阵概念的漂亮结果:

推论 若𝑘 < 𝑛,则不存在𝑛阶方阵将𝑅𝑛的𝑘维线性子空间满射到𝑅𝑛上。

在证明引理前,我们先看一个𝑚 = 𝑛 = 2的简单例子。设


将𝑅2内一个维数是1的子空间𝑉满射到𝑅2上。由于𝑉由一非零向量𝑣所张成,它的所有向量都可写成𝑥 = 𝜉𝑣,其中𝜉为一个实数。从

𝐴𝑥 = 𝐴(𝜉𝑣) = 𝜉𝐴𝑣

可知,𝐴将𝑅2的一维子空间𝑉映射成由向量𝐴𝑣所张成的维数至多为1的一个线性子空间,而不可能是𝑅2

如上观察完全适用于一般情形。设给定的𝑚行𝑛列矩阵𝐴将𝑅𝑛内维数为𝑘 (< 𝑚)的一个子空间𝑉满射到𝑅𝑚上。令{𝑣1, 𝑣2, … , 𝑣𝑘}为𝑉的一个基底,即这𝑘个向量𝑣1, 𝑣2, ⋯ , 𝑣𝑘是线 性无关的(意思是:若𝜉1, 𝜉2, … , 𝜉𝑘 不全为零,则𝜉1𝑣1 + 𝜉2𝑣2 + ⋯ + 𝜉𝑘𝑣𝑘 ≠ 0),并且𝑉中的所有向量𝑥都可写成

𝑥 = 𝜉1𝑣1 + 𝜉2𝑣2 + ⋯ + 𝜉𝑘𝑣𝑘

的形式。然后就有

𝐴𝑥 = 𝐴(𝜉1𝑣1 + 𝜉2𝑣2 + ⋯ + 𝜉𝑘𝑣𝑘) = 𝜉1𝐴𝑣1 + 𝜉2𝐴𝑣2 + ⋯ + 𝜉𝑘𝐴𝑣𝑘

故𝐴将𝑅𝑛的𝑘维子空间𝑉映射成𝑅𝑚中由向量𝐴𝑣1, 𝐴𝑣2, … , 𝐴𝑣𝑘所张成的维数至多为𝑘 < 𝑚的一个线性子空间,而不可能是维数等于𝑚的欧几里得空间𝑅𝑚。引理证毕。

假设𝐴是一对一的,则对𝑅(𝐴)中任意向量𝑧,在𝑅𝑛中有且仅有一个向量𝑥,使得𝑧 = 𝐴𝑥,这样就定义了一个线性算子𝑆: 𝑅(𝐴) → 𝑅𝑛,使得𝑆(𝑧) = 𝑥。对𝑅(𝐴)在𝑅𝑛内的任一个补空间𝑅(𝐴)𝑐中的所有向量𝑤(后文将证明这个补空间只是{0},即𝑅(𝐴) = 𝑅𝑛),定义𝑆𝑤 = 0,再通过线性扩展,即对𝑅𝑛中任意向量𝑦 = 𝑧 + 𝑤,其中𝑧 ∈ 𝑅(𝐴)及𝑤 ∈ 𝑅(𝐴)𝑐,令𝑆𝑦 = 𝑆𝑧 + 𝑆𝑤 = 𝑆𝑧,得到线性算子𝑆: 𝑅𝑛 → 𝑅𝑛,它所对应的矩阵𝐵满足𝐵𝐴 = 𝐼,因而𝐵是映上的。假如𝐴不是满射,那么它的值域是𝑛维欧几里得空间𝑅𝑛的一个真子空间,即𝑅(𝐴) ≠ 𝑅𝑛,故其维数至多为𝑛 − 1。如此,等式𝐵𝐴 = 𝐼推出:方阵𝐵将𝑅𝑛的一个维数小于𝑛的子空间满射到𝑅𝑛上。这从上述推论看是不可能的。故𝐴是映上的。

现在假设𝐴是映上的。若𝐴不是一对一的,则零空间𝑁(𝐴)的维数至少为1。令𝑁(𝐴)𝑐𝑁(𝐴)在𝑅𝑛中的一个补空间,则它的维数至多是𝑛 − 1。这样一来,𝐴将𝑅𝑛中维数𝑘 < 𝑛的子空间𝑁(𝐴)𝑐满射到维数等于𝑛的𝑅𝑛上。再由推论,这不可能,故𝐴是一对一的。

结合之前的讨论我们得知,方阵𝐴是单射(满射)当且仅当存在同阶方阵𝐵使得𝐵𝐴 = 𝐼 (𝐴𝐵 = 𝐼)。更进一步,以上的推理论证了只对方阵有效的一个令人喜悦的真理:方阵𝐴如果是一对一的,那么它就是映上的,因此它的逆矩阵存在唯一;方阵𝐴如果是映上的,那么它就是一对一的,因此它的逆矩阵存在唯一。

至此,我们用高中生都学过、但许多大学生都没有真正领会的反函数思想,证明了如下关于逆矩阵的优美定理:

定理 1 设𝐴为一𝑛行𝑛列矩阵,则如下结论成立:

(i)如果存在一个𝑛行𝑛列矩阵𝐵,使得𝐵𝐴 = 𝐼,那么𝐴𝐵 = 𝐼,故𝐴−1存在且等于𝐵。

(ii)如果存在一个𝑛行𝑛列矩阵𝐵,使得𝐴𝐵 = 𝐼,那么𝐵𝐴 = 𝐼,故𝐴−1存在且等于𝐵。


非方阵“最多得其一”


上述用于方阵的定理 1 能推广至非方阵吗?我们先看一个实例,设矩阵𝐴有2行3列。使得𝐴𝐵 = 𝐼的矩阵𝐵必须有3行2列,这时的单位矩阵𝐼为2阶的;满足𝐵𝐴 = 𝐼的矩阵𝐵也必须有3行2列,但此时单位矩阵𝐼为3阶的。我们当前要问的问题是:如果矩阵𝐵满足等式 𝐴𝐵 = 𝐼2,它也同时满足等式𝐵𝐴 = 𝐼3吗?进一步可问更一般的问题:有矩阵𝐵满足等式 𝐵𝐴 = 𝐼3吗?我们再次用反函数的观点来求解这个问题。

因为2行3列的矩阵𝐴定义了相应的线性算子𝑇: 𝑅3 → 𝑅2,矩阵联立等式𝐴𝐵 = 𝐼2和𝐵𝐴 = 𝐼3同时成立意味着𝑇既是一对一的,又是映上的,从而存在唯一的线性算子𝑆: 𝑅2  → 𝑅3,使得复合算子𝑇𝑆和𝑆𝑇分别是𝑅2和𝑅3上的恒等算子。根据反函数的定义,这个𝑆就是𝑇的逆算子。我们证明:逆算子实际上不存在。

如果逆算子𝑆: 𝑅2 → 𝑅3存在,则它必定是个满射,因而其对应的3行2列矩阵𝐵将𝑅2满射到𝑅3上,而这不被上述引理允许,故𝑆不存在。

对于更一般的问题,如果𝐵𝐴 = 𝐼3,则𝐵: 𝑅2 → 𝑅3是映上的,但引理禁止它存在。同样的论据可以证明下列定理:

定理 2 设𝐴为一𝑚行𝑛列矩阵,则如下结论成立:

(i)如果𝑚 < 𝑛,则无𝑛行𝑚列矩阵𝐵使得𝐵𝐴 = 𝐼𝑛

(ii)如果𝑚 > 𝑛,则无𝑛行𝑚列矩阵𝐵使得𝐴𝐵 = 𝐼𝑚

证明思路与对上述2行3列矩阵的分析无异。先证(i)。若𝐵𝐴 = 𝐼𝑛,则𝐵将𝑅𝑚满射到𝑅𝑛上,这与引理相悖。只要将(i)中的𝐴和𝐵互换,𝑚和𝑛互换,结论(i)就变成结论(ii)。

定理 2 的结论在教科书中通常是用“矩阵秩”的性质证明的。矩阵的秩一般用行列式定义:它是矩阵中不等于0的子行列式的最大阶数。秩的性质包括:它不大于矩阵行数和列数之最小值;矩阵积的秩不大于每个因子的秩。在定理 中乘积𝐴𝐵和𝐵𝐴的秩都不大于𝑚和𝑛的最小值,而这个最小值小于𝑚和𝑛的最大值,导致结论(i)和(ii)中的等式无法成立。这里采用算子的语言证明了定理 2,避免了对矩阵秩概念的依赖性。

自然,当𝑚 < 𝑛时,一个𝑚行𝑛列矩阵有可能与一个𝑛行𝑚列矩阵相配合,使得它们乘出一个𝑚阶单位矩阵。类似地,当𝑚 > 𝑛时,一个𝑚行𝑛列矩阵有可能与一个𝑛行𝑚列矩阵相配合,使得它们反次序乘出一个𝑛阶单位矩阵。一个简单例子是一行二列矩阵𝐴 = (1, 1)和二行一列矩阵𝐵 = (1, 0)𝑇

由此说来,对于非正方形矩阵,把它视为不同维数欧几里得空间之间的线性算子,“单射”和“满射”不可兼得,必定要至少失去其中的一个,因而永远没有经典意义下的逆算子。当然,即便对于方阵,也有可能既无缘于“一对一”,也无法做到“映上”,然而,它一旦“单射”或“满射”得其一,就能“赢者通吃”,拥有逆矩阵也水到渠成。

举个例子,矩阵


是个可逆矩阵,因为通过徒手求解齐次联立方程

𝑥1 + 2𝑥2 = 0,  3𝑥1 + 4𝑥2 = 0,

我们得到它的唯一解(𝑥1, 𝑥2) = (0, 0),说明𝐴是一对一的,因而𝐴−1存在。不难验证,


另一方面,如果


则𝐵将向量(1, −1)映到零向量,故𝐵不是一对一的,因而也不是映上的。

一般矩阵尽管没有经典意义下的逆矩阵,数学家们总有办法在更广泛的意义下定义逆矩阵,称为广义逆矩阵,不过这将是另一篇文章的主题。

怎样求逆矩阵?


没有见过逆矩阵计算公式的读者或许纳闷上例中的2阶逆矩阵是如何获得的。这里我们解析出一般2阶可逆矩阵的逆矩阵公式,并据此推广到一般的可逆矩阵。对于2阶方阵


将齐次方程𝐴𝑥 = 0具体写出𝑥两个分量的二元一次方程组

𝑎𝑥1 + 𝑏𝑥2 = 0, 𝑐𝑥1 + 𝑑𝑥2 = 0。

分别用𝑑和𝑏乘以这两个方程,再相减以消去𝑥2,得方程

(𝑎𝑑 − 𝑏𝑐)𝑥1 = 0。

记|𝐴| = 𝑎𝑑 − 𝑏𝑐,称为矩阵𝐴的行列式。如果这数等于0,则由上列方程,𝑥1可取任意值,再从原方程组解出相应的𝑥2。在这种情况下𝐴不是一对一的,因而它没有逆矩阵。

如果𝐴的行列式|𝐴| = 𝑎𝑑 − 𝑏𝑐 ≠ 0,那么上述方程只有零解,即𝑥1 = 0,代入原方程组得𝑥2 = 0。在此情形下,矩阵𝐴是一对一的,因而由定理 的结论(i),它是可逆的。上面的推导过程也证明了:二阶矩阵存在逆矩阵的充分必要条件是它的行列式不等于零。

现在我们依然用反函数的观点来求出上述2阶可逆矩阵的逆矩阵。因为原矩阵𝐴将列向量(1, 0)𝑇和(0, 1)𝑇分别映射到列向量(𝑎, 𝑐)𝑇和(𝑏, 𝑑)𝑇,所以逆矩阵𝐴−1将列向量(𝑎, 𝑐)𝑇和 (𝑏, 𝑑)𝑇分别映射到列向量(1, 0)𝑇和(0, 1)𝑇。令


则上述对应关系可以写成关于未知数𝑥, 𝑦, 𝑧, 𝑤的如下矩阵方程:


这也正是逆矩阵满足的等式𝐴−1𝐴 = 𝐼一例。乘出后,我们得到四个线性方程:

𝑎𝑥 + 𝑐𝑦 = 1, 𝑏𝑥 + 𝑑𝑦 = 0, 𝑎𝑧 + 𝑐𝑤 = 0, 𝑏𝑧 + 𝑑𝑤 = 1,

其唯一解为


这样我们求得2阶可逆矩阵的逆矩阵公式


这个求逆公式可以推广到一般的𝑛阶可逆方阵。先将公式(3)变形为


左边乘积中的第二个因子


称为原矩阵𝐴的伴随矩阵,记为𝐴,但不要理解为常用此记号的𝐴的共轭转置。它的转置矩阵(即第𝑖行第𝑗列元素是原矩阵的第𝑗行第𝑖列元素)的每一个元素可以这样得到:划去矩阵𝐴的对应位置那个元素所在的行和列,剩下一个元素,它同时也被视为该元素所定义的1行1列矩阵行列式的值,再取合适的符号:如果行指标与列指标之和为偶数,则取正号;如果行指标与列指标之和为奇数,则取负号。比如,要算出𝐴的第二行第一列元素,划去𝐴的第一行第二列元素𝑏所在的行和列,剩下元素组成的1阶行列式是𝑐,因为1 + 2为奇数,所以在𝑐前添一负号便得𝐴的第二行第一列元素−𝑐。

拉普拉斯展开


上面2阶方阵的伴随矩阵概念可以直接推广,但需借用一般行列式的概念。𝑛阶方阵𝐴的行列式|𝐴|在通常的教科书中被定义为𝑛! ≡ 𝑛(𝑛 − 1) ⋯ 2 ∙ 1个带符号乘积之和,其中每个乘积的𝑛个因子取自𝐴中既不同行又不同列的元素,再赋予一个恰当的正号或负号:当这𝑛个元素依照行下标从小到大的自然次序1, 2,  … , 𝑛排列时,列下标𝑗1,  𝑗2,  … ,  𝑗𝑛将构成1, 2,  … ,  𝑛的一个置换,即将自然次序1,  2,  … ,  𝑛打乱重排。如果这个置换是偶置换,即满足𝑗𝑟  > 𝑗𝑠及𝑟 < 𝑠的那些数对(𝑟,  𝑠)的个数为偶数,则在这𝑛个元素之积前放上正号;如果这个置换是奇置换(满足𝑗𝑟  > 𝑗𝑠及𝑟 < 𝑠的数对(𝑟,  𝑠)个数为奇数),则在这𝑛个元素之积前放上负号。顺便说一句,偶置换与奇置换的个数相等,皆为𝑛!/2。

这个行列式的定义语言看似美妙,计算过程却很繁琐,费时费力。好在它有其他等价定义,随时可用,其中一个称为行列式的拉普拉斯展开,由法国数学家拉普拉斯(Pierre- Simon Laplace,1749-1827)首次提出。它的好处是只要定义了𝑛 − 1阶方阵的行列式,就可用这一公式计算𝑛阶方阵的行列式。具体做法是,给定𝑛阶方阵𝐴,任取它的一行或一列,比方说第𝑖行,则

|𝐴| = 𝑎𝑖1𝑀𝑖1 + 𝑎𝑖2𝑀𝑖2 + ⋯ + 𝑎𝑖𝑛𝑀𝑖𝑛

其中对𝑗 = 1, 2, … , 𝑛,每个𝑀𝑖𝑗称为元素𝑎𝑖𝑗所对应的𝐴的代数余子式,它按如下方法算出:划去𝑎𝑖𝑗所在的行和列,𝐴中所剩元素按原先的位置组成一个𝑛 − 1阶的方阵,将(−1)𝑖+𝑗乘上它的行列式便是。拉普拉斯展开立刻推出,如果方阵的两行或两列相同,则其行列式为0。

作为例子,我们照上法计算一个3阶方阵的行列式,按𝐴的第二行展开以获得|𝐴|的定义表达式。此时,


故由拉普拉斯展开公式,


正如此行列式的3!项3个元素乘积代数和定义所得到的结果。

“花瓶”公式


现在可以推导出可求逆矩阵的逆矩阵表达式了。设𝐴为一𝑛阶方阵,它的伴随矩阵𝐴被定义为一个同阶方阵,对所有的𝑖, 𝑗 = 1,  2,  … ,  𝑛,其第𝑖行第𝑗列元素为𝐴的第𝑗行第𝑖列元素𝑎𝑗𝑖所对应的代数余子式𝑀𝑗𝑖。上述关于行列式的按行、按列拉普拉斯展开式告诉我们:对所有的𝑖, 𝑗 = 1,  2,  … ,  𝑛,若𝑖 = 𝑗,则

𝑎𝑖1𝑀𝑖1 + 𝑎𝑖2𝑀𝑖2 + ⋯ + 𝑎𝑖𝑛𝑀𝑖𝑛 = |𝐴|;

若𝑖 ≠ 𝑗,则(由两行或两列恒等的矩阵行列式等于0的性质推得)

𝑎𝑖1𝑀𝑗1 + 𝑎𝑖2𝑀𝑗2 + ⋯ + 𝑎𝑖𝑛𝑀𝑗𝑛 = 0。

换句话说,无论方阵𝐴是否可求逆,我们证明了如下等式


这样一来,如果|𝐴| ≠ 0,则


或言之,𝐴−1存在且


不难看出,|𝐴| ≠ 0也是𝐴可逆的必要条件。

我们以3阶方阵为例演示上述逆矩阵公式。这时,


因此,


从上面可知,即便对像𝑛 = 3这样很小的可逆矩阵,利用伴随矩阵计算逆矩阵的工作量是可观的,比如当𝑛是不算很大的100时,所需的乘法个数大于100的阶乘,它远远超过1025,当前最快的计算机也束手无策,跟不上巨量计算的需求。所以,逆矩阵公式(4)只具有理论上的美观性,而缺乏实践上的可行性。

幸亏计算数学家们发展了一套快速计算逆矩阵的算法,其基本思想基于所谓的“高斯消去法”。作为本文的结尾,我们简述用此法求逆的思路。将方阵𝐴和同阶的单位矩阵𝐼放在一排,看成是一个有𝑛行2𝑛列的矩阵,记为[𝐴 | 𝐼]。对该长方形矩阵进行若干初等行变换,只要将左边的𝐴变成单位矩阵𝐼,那么右边的𝐼就自动变成𝐴的逆矩阵𝐴−1。为什么呢?

首先说明,总共有三种初等行变换:(1)交换两行;(2)将一非零数乘上一行;(3)某行乘以一数后加到另一行。这三种“人工操作”都等价于将各自对应的“初等行变换矩阵”乘上被施予变换的原矩阵,而行变换矩阵是对同阶单位矩阵做同样变换的结果。更具体地说,“交换两行”之结果,就是先同法交换单位矩阵的两行,再与原矩阵相乘;“𝜉 ≠ 0乘上一行”等同于𝜉乘上单位矩阵的同一行,再与原矩阵相乘;“𝜉乘上第𝑖行后再加到第𝑗 ≠ 𝑖行”的功效是:对单位矩阵做同样的事,再乘上原矩阵。

需要说明的是,初等行变换不改变可逆矩阵的可逆性,读者可采用本文强调的反函数思想加以证明,方法之一是论证:如果原方阵是一对一的,则每一种行变换后的矩阵也是一对一的。特别地,由于初等行变换矩阵是对可逆的单位矩阵施加行变换的结果,所有行变换矩阵都是可逆的。更一般地,初等行变换保持矩阵的秩不变,但这里我们不再追问“秩”概念的相关推论,留待今后专文谈它。从前面“算子和可逆矩阵”小节中的最后一段可以得出,有限个可逆矩阵的乘积矩阵也是可逆的,所以我们立马可知如下事实:若方阵𝐵由方阵𝐴经过几步初等行变换得到,则存在可逆矩阵𝐶使得𝐵 = 𝐶𝐴。

初等行变换一旦被解释为对应的行变换矩阵乘以被变换矩阵,就容易证明上面行变换求逆步骤的合理性了。假设在经过𝑘次初等行变换后,𝐴转化为单位矩阵𝐼,而后者同时转化为方阵𝐵,那么存在一个可逆矩阵𝐶使得

𝐼 = 𝐶𝐴 以及 𝐵 = 𝐶𝐼。

第一个等式说明𝐶 = 𝐴−1,第二个等式表示𝐵 = 𝐶,从而𝐵 = 𝐴−1

当方阵的尺寸较大时,与用公式(4)计算逆矩阵需要大约𝑛!个乘法运算这个天文数字相比,高斯消去法求逆程序至多只需要大概𝑛4个乘法。前者随着𝑛的增加呈指数级增长,后者则是一种典型的“多项式算法”,即计算量是以𝑛的多项式方式增长的。

我们用一个具体的2阶可逆方阵来示范上面的算法。再次令


假设我们从未见过求逆公式(3),但会玩初等行变换,则先将2阶单位矩阵放在它的右边:


然后我们开始初等行变换,目标是将𝐴变到𝐼。第一步,用−3乘以上面2行4列矩阵的第一行,再加到第二行上,使得左下角的3化成0:


第二步,将第二行第二列的−2变为1,这通过用−1/2乘以该行达到:


最后一步,将第一行第二列的2化成0,即用−2乘以第二行,再加到第一行,结果得到


这就算出了逆矩阵


和之前公式(3)得到的结果一模一样。

几何观点


在数学中,任何代数运算都伴随着逆运算的概念,在抽象函数的范畴里,一对一加上映上这两种性质就引出了反函数的术语,将这个高中生早就学过、具有广泛用途的一般概念,用于方阵所定义的将欧几里得空间映到自身的“有限维线性算子”这一特殊情形,我们就可以用反函数的观点看逆矩阵。这种观点,可能比看似简洁的“𝐵𝐴 = 𝐴𝐵 = 𝐼”式逆矩阵定义更具几何特色,因而更为直观,更易于理解,并且“直捣”逆矩阵概念的数学核心。这个观点所体现的教学思想,在匈牙利裔美国数学家哈尔莫斯(Paul Halmos,1916-2006)的名著《有限维线性空间》Finite-Dimensional Vector Spaces中处处可见,也在他的徒孙阿克斯勒(Sheldon Axler,1949-)已再版多次、脍炙人口的大学生教科书《线性代数应该这样学》Linear Algebra Done Right中继承下来。

阿克斯勒教授走得更远,1995年,他在《美国数学月刊》上发表了一篇阐述性文章《打倒行列式!》(“Down with determinants!”),标题口号也是文章的最后一句,其中的“打倒”一词,会让对它记忆犹新、65岁以上的中国人“大吃一惊”。这篇号召“横扫数学牛鬼蛇神”的战斗檄文,第二年让他将美国数学协会的Lester R. Ford写作奖收入囊中。不过,因为几乎所有线性代数教科书都讲行列式,我们在本文依然用它写下不实用的逆矩阵漂亮公式。我们再次强调,将变换的目光投向逆矩阵的园地,便有几何的阳光照进线性代数的课堂。


在看”,可防失联

奇趣数学苑
传播数学文化与数学教育,高考、自招、竞赛,每天8篇文章,总有1篇值得你拥有!
 最新文章