针对2.2节中的结论,我们回顾一个 2 × 2 矩阵是可逆的,当且仅当它的行列式非零。为了将这个有用的结果推广到更大的矩阵,需要对 n × n 矩阵的行列式给出一个定义。我们可以通过观察对一个可逆的 3 × 3 矩阵 A 做行化简时会出现什么结果来发现 3 × 3 矩阵的行列式的定义。
考虑 A = [aᵢj], a₁1 ≠ 0 。 A 的第二行和第三行都乘以 a₁1 ,然后再分别减去第一行适当的倍数,则 A 行等价于下面两个矩阵:
[ c c c a _ 1 1 & a _ 1 2 & a _ 1 3 a _ 1 1 a _ 2 1 & a _ 1 1 a _ 2 2 & a _ 1 1 a _ 2 3 a _ 1 1 a _ 3 1 & a _ 1 1 a _ 3 2 & a _ 1 1 a _ 3 3 ] ∼ [ c c c a _ 1 1 & a _ 1 2 & a _ 1 3 0 & a _ 1 1 a _ 2 2 - a _ 1 2 a _ 2 1 & a _ 1 1 a _ 2 3 - a _ 1 3 a _ 2 1 0 & a _ 1 1 a _ 3 2 - a _ 1 2 a _ 3 1 & a _ 1 1 a _ 3 3 - a _ 1 3 a _ 3 1 ] (1)由于 A 可逆,故(1)式右边矩阵中(2,2)元素和(3,2)元素不同时为0.不妨假设(2,2)元素不等于零(否则,可以做一个行对换变成这种情形).第三行乘以 a₁1a₂2 - a₁2a₂1 ,再对这个新的第三行加上第二行乘以 -(a₁1a₃2 - a₁2a₃1) ,这样就有
A ∼ [ c c c a _ 1 1 & a _ 1 2 & a _ 1 3 0 & a _ 1 1 a _ 2 2 - a _ 1 2 a _ 2 1 & a _ 1 1 a _ 2 3 - a _ 1 3 a _ 2 1 0 & 0 & a _ 1 1 Δ ]其中
Δ = a _ 1 1 a _ 2 2 a _ 3 3 + a _ 1 2 a _ 2 3 a _ 3 1 + a _ 1 3 a _ 2 1 a _ 3 2 - a _ 1 1 a _ 2 3 a _ 3 2 - a _ 1 2 a _ 2 1 a _ 3 3 - a _ 1 3 a _ 2 2 a _ 3 1 (2)由于 A 可逆,故 Δ 一定不等于零。反之亦然,我们将在3.2节中看到这个结论。我们称(2)式中的 Δ 为 3× 3 矩阵 A 的行列式。
回忆 2 × 2 矩阵 A = [aᵢj] 的行列式,即 operatornamedet A = a₁1a₂2 - a₁2a₂1 。对 1 × 1 矩阵,如 A = [a₁1] ,定义 operatornamedet A = a₁1 。为了将行列式的定义推广到更大的矩阵,我们将利用 2 × 2 行列式来重写上面叙述的 3 × 3 行列式 Δ 。因为 Δ 中的项可以写成
r l & (a _ 1 1 a _ 2 2 a _ 3 3 - a _ 1 1 a _ 2 3 a _ 3 2) - (a _ 1 2 a _ 2 1 a _ 3 3 - a _ 1 2 a _ 2 3 a _ 3 1) + (a _ 1 3 a _ 2 1 a _ 3 2 - a _ 1 3 a _ 2 2 a _ 3 1) & Δ = a _ 1 1 · det [ l l a _ 2 2 & a _ 2 3 a _ 3 2 & a _ 3 3 ] - a _ 1 2 · det [ l l a _ 2 1 & a _ 2 3 a _ 3 1 & a _ 3 3 ] + a _ 1 3 · det [ l l a _ 2 1 & a _ 2 2 a _ 3 1 & a _ 3 2 ]为了简单,可写成
Δ = a _ 1 1 · det A _ 1 1 - a _ 1 2 · det A _ 1 2 + a _ 1 3 · det A _ 1 3 (3)其中 A₁1 , A₁2 和 A₁3 由 A 中删去第一行和三列中之一列而得到。对任意方阵 A ,令 Aᵢj 表示通过删去 A 中第 i 行和第 j 列而得到的子矩阵,比如,若
A = [ c c c c 1 & - 2 & 5 & 0 2 & 0 & 4 & - 1 3 & 1 & 0 & 7 0 & 4 & - 2 & 0 ]则 A₃2 通过删去第三行和第二列而得到
[ c c c c 1 & - 2 & 5 & 0 2 & 0 & 4 & - 1 3 & 1 & 0 & 7 0 & 4 & - 2 & 0 ]即
A _ 3 2 = [ c c c 1 & 5 & 0 2 & 4 & - 1 0 & - 2 & 0 ]现在我们可以给出行列式的一个递归定义.当 n = 3 时,像上面的 (3) 式,operatornamedet A 由 2 × 2 子矩阵 A₁j 的行列式来定义.当 n = 4 时,operatornamedet barA 由 3 × 3 子矩阵 A₁j 的行列式来定义.一般情形下,一个 n × n 行列式由 (n - 1) × (n - 1) 子矩阵的行列式来定义.
定义 当 n ≥slant 2 , n × n 矩阵 A = [aᵢj] 的行列式是形如 ± a₁j det A₁j 的 n 个项的和,其中加号和减号交替出现,元素 a₁1, a₁2, …, a₁n 来自 A 的第一行,用符号表示为
r l det A & = a _ 1 1 · det A _ 1 1 - a _ 1 2 · det A _ 1 2 + … + (- 1) ^ 1 + n a _ 1 n · det A _ 1 n & = ∑_ j = 1 ^ n (- 1) ^ 1 + j a _ 1 j det A _ 1 j计算行列式 operatornamedet A ,其中
A = [ c c c 1 & 5 & 0 2 & 4 & - 1 0 & - 2 & 0 ]解
计算 operatornamedet A = a₁1 · operatornamedet A₁1 - a₁2 · operatornamedet A₁2 + a₁3 · operatornamedet A₁3 .
r l det A & = 1 · det [ c c 4 & - 1 - 2 & 0 ] - 5 · det [ c c 2 & - 1 0 & 0 ] + 0 · det [ c c 2 & 4 0 & - 2 ] & = 1 (0 - 2) - 5 (0 - 0) + 0 (- 4 - 0) = - 2方阵的行列式的另一个常用记号是利用一对竖线代替括号.这样,例1 中的运算可以写成
det A = 1 · | c c 4 & - 1 - 2 & 0 | - 5 · | c c 2 & - 1 0 & 0 | + 0 · | c c 2 & 4 0 & - 2 | = … = - 2为了叙述下一个定理,将 det A 的定义用稍微不同的形式写出更方便。给定 A = [aᵢj] ,A 的 (i, j) 余因子 Cᵢj 由下式给出:
r l & C _ i j = (- 1) ^ i + j det A _ i j & det A = a _ 1 1 · C _ 1 1 + a _ 1 2 · C _ 1 2 + … + a _ 1 n · C _ 1 n (4)这个公式称为按 A 的第一行的余因子展开式.为了避免冗长的陈述,我们省略下面基本定理的证明.
n × n 矩阵 A 的行列式可按任意行或列的余因子展开式来计算.按第 i 行展开用(4)
式给出的余因子写法:
det A = a _ i 1 C _ i 1 + a _ i 2 C _ i 2 + … + a _ i n C _ i n按第 j 列的余因子展开式为
det A = a _ 1 j C _ 1 j + a _ 2 j C _ 2 j + … + a _ n j C _ n j(i,j) 余因子中加号或减号取决于 aᵢj 在矩阵中的位置,而与 aᵢj 本身的符号无关.因子 (-1)ⁱ+j 可确定下面符号的棋盘模式:
[ c c c c + & - & + & … - & + & - + & - & + vdots & & & ddots ]利用按第三行的余因子展开式求 operatornamedet A ,其中
A = [ c c c 1 & 5 & 0 2 & 4 & - 1 0 & - 2 & 0 ]解
计算
r l det A & = a _ 3 1 C _ 3 1 + a _ 3 2 C _ 3 2 + a _ 3 3 C _ 3 3 & = (- 1) ^ 3 + 1 a _ 3 1 det A _ 3 1 + (- 1) ^ 3 + 2 a _ 3 2 det A _ 3 2 + (- 1) ^ 3 + 3 a _ 3 3 det A _ 3 3 & = 0 | c c 5 & 0 4 & - 1 | - (- 2) | c c 1 & 0 2 & - 1 | + 0 | c c 1 & 5 2 & 4 | = 0 + 2 (- 1) + 0 = - 2有助于计算包含有许多零的行列式.例如,如果某行多数元素为零,则按此行的余因子展开式就会有许多项为零,这些项中的余因子就不需计算.同理对多数元素为零的某列也是这样.
计算 operatornamedet A ,其中
A = [ c c c c c 3 & - 7 & 8 & 9 & - 6 0 & 2 & - 5 & 7 & 3 0 & 0 & 1 & 5 & 0 0 & 0 & 2 & 4 & - 1 0 & 0 & 0 & - 2 & 0 ]解
按 A 的第一列的余因子展开式中,除第一项外均为零,从而
det A = 3 · [ c c c c 2 & - 5 & 7 & 3 0 & 1 & 5 & 0 0 & 2 & 4 & - 1 0 & 0 & - 2 & 0 ] - 0 · C _ 2 1 + 0 · C _ 3 1 - 0 · C _ 4 1 + 0 · C _ 5 1接下来在余因子展开式中省略零项,再利用第一列零的优势,按第一列展开这个 4 × 4 行列式,有
det A = 3 · 2 · [ c c c 1 & 5 & 0 2 & 4 & - 1 0 & - 2 & 0 ]这个 3 × 3 行列式已在例1 中算出结果为 -2,从而 det A = 3 · 2 · (-2) = -12
例3 中的矩阵接近三角阵,此例中的方法容易用来证明下面的定理.
若 A 为三角阵,则 det A 等于 A 的主对角线上元素的乘积.
当某行或某列全为零时,例3中找零的策略效果特别好。在这种情形下,按这一行或列的余因子展开式是一些零的和,从而此行列式为零。但不幸的是,大多数的余因子展开式并不是这样快能求值的。
数值计算的注解 按现在的标准来说,一个 25 × 25 矩阵还是小的。但是用余因子展开式来计算一个 25 × 25 行列式是不可行的。一般对 n × n 行列式而言,余因子展开式需要计算超过 n! 个乘法运算, 25! 近似于 1.5 × 10²5 。
若一个超级计算机每秒钟能够完成 1 万亿次乘法运算,则用这种方法计算一个 25 × 25 行列式将需运行 50 万年。幸运的是,稍候我们就会发现快速计算的方法。
在习题 19~38 中,多数是 2 × 2 情形的矩阵,揭示了行列式的一些重要性质。习题 33~36 的结果将用来在下一节导出 n × n 矩阵的与之相似的性质。
计算
| r r r r 5 & - 7 & 2 & 2 0 & 3 & 0 & - 4 - 5 & - 8 & 0 & 3 0 & 5 & 0 & - 6 |利用第一行的余因子展开式计算习题 1~8 中的行列式.按第二列的余因子展开式再次计算习题 1~4 中的行列式.
利用余因子展开式计算习题 9~14 中的行列
式,在每一步,选择使得计算量最少的行和列.
一个 3 × 3 行列式的展开式可由下列方法记忆: 在矩阵的右边分别再写出矩阵的前两列,通过先算出六个对角线上数字的乘积,然后箭头向下的三个对角线上数字的乘积相加再减去箭头向上的三个对角线上数字的乘积就算出了这个行列式.用此法计算习题15~18中的行列式.

