跳转至

\(n\) 阶行列式的定义

本页面把上一页的观察变成定义:先说明什么是 \(n\) 阶方阵(行列式作用的对象),再写出 \(n\) 阶行列式中每一项的一般形状(不同行不同列元素的乘积),最后数清一共有多少项。

这一页不涉及正负号——符号要靠逆序数来定,是紧接着的下一步。

前置知识
  • \(n\) 阶排列:由 \(1, 2, \dots, n\) 组成的有序数组,共 \(n!\) 个
  • 排列的相等:对应位置相同才算相等
  • 乘法交换律:一般项里的元素可以随意交换次序,这正是本节能"指定行指标为自然排列"的原因
  • 从方程组到行列式:四阶的困难与"不同行不同列"这条本质

元素与方阵

先明确行列式作用在什么对象上。

定义(\(n\) 阶方阵)

由 \(n^2\) 个元素排成的 \(n\) 行 \(n\) 列的正方形数表

\[ \begin{pmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & & \vdots \\ a_{n1} & a_{n2} & \cdots & a_{nn} \end{pmatrix} \]

称为一个 \(n\) 阶方阵,可简记为

\[ A = (a_{ij})_{n \times n} \]

或更简地记作 \(A = (a_{ij})\)。

其中 \(a_{ij}\) 称为方阵的元素,下标 \(i\) 是行指标(表示它在第 \(i\) 行),\(j\) 是列指标(表示它在第 \(j\) 列)。\(a_{ij}\) 也统称为方阵的一般元素(或一般项)。

元素不一定是数

按课堂上的说法:\(a_{ij}\) 可以是数,也可以是多项式,或者是其他关于乘法可交换的元素。

  • "关于乘法可交换"是必需的:后面要把一般项里的元素重新排序(见下文"指定行指标为自然排列"),这一步用的就是 \(a_{ij} a_{kl} = a_{kl} a_{ij}\);
  • 本章讨论的元素都是数,因为本章的动机是解方程组;但定义本身留了余地,以后(例如多项式矩阵、函数矩阵)还会用到。

特别地,一般元素写 \(a_{ij}\) 时,"\(i\) 从 \(1\) 到 \(n\)、\(j\) 从 \(1\) 到 \(n\)"这个范围由上下文给出。写成 \(A = (a_{ij})_{n \times n}\) 就是为了把范围一并说清;上下文已经清楚时,简写 \(A = (a_{ij})\) 也不会引起歧义。

一般项:把"不同行不同列"说成排列

现在来做本节的核心工作:写出 \(n\) 阶行列式中一项的一般形状。

从方阵里取 \(n\) 个元素,要求它们"不在同一行、也不在同一列"。设取出的元素依次写作

\[ a_{i_1 j_1},\ a_{i_2 j_2},\ \dots,\ a_{i_n j_n}, \]

其中第一个下标是行指标、第二个是列指标。把"不同行不同列"翻译成下标的条件:

命题(不同行不同列等价于两个排列)

在 \(n\) 阶方阵中取出 \(n\) 个元素 \(a_{i_1 j_1}, a_{i_2 j_2}, \dots, a_{i_n j_n}\)(要求 \(i_1, \dots, i_n\) 两两不同,\(j_1, \dots, j_n\) 也两两不同)。则

  • \(i_1 i_2 \cdots i_n\) 是 \(1, 2, \dots, n\) 的一个 \(n\) 阶排列;
  • \(j_1 j_2 \cdots j_n\) 也是 \(1, 2, \dots, n\) 的一个 \(n\) 阶排列。

反之,任取两个 \(n\) 阶排列 \(i_1 i_2 \cdots i_n\) 与 \(j_1 j_2 \cdots j_n\),对应的 \(n\) 个元素 \(a_{i_1 j_1}, \dots, a_{i_n j_n}\) 就满足"不同行不同列"。

证明

(\(\Rightarrow\)) 行指标 \(i_1, \dots, i_n\) 两两不同,且每个都取自 \(\{1, 2, \dots, n\}\)。\(n\) 个两两不同、又都落在只有 \(n\) 个元素的集合里,说明它们恰好把 \(1, 2, \dots, n\) 各取了一次。按\(n\) 阶排列的定义,\(i_1 i_2 \cdots i_n\) 正是一个 \(n\) 阶排列。列指标 \(j_1, \dots, j_n\) 同理。

(\(\Leftarrow\)) 若 \(i_1 i_2 \cdots i_n\) 是 \(n\) 阶排列,则行指标两两不同,即这 \(n\) 个元素"不同行";同理列指标两两不同,即"不同列"。

定义(一般项)

设 \(A = (a_{ij})_{n \times n}\) 是 \(n\) 阶方阵。对任意两个 \(n\) 阶排列 \(i_1 i_2 \cdots i_n\) 与 \(j_1 j_2 \cdots j_n\),

\[ a_{i_1 j_1} a_{i_2 j_2} \cdots a_{i_n j_n} \]

称为该方阵的一个不同行不同列元素的乘积,或简称为 \(n\) 阶行列式的一项。

把行指标、列指标都写出来时,项可记作 \(a_{i_1 j_1} a_{i_2 j_2} \cdots a_{i_n j_n}\);只写列指标(行指标取自然排列,见下)时可记作 \(a_{1 j_1} a_{2 j_2} \cdots a_{n j_n}\)。

例题 1(写出三阶方阵的六项)

对 \(3\) 阶方阵 \(A = (a_{ij})_{3 \times 3}\),按"行指标为自然排列"写出全部六项。

解 只需让列指标 \(j_1 j_2 j_3\) 取遍所有 \(3\) 阶排列(共 \(3! = 6\) 个):

列指标排列 \(j_1 j_2 j_3\) 对应的一项
\(1\,2\,3\) \(a_{11} a_{22} a_{33}\)
\(1\,3\,2\) \(a_{11} a_{23} a_{32}\)
\(2\,1\,3\) \(a_{12} a_{21} a_{33}\)
\(2\,3\,1\) \(a_{12} a_{23} a_{31}\)
\(3\,1\,2\) \(a_{13} a_{21} a_{32}\)
\(3\,2\,1\) \(a_{13} a_{22} a_{31}\)

这六项正是三阶行列式展开式里出现的那六项。

指定行指标或列指标为自然排列

写一项要写 \(2n\) 个下标,比较累赘。能不能只写一半?可以——只要借用乘法交换律。

想法

一般项是若干个元素的乘积。既然这些元素关于乘法可交换,我们就可以随意调换它们的次序。于是:能不能通过交换因子的位置,把行指标依次排成 \(1, 2, \dots, n\)?

能。理由是 1.2 的命题:任意排列都可以通过一系列对换化为自然排列。把这一串对换作用在乘积的因子上,就完成了重排。

命题(两种常用写法)

设 \(A = (a_{ij})_{n \times n}\),其中元素关于乘法可交换。则方阵的任意一个"不同行不同列元素的乘积"都可以写成下面两种形式之一:

  • 指定行指标为自然排列:存在唯一的 \(n\) 阶排列 \(j_1 j_2 \cdots j_n\),使该项等于

    \[ a_{1 j_1} a_{2 j_2} \cdots a_{n j_n}; \]
  • 指定列指标为自然排列:存在唯一的 \(n\) 阶排列 \(i_1 i_2 \cdots i_n\),使该项等于

    \[ a_{i_1 1} a_{i_2 2} \cdots a_{i_n n}. \]

证明

以第一种形式为例。设一般项为 \(a_{i_1 j_1} a_{i_2 j_2} \cdots a_{i_n j_n}\),其中 \(i_1 i_2 \cdots i_n\) 是排列。

把乘积的 \(n\) 个因子重新排序,使行指标从左到右依次为 \(1, 2, \dots, n\)(乘法可交换,允许这样重排)。重排后第 \(k\) 个因子是"第 \(k\) 行中被取到的那个元素",记其列指标为 \(j'_k\),即该项等于 \(a_{1 j'_1} a_{2 j'_2} \cdots a_{n j'_n}\)。

