本文的最新版本位于:http://kexue.fm/archives/2208/

亲爱的读者朋友们,科学空间版的理解矩阵已经来到了BoJone认为是最激动人心的部分了,那就是关于行列式的叙述。这部分内容没有在孟岩的文章中被谈及到,是我自己结合了一些书籍和网络资源而得出的一些看法。其中最主要的书籍是《数学桥》,而追本溯源,促进我研究这方面的内容的是matrix67的那篇《教材应该怎么写》。本文包含了相当多的直观理解内容,在我看来,这部分内容也许不是正统的观点,但是至少在某种程度上能够促进我们对线性代数的理解。

大多数线性代数引入行列式的方式都是通过讲解线性方程组的,这种方式能够让学生很快地掌握它的计算,以及给出了一个最实际的应用(就是解方程组啦)。但是这很容易让读者走进一个误区,让他们认为线性代数就是研究解方程组的。这样并不能让读者真正理解到它的本质,而只有当我们对它有了一个直观熟练的感觉,我们才能很好地运用它。

行列式的出现其实是为了判断一个矩阵是否可逆的,它通过某些方式构造出一个“相对简单”的函数来达到这个目的,这个函数就是矩阵的行列式。让我们来反思一下,矩阵可逆意味着什么呢?之前已经提到过,矩阵是从一个点到另外一个点的变换,那么逆矩阵很显然就是为了把它变换回来。我们还说过,“运动是相对的”,点的变换又可以用坐标系的变换来实现。但是,按照我们的直觉,不同的坐标系除了有那些运算上的复杂度不同(比如一般的仿射坐标系计算点积比直角坐标系复杂)之外,不应该有其他的不同了,用物理的语言说,就是一切坐标系都是平权的。那么给出一个坐标系,可以自然地变换到另外一个坐标系,也可以自然地将它变换回来。既然矩阵是这种坐标系的一个描述,那么矩阵不可逆的唯一可能性就是:

这个$n$阶矩阵的$n$个列向量根本就构不成一个$n$维空间的坐标系。

也就是说,它没有资格成为一个坐标系!(用专业术语说,这$n$个向量是线性相关的。)

那么我们就想办法为某个$n$阶矩阵$A$构造一个函数$|A|$,当$|A|$为0时,就意味着这个矩阵没有资格成为一个坐标系,也就是说它不可逆。

先设$A=[\vec{c_1},\vec{c_2},...,\vec{c_n}]$,其中$\vec{v_i}$是各个列向量。我们想想,哪些情况下矩阵A显然没有资格成为一个坐标系?

1、显然,能否构成一个坐标系,与每一个向量$\vec{v_i}$都息息相关,那么$|A|$应该是每一个向量$\vec{v_i}$的函数才能满足要求。

2、简单起见,我们函数最好是线性的,也就是说$A=[\vec{c_1},...,\vec{v_i},...,\vec{c_n}]$,$A'=[\vec{c_1},...,\alpha \vec{v_i},...,\vec{c_n}]$,那么$|A'|=\alpha |A|$

3、构成n维坐标系需要$n$个独立的向量,如果矩阵$A$的$n$个向量中有两个相同的,那么它自然无法构成坐标系,也就是说此时$|A|=0$;

4、为了确定适当的缩放因子,也为了满足我们的直观感受,我们规定$|I|=1$。

让人意外的是,就凭以上三个性质,就可以确定唯一一个函数$|A|$了,那个函数就是我们课本给出的行列式计算公式!当然,推导过程有点复杂,在这里不给出了,有兴趣的朋友可以用二阶和三阶矩阵演算一下,然后类比就行了。

让我们再回想一下课本是怎么介绍行列式的:首先是线性方程组给出行列式的计算公式,然后再证明行列式有各种各样的性质,比如“把其中一行乘上5,行列式的值也乘上5”等等。这与上面的说法(这其实也是标准的线性代数讲述方式)相比,未免有点本末倒置的味道。因为行列式本身就是由那些性质来定义的,我们又何必要用行列式的计算公式来反推那些什么性质呢?除了锻炼计算能力,我真的看不出有什么作用。

上面的内容还有一个非常直观的几何理解方式

三维空间中三个向量能够构成一个仿射坐标系的充要条件是什么?很简单,这三个向量必须不共面!因此,推广到n维空间,很显然有:

$n$个向量可以构成一个坐标系就意味着这些向量不共面!

当然,$n$维空间中的面不是指二维平面,而是$n-1$维的东西,它与$n$维体积相对。

还可以换一种说法

$n$个向量可以构成一个坐标系就意味着这些向量构成的一个$n$维平行立体(联想我们的平行六面体)体积不为0!

注意注意,这里涉及到了体积,为0与否关系到矩阵可逆性,这与行列式同出一辙。这个n维体积是否和行列式有关呢?我们不妨分析一下矩阵$A$所构成的$n$维立体的体积$V$一些性质:

1、很明显,每一个向量$\vec{v_i}$也是每一条边长,那么V应该是每一个向量$\vec{v_i}$的函数;

2、当某个向量变为原来的$\alpha$倍,那么体积也应该变成原来的$|\alpha|$倍,加负号是因为向量是可以反向延伸的,但体积一定是正数;

3、有两个向量相同时,意味着这些向量“共面”,这时体积自然为0;

4、单位的n维立方体体积自然是1.

出人意料,这些性质几乎与行列式一一对应,除了第2点那个$\alpha$要加绝对值之外。那么,这些性质最终迫使这个n维立体的体积为$V=ABS(|A|)$,为了不引起混乱,我用了ABS表示绝对值。

这真的是一个非常棒的事实,行列式有如此明显的几何意义,它可以用来求体积(二阶矩阵的时候就是平行四边形的面积)!这就不难解释我们一开始在解析几何课程上学到的平行六面体体积公式为什么是这样子的了。它完全就可以撇开什么点乘、叉乘而独立得到!还有很多例子,读者在学习到相关的知识时必然会感受到。但另一方面,这也反映了我们教材的糟糕:要是用我们讲述行列式的方式,我们要花多大功夫才能证明行列式就是体积?

浅陋观点,望各位不吝指出错误。

转载到请包括本文地址:https://kexue.fm/archives/1770

更详细的转载事宜请参考:《科学空间FAQ》

如果您还有什么疑惑或建议,欢迎在下方评论区继续讨论。

如果您觉得本文还不错,欢迎分享/打赏本文。打赏并非要从中获得收益,而是希望知道科学空间获得了多少读者的真心关注。当然,如果你无视它,也不会影响你的阅读。再次表示欢迎和感谢!

如果您需要引用本文,请参考:

苏剑林. (Nov. 04, 2012). 《《新理解矩阵3》:行列式的点滴 》[Blog post]. Retrieved from https://kexue.fm/archives/1770

@online{kexuefm-1770,
        title={《新理解矩阵3》:行列式的点滴},
        author={苏剑林},
        year={2012},
        month={Nov},
        url={\url{https://kexue.fm/archives/1770}},
}