注意:这种方法不能推广到 4 × 4 或更大的矩阵.
在习题 19~24 中,考察矩阵的行列式在初等行变换下的变化.对每一个情形,说出是何种行变换,再说出此变换对这个行列式有何影响.
计算习题 25~30 给出的初等矩阵的行列式(见 2.2 节).
利用习题 25~28 回答习题 31 和习题 32 中的问题,给出答案的理由.
-
初等矩阵经过行替代(即行倍加),其行列式是什么?
-
对角线上某元素乘 k 的初等矩阵的行列式是什么?
在习题 33~36 中,证明 det EA = (det E)(det A) ,其中 E 为给出的初等矩阵, A = a & b c & d .
-
1 & k 0 & 1
-
A = 3 & 1 4 & 2,写出 5A . operatornamedet 5A = 5 operatornamedet A 吗?
-
A = a & b c & d , k 为一个数,找出 operatornamedet kA 与 k 和 operatornamedet A 相联系的公式.
在习题 39 和习题 40 中,A 为 n × n 矩阵,标出每个命题的真假,验证每个回答.
- a.一个 n × n 行列式由 (n - 1) × (n - 1) 子矩阵的行列式所定义.
b.矩阵 A 的 (i,j) 余因子是 A 中划掉第 i 行和第 j 列所得到的矩阵 Aᵢj .
- a. det A 按某列的余因子展开式等于其按某行的余因子展开式.
b.三角形矩阵的行列式等于主对角线上元素之和.
-
若 u=3 0,v=1 2 ,计算由 u,v,u+v 和 0 构成的平行四边形的面积,再计算 [u,v] 的行列式.二者相比较,结果如何? 将 ±bv 的第一个数字换成任意数 x,重复考虑上面的问题,画一个图并解释你的发现.
-
令 ±bu = a b , ±bv = c 0,其中 a, b, c 是正数(为了简单起见),计算由 ±bu, ±bv, ±bu + ±bv 和 0 构成的平行四边形的面积,再计算 [±bu, ±bv] 和 [±bv, ±bu] 的行列式。画一个图并解释你的发现。
-
[M]构造一个元素为从-9到9的整数的随机 4 × 4 矩阵。 det A⁻1 与 det A 关系如何?用随机的 n × n 整数矩阵来检验 (n = 4,5,6) ,并做出猜想。
注:万一遇到 operatornamedet A = 0 的情形,先化简矩阵 A 成阶梯形的情形,再讨论你的发现.
-
[M] det AB = (det A)(det B) 对吗?为看到结果是否正确,随意给出两个 5 × 5 矩阵 A, B,计算 det AB - (det A det B) 。对另外 3 对不同的 n × n 矩阵,重复上述计算,报告你的结论。
-
[M] operatornamedet(A + B) = operatornamedet A + operatornamedet B 对吗?像44题一样用4对随机矩阵来检验,并给出一个猜想.
-
[M]随意构造一个元素均为从-9到9的整数的 4 × 4 矩阵,比较 det A 与 det A^(T) , det(-A) , det(2A) 和 det(10A) 。对另外两个随机的 4 × 4 整数矩阵重复以上过程,给出这些行列式之间关系的一个猜想。(参考2.1节习题36。)用几个随机的 5 × 5 和 6 × 6 整数矩阵来检验你的猜想,若有必要,修正你的猜想,报告你的结果。
充分利用 0. 开始先按第 3 列的余因子展开式得到 3 × 3 矩阵,对此再按第一列展开:
| r r r r 5 & - 7 & 2 & 2 0 & 3 & 0 & - 4 - 5 & - 8 & 0 & 3 0 & 5 & 0 & - 6 | = (- 1) ^ 1 + 3 · 2 | r r r 0 & 3 & - 4 - 5 & - 8 & 3 0 & 5 & - 6 | = 2 · (- 1) ^ 2 + 1 (- 5) | l l 3 & - 4 5 & - 6 | = 2 0计算中倒数第2步中的 (-1)² + 1 是由 3× 3 行列式中-5的(2,1)位置决定的.