由于原来取的是"不同列"的 \(n\) 个元素,所以 \(j'_1, j'_2, \dots, j'_n\) 两两不同,从而由上面的命题它们构成一个 \(n\) 阶排列。唯一性也是显然的:第 \(k\) 行被取到的元素只有 \(a_{k j'_k}\) 一个,\(j'_k\) 被这一项唯一确定。

第二种形式把"行"与"列"的角色互换即可。

例题 2(同一项的两种写法)

设 \(n = 4\)。项 \(a_{31} a_{12} a_{43} a_{24}\) 是不同行不同列的乘积(行指标 \(3,1,4,2\) 是排列,列指标 \(1,2,3,4\) 也是排列)。把它改写成"指定行指标为自然排列"的形式。

解 按行指标 \(1, 2, 3, 4\) 的顺序重排因子:

\[ a_{31} a_{12} a_{43} a_{24} = a_{12}\, a_{24}\, a_{31}\, a_{43} . \]

此时行指标依次为 \(1, 2, 3, 4\),列指标依次为 \(2, 4, 1, 3\),而 \(2\,4\,1\,3\) 是 \(4\) 阶排列,符合要求。

也可以按列指标 \(1, 2, 3, 4\) 的顺序重排因子(列指标为 \(1, 2, 3, 4\) 的因子依次是 \(a_{31}, a_{12}, a_{43}, a_{24}\)):

\[ a_{31} a_{12} a_{43} a_{24} = a_{31}\, a_{12}\, a_{43}\, a_{24} . \]

此时列指标依次为 \(1, 2, 3, 4\),行指标依次为 \(3, 1, 4, 2\)。两种写法是同一个乘积,只是因子次序不同。

为什么两种写法都要会

后面推导行列式的性质时,有时按行看方便(指定行指标为自然排列),有时按列看方便(指定列指标为自然排列)。两种写法都要能脱口而出,才不会在换视角时出错。

一共有多少项

命题(项数)

\(n\) 阶方阵中不同行不同列元素的乘积恰好有 \(n!\) 个。

证明

由前面的命题,每个这样的乘积由一对 \(n\) 阶排列(\(i_1 i_2 \cdots i_n\) 与 \(j_1 j_2 \cdots j_n\))确定;但这会重复计数:同一个乘积可以写成很多对排列(例如 \(a_{11} a_{22} = a_{22} a_{11}\) 对应两对排列)。

换个数法。用"指定行指标为自然排列"的写法:每个乘积唯一对应于一个 \(n\) 阶排列 \(j_1 j_2 \cdots j_n\),即

\[ a_{1 j_1} a_{2 j_2} \cdots a_{n j_n} . \]

反过来,任意给定一个 \(n\) 阶排列 \(j_1 j_2 \cdots j_n\),上式都给出一个不同行不同列的乘积。

于是"不同行不同列元素的乘积"与"\(n\) 阶排列"之间建立了一一对应。由 1.2 的命题,\(n\) 阶排列共有 \(n!\) 个,故这样的乘积共有 \(n!\) 个。

把这个结论记住

\(n\) \(2\) \(3\) \(4\) \(5\)
项数 \(n!\) \(2\) \(6\) \(24\) \(120\)

\(n = 2\) 时 \(2\) 项、\(n = 3\) 时 \(6\) 项,都能用对角线法则写全;\(n = 4\) 时有 \(24\) 项,而对角线只能给出 \(8\) 项——这就是四阶的困难的定量版本。

完整定义预告

把上面的准备工作与 1.2 的奇偶性合起来,就得到 \(n\) 阶行列式的完整定义(下一讲的内容):

定义(\(n\) 阶行列式,下一次课)

设 \(A = (a_{ij})_{n \times n}\)。称

\[ \begin{vmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & & \vdots \\ a_{n1} & a_{n2} & \cdots & a_{nn} \end{vmatrix} = \sum_{j_1 j_2 \cdots j_n} (-1)^{\tau(j_1 j_2 \cdots j_n)}\, a_{1 j_1} a_{2 j_2} \cdots a_{n j_n} \]

为方阵 \(A\) 所确定的 \(n\) 阶行列式,记作 \(\det A\),也常直接记作 \(D\)。

式中求和号 \(\sum\limits_{j_1 j_2 \cdots j_n}\) 表示让 \(j_1 j_2 \cdots j_n\) 取遍所有 \(n\) 阶排列(共 \(n!\) 项);\(\tau(j_1 j_2 \cdots j_n)\) 是该排列的逆序数,\((-1)^{\tau}\) 给出这一项的正负号。

也可以按"指定列指标为自然排列"写成

\[ \begin{vmatrix} a_{11} & \cdots & a_{1n} \\ \vdots & & \vdots \\ a_{n1} & \cdots & a_{nn} \end{vmatrix} = \sum_{i_1 i_2 \cdots i_n} (-1)^{\tau(i_1 i_2 \cdots i_n)}\, a_{i_1 1} a_{i_2 2} \cdots a_{i_n n} . \]

用这个定义核对二阶与三阶

取 \(n = 2\)。\(2\) 阶排列只有 \(12\) 与 \(21\),\(\tau(12) = 0\)(偶)、\(\tau(21) = 1\)(奇),于是

\[ \begin{vmatrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{vmatrix} = (+1) a_{11} a_{22} + (-1) a_{12} a_{21} = a_{11} a_{22} - a_{12} a_{21}, \]

与二阶行列式的定义一致。

取 \(n = 3\),六个排列的逆序数依次为

\[ \tau(123) = 0,\ \tau(132) = 1,\ \tau(213) = 1,\ \tau(231) = 2,\ \tau(312) = 2,\ \tau(321) = 3, \]

带符号求和恰好给出三阶展开式的三正三负,与对角线法则一致。可见对角线法则只是这个定义在 \(n \le 3\) 时的巧合。

易错点

四个常见的错

  1. 把"不同行不同列"当成"在对角线上"。 只有 \(n \le 3\) 时两者才碰巧吻合;\(n = 4\) 时"每行每列各取一个"的取法有 \(24\) 种,而两条广义对角线只给出 \(8\) 种。
  2. 数项数时按"两个排列"去数。 一对排列确定一个乘积,但一个乘积可以对应很多对排列,直接数排列对会得到 \(n! \cdot n!\),远多于实际项数 \(n!\)。正确做法是固定行指标为自然排列,让列指标跑遍所有排列。
  3. 重排因子时漏掉乘法可交换这个前提。 "指定行指标为自然排列"这一步依赖元素关于乘法可交换;对乘法不可交换的对象(例如矩阵),不能随意重排因子。
  4. 把 \(a_{ij}\) 的行列指标读反。 \(a_{ij}\) 的第一个下标是行、第二个是列,与"第 \(i\) 个方程中第 \(j\) 个未知量的系数"是同一个约定。

参见