其实证明并不是很严谨(
我们要证明的是:
对于 n n n 个线性无关的 n n n 维向量 v 1 ⃗ , v 2 ⃗ , ⋯ , v n ⃗ \vec{v_1},\vec{v_2},\cdots,\vec{v_n} v1,v2,⋯,vn,由它们能围成一个 n n n 维平行多面体 G = { ∑ i = 1 n k i v i ⃗ ∣ k i ∈ [ 0 , 1 ] } G=\{\sum_{i=1}^nk_i\vec{v_i}|k_i\in[0,1]\} G={∑i=1nkivi∣ki∈[0,1]}。
记矩阵 A = [ v 1 ⃗ v 2 ⃗ ⋯ v n ⃗ ] A=\begin{bmatrix}\vec{v_1}&\vec{v_2}&\cdots&\vec{v_n}\end{bmatrix} A=[v1v2⋯vn]。那么 G G G 的 “体积” V = ∣ det ( A ) ∣ V=\left|\det (A)\right| V=∣det(A)∣。
解释一下体积的定义,依据于下列两个结论:
-
若 v 1 ⃗ , v 2 ⃗ , ⋯ , v n ⃗ \vec{v_1},\vec{v_2},\cdots,\vec{v_n} v1,v2,⋯,vn 两两垂直,则 V = ∏ i = 1 n ∣ v i ⃗ ∣ V=\prod_{i=1}^n|\vec{v_i}| V=∏i=1n∣vi∣。
-
同底等高的平行多面体体积相等。
接下来是证明:
对 A A A 进行高斯消元,我们中间要进行两种操作:
-
交换两列。
-
一列加等于另一列的 k k k 倍。
这两种操作后 ∣ det ( A ) ∣ |\det(A)| ∣det(A)∣ 都不会改变,现在考虑证明经过这些操作后, A A A 所代表的 G G G 的体积不变。
-
交换两列:这甚至都不会改变 G G G。
-
一列加等于另一列的 k k k 倍:对应地就是让 v i ⃗ \vec{v_i} vi 加等于 k v j ⃗ k\vec{v_j} kvj( i ≠ j i\neq j i=j)。下面该图展现了这个操作的几何意义:
如图, { v k ⃗ } k ≠ i \{\vec{v_k}\}_{k\neq i} {vk}k=i 能围成了 n − 1 n-1 n−1 维的平行多面体,这个平行多面体再沿 v i ⃗ \vec{v_i} vi 平移即可得到初始的 G G G。
而让 v i ⃗ \vec{v_i} vi 加等于 k v j ⃗ k\vec{v_j} kvj 就可以看成让让上面那个 n − 1 n-1 n−1 维的平行多面体在它所在的 n − 1 n-1 n−1 维空间内平移。
那么此时上下两个 n − 1 n-1 n−1 维的平行多面体间的距离(高)不会变,所以 G G G 的体积也不会变。
于是我们证明了,经过高斯消元后,行列式的绝对值和对应的 G G G 的体积都不会变。而此时矩阵变为对角矩阵,所代表的向量都是相互垂直的,于是此时行列式的绝对值等于 G G G 的体积。那么高斯消元前行列式的绝对值也等于 G G G 的体积。