以组合定义为出发点的行列式理论的引入方式在很多高等代数或线性代数的教材中被采用, 其优缺点同样明显. 组合定义形式上的简单是其最大的优点, 用它可以简洁地证明行列式的所有性质, 并快速进入行列式的计算等核心内容. 因此, 对于 1 学期设置的线性代数课程, 通常都是采用组合定义引入行列式. 然而, 组合定义实质上的复杂却是困扰学生理解的主要因素, 特别是对初学者而言, 在没有完全理解组合定义的前提下, 期望他们直接利用行列式的性质进行行列式的计算, 从某种程度上说是一厢情愿的美好设计. 当然, 随着行列式理论学习的不断深入, 相信学生最终还是能完全理解和掌握组合定义的. 复旦大学高等代数教材是先引入行列式的递归定义, 然后用数学归纳法证明行列式的所有性质, 最后再给出行列式的组合定义. 从教学效果来看, 学生对这种引入方式接受程度较高, 但可能需要更多的学时.

本文是复旦大学教材《高等代数学 (第三版)》第 1.6 节“行列式的等价定义”的补充, 即阐述如何从行列式的组合定义出发, 推出行列式的所有性质及其递归定义. 另外, 作为组合定义的一个应用, 我们还将证明: 偶数阶反对称阵 $A$ 的行列式 $|A|=\mathrm{Pf}(A)^2$, 其中 $\mathrm{Pf}(A)$ 是反对称阵 $A$ 的 Pfaffian 多项式. 下面我们给出两点注解, 它们可使本文的所有结论在一般的域 $\mathbb{F}$ 上都成立.

注 1  在高等代数课程中, 我们通常是在数域 $\mathbb{K}$ 上考虑问题. 由于数域 $\mathbb{K}$ 是复数域 $\mathbb{C}$ 的子域, 故其特征为零. 进入抽象代数课程后, 我们通常是在一般的域 $\mathbb{F}$ 上考虑问题, 有时甚至会在环 $R$ 上考虑问题. 那么我们可以自然地问: 高等代数中的定理和结论是否在一般的域 $\mathbb{F}$ 上也成立呢? 作为一个简单的例子, 我们将从组合定义出发来给出一般的域 $\mathbb{F}$ 上的行列式理论. 为了得到这一推广, 我们必须避免域的特征的讨论, 因此在推导过程中, 我们会完全避免形如“$|A|=-|A|\Longrightarrow |A|=0$”或“$m|A|=0\Longrightarrow |A|=0$”的论断出现, 其中 $m$ 是某个非零整数. 基于同样的原因, 反对称阵的定义也修改为:

$A=(a_{ij})_{n\times n}$ 为反对称阵 $\Longleftrightarrow$ $a_{ii}=0\,(\forall\,1\leq i\leq n)$ 并且 $a_{ij}=-a_{ji}\,(\forall\,1\leq i<j\leq n)$.

注 2  在行列式性质的证明过程中, 我们常把一般的方阵 $A=(a_{ij})\in M_n(\mathbb{F})\cong\mathbb{F}^{n^2}$ 的元素 $a_{ij}$ 看成是 $n^2$ 个未定元, 并把 $|A|$ 看成是关于未定元 $a_{ij}$ 的多元多项式. 这种思想并非第一次使用, 它已在 Laplace 定理的证明过程中起到了关键的作用 (参考复旦大学高等代数教材第 1.7 节).

从现在开始, 所有的定义和结论都在一般的域 $\mathbb{F}$ 上进行阐述和证明.

定义 1 (行列式的组合定义)  设方阵 $A=(a_{ij})\in M_n(\mathbb{F})$, 则 $A$ 的行列式定义为 $$|A|=\sum_{(i_1,i_2,\cdots,i_n)\in S_n}(-1)^{N(i_1,i_2,\cdots,i_n)}a_{i_11}a_{i_22}\cdots a_{i_nn},$$ 其中 $S_n$ 是 $\{1,2,\cdots,n\}$ 的所有全排列构成的集合, $N(i_1,i_2,\cdots,i_n)$ 是全排列 $(i_1,i_2,\cdots,i_n)$ 的逆序数 (逆序数的定义参考复旦高代教材中的定义 1.6.1). 在注 2 的意义下, $a_{i_11}a_{i_22}\cdots a_{i_nn}$ 称为行列式 $|A|$ 中的单项, 它从 $A$ 的每行每列各取一个元素相乘得到, $(-1)^{N(i_1,i_2,\cdots,i_n)}$ 称为这个单项的符号. 容易看出: 当 $n\geq 2$ 时, 符号为 $\pm 1$ 的单项各为一半, 即 $\dfrac{1}{2}n!$ 个.

引理 2  设 $(i_1,i_2,\cdots,i_n)$, $(j_1,j_2,\cdots,j_n)\in S_n$, 则单项 $a_{i_1j_1}a_{i_2j_2}\cdots a_{i_nj_n}$ 在 $|A|$ 中的符号为 $(-1)^{N(i_1,i_2,\cdots,i_n)+N(j_1,j_2,\cdots,j_n)}$.

证明  由复旦高代教材中的引理 1.6.3, $(j_1,j_2,\cdots,j_n)$ 经过 $N(j_1,j_2,\cdots,j_n)$ 次相邻对换可变为 $(1,2,\cdots,n)$. 若将 $i_l$ 黏贴在 $j_l$ 上 $(1\leq l\leq n)$, 则可设 $(i_1,i_2,\cdots,i_n)$ 经过上述 $N(j_1,j_2,\cdots,j_n)$ 次相邻对换后变为 $(k_1,k_2,\cdots,k_n)$. 因此单项 $a_{i_1j_1}a_{i_2j_2}\cdots a_{i_nj_n}$ 实际上也是单项 $a_{k_11}a_{k_22}\cdots a_{k_nn}$, 从而其在 $|A|$ 中的符号为 $N(k_1,k_2,\cdots,k_n)$. 另一方面, 由复旦高代教材中的引理 1.6.1, 逆序数 $N(i_1,i_2,\cdots,i_n)$ 的奇偶性经过 $N(j_1,j_2,\cdots,j_n)$ 次改变后与 $N(k_1,k_2,\cdots,k_n)$ 的奇偶性相同, 因此 $(-1)^{N(k_1,k_2,\cdots,k_n)}=(-1)^{N(i_1,i_2,\cdots,i_n)+N(j_1,j_2,\cdots,j_n)}$.  $\Box$

推论 3  假设和记号同定义 1, 则 $$|A|=\sum_{(j_1,j_2,\cdots,j_n)\in S_n}(-1)^{N(j_1,j_2,\cdots,j_n)}a_{1j_1}a_{2j_2}\cdots a_{nj_n}.$$

证明  显然每个 $a_{1j_1}a_{2j_2}\cdots a_{nj_n}$ 都是 $|A|$ 中的单项, 由引理 2 知, 它在 $|A|$ 中的符号为 $(-1)^{N(1,2,\cdots,n)+N(j_1,j_2,\cdots,j_n)}=(-1)^{N(j_1,j_2,\cdots,j_n)}$. 因为 $a_{1j_1}a_{2j_2}\cdots a_{nj_n}$ 作为单项互不相同, 共有 $n!$ 个, 所以它们遍历 $|A|$ 中所有的单项且符号一致, 从而上述等式成立.  $\Box$

我们沿用定义 1 中的假设和记号, 下面依次证明行列式的 8 条性质.

性质 1  设 $|A|$ 是上 (下) 三角行列式, 则 $|A|=a_{11}a_{22}\cdots a_{nn}$.

证明  先设 $A$ 为上三角阵, 即 $a_{ij}=0\,(\forall\,i>j)$, 则在 $|A|$ 的组合定义中, 可能非零的单项 $a_{i_11}a_{i_22}\cdots a_{i_nn}$ 必须满足 $i_1\leq 1$, $i_2\leq 2$, $\cdots$, $i_n\leq n$. 因为 $(i_1,i_2,\cdots,i_n)\in S_n$, 故只可能是 $i_1=1$,  $i_2=2$, $\cdots$, $i_n=n$, 即 $|A|$ 的单项中只有一个可能非零, 从而 $|A|=a_{11}a_{22}\cdots a_{nn}$. 同理可证下三角阵的情形.  $\Box$

性质 8  行列式转置后的值不变, 即 $|A'|=|A|$.

证明  由定义 1 和推论 3 可得: $$|A'|=\sum_{(j_1,j_2,\cdots,j_n)\in S_n}(-1)^{N(j_1,j_2,\cdots,j_n)}a_{1j_1}a_{2j_2}\cdots a_{nj_n}=|A|.\,\,\Box$$

我们也可以将推论 3 当作 $|A|$ 的组合定义, 它与定义 1 中的组合定义相差一个转置. 由性质 8, 在余下诸性质的证明中, 我们只要证明列的情形即可.

性质 2  若 $|A|$ 的某一行或某一列的元素全为 0, 则 $|A|=0$.

证明  设 $|A|$ 的第 $j$ 列全为 0, 则 $a_{i_jj}=0\,(\forall\,1\leq i_j\leq n)$, 于是每个单项 $a_{i_11}\cdots a_{i_jj}\cdots a_{i_nn}=0$, 从而 $|A|=0$.  $\Box$

性质 3  将 $|A|$ 的某一行或某一列乘以一个常数 $c$, 则得到的行列式 $|B|=c|A|$.

证明  设 $|A|$ 的第 $j$ 列乘上了常数 $c$, 则 $|B|$ 中每个单项为 $a_{i_11}\cdots(ca_{i_jj})\cdots a_{i_nn}=c\cdot a_{i_11}\cdots a_{i_jj}\cdots a_{i_nn}$, 从而 $|B|=c|A|$.  $\Box$

性质 4  对换 $|A|$ 的任意不同的两行或两列, 则得到的行列式 $|B|=-|A|$.

证明  设 $|A|$ 的第 $i$ 列和第 $j$ 列互换, 则 $|A|$ 中每个单项 $a_{k_11}\cdots a_{k_ii}\cdots a_{k_jj}\cdots a_{k_nn}$ 与 $|B|$ 中单项 $a_{k_11}\cdots a_{k_jj}\cdots a_{k_ii}\cdots a_{k_nn}$ 相等, 但它们的符号由 $N(k_1,\cdots,k_i,\cdots,k_j,\cdots,k_n)$ 变为 $N(k_1,\cdots,k_j,\cdots,k_i,\cdots,k_n)$. 由复旦高代教材中的引理 1.6.1 可知, 逆序数的奇偶性发生改变, 因此 $|B|=-|A|$.  $\Box$

性质 5  若 $|A|$ 的两行或两列成比例, 则 $|A|=0$. 特别地, 若 $|A|$ 的两行或两列相同, 则 $|A|=0$.

证明  由性质 3 只要证 $|A|$ 的第 $i$ 列和第 $j$ 列相同的情形即可. 设 $|A|$ 的所有单项构成的集合为 $S$, 考虑映射 $\varphi:S\to S$, $a_{k_11}\cdots a_{k_ii}\cdots a_{k_jj}\cdots a_{k_nn}\mapsto a_{k_11}\cdots a_{k_ji}\cdots a_{k_ij}\cdots a_{k_nn}$. 显然 $\varphi^2=Id_S$, 从而 $\varphi$ 是一个双射. 又由于 $k_i\neq k_j\,(i\neq j)$, 故 $\varphi$ 不会把一个单项映成它自己. 因此 $\varphi$ 将 $|A|$ 中 $n!$ 个单项分成具有上述形式的两个单项组成的 $\dfrac{1}{2}n!$ 个组. 注意到上述两个单项的符号由 $N(k_1,\cdots,k_i,\cdots,k_j,\cdots,k_n)$ 与 $N(k_1,\cdots,k_j,\cdots,k_i,\cdots,k_n)$ 决定, 由复旦高代教材中的引理 1.6.1 可知, 两个逆序数的奇偶性相反. 又由假设可知 $a_{k_ii}=a_{k_ij}$, $a_{k_ji}=a_{k_jj}$, 故上述两个单项的值相等, 符号相反, 从而每组和为 0, 于是 $|A|=0$.  $\Box$

性质 6  若 $|A|$ 的某一行或某一列的每个元素都可写成两个数之和, 则将 $|A|$ 按照这一行或这一列拆分成两个行列式 $|B|$ 和 $|C|$, 此时 $|A|=|B|+|C|$.

证明  设 $|A|$ 的第 $j$ 列分解为 $a_{ij}=b_{ij}+c_{ij}\,(1\leq i\leq n)$, 按照第 $j$ 列拆分成行列式 $|B|$ 和 $|C|$, 则 $A$ 的单项 $$a_{k_11}\cdots a_{k_jj}\cdots a_{k_nn}=a_{k_11}\cdots(b_{k_jj}+c_{k_jj})\cdots a_{k_nn}=a_{k_11}\cdots b_{k_jj}\cdots a_{k_nn}+a_{k_11}\cdots c_{k_jj}\cdots a_{k_nn},$$ 是 $|B|,|C|$ 的单项之和, 又符号保持一致, 从而 $|A|=|B|+|C|$.  $\Box$

性质 7  将 $|A|$ 的某一行或某一列乘以常数 $c$ 加到另一行或另一列上, 行列式的值不变.

证明  由性质 6 和性质 5 即得.  $\Box$

推论 4 (行列式的递归定义)  $|A|$ 可以按照第一行或第一列进行展开, 即 $$|A|=a_{11}M_{11}-a_{21}M_{21}+\cdots+(-1)^{n+1}a_{n1}M_{n1},\\ |A|=a_{11}M_{11}-a_{12}M_{12}+\cdots+(-1)^{n+1}a_{1n}M_{1n},$$ 其中 $M_{ij}$ 是元素 $a_{ij}$ 的余子式.

证明  对阶数 $n$ 进行归纳. 当 $n=1$ 时, 结论显然成立. 设结论对 $n-1$ 阶行列式成立, 现证 $n$ 阶行列式的情形. 由行列式的组合定义可知 $$|A|=\sum_{(i_1,i_2,\cdots,i_n)\in S_n}(-1)^{N(i_1,i_2,\cdots,i_n)}a_{i_11}a_{i_22}\cdots a_{i_nn}=\sum_{i=1}^na_{i1}\Bigg(\sum_{(i,i_2,\cdots,i_n)\in S_n}(-1)^{N(i,i_2,\cdots,i_n)}a_{i_22}\cdots a_{i_nn}\Bigg).$$ 在全排列 $(i,i_2,\cdots,i_n)$ 中, $i$ 点的逆序数为 $i-1$, 故由定义 $N(i,i_2,\cdots,i_n)=(i-1)+N(i_2,\cdots,i_n)$. 因此 $$|A|=\sum_{i=1}^n(-1)^{i+1}a_{i1}\Bigg(\sum_{(i_2,\cdots,i_n)\in S_{n-1}}(-1)^{N(i_2,\cdots,i_n)}a_{i_22}\cdots a_{i_nn}\Bigg).$$ 由归纳假设 $\sum\limits_{(i_2,\cdots,i_n)\in S_{n-1}}(-1)^{N(i_2,\cdots,i_n)}a_{i_22}\cdots a_{i_nn}=M_{i1}$, 于是 $|A|=\sum\limits_{i=1}^n(-1)^{i+1}a_{i1}M_{i1}$.  $\Box$

我们进一步证明: 行列式可以按照任何一行或任何一列进行展开.

定理 5  设 $A_{ij}$ 是元素 $a_{ij}$ 的代数余子式, 则对任意的 $1\leq i,j\leq n$, 成立: $$a_{i1}A_{j1}+a_{i2}A_{j2}+\cdots+a_{in}A_{jn}=\delta_{ij}|A|,\\ a_{1i}A_{1j}+a_{2i}A_{2j}+\cdots+a_{ni}A_{nj}=\delta_{ij}|A|,$$ 其中 $\delta_{ij}$ 是 Kronecker 记号.

证明  由行列式的性质和推论 4 即得, 这一推导过程可在复旦高代教材上找到.  $\Box$

我们接下去研究反对称阵的行列式.

命题 6  设 $A$ 是奇数阶反对称阵, 则 $|A|=0$.

证明  由于 $A$ 的主对角元全为 0, 故只考虑单项: $T=\{a_{k_11}a_{k_22}\cdots a_{k_nn}\mid k_i\neq i\,(\forall\,1\leq i\leq n)\}$. 定义映射 $\varphi:T\to T$, $a_{k_11}a_{k_22}\cdots a_{k_nn}\mapsto a_{1k_1}a_{2k_2}\cdots a_{nk_n}$. 显然 $\varphi^2=Id_T$, 于是 $\varphi$ 是一个双射. 断言: $a_{k_11}a_{k_22}\cdots a_{k_nn}$ 和 $a_{1k_1}a_{2k_2}\cdots a_{nk_n}$ 作为 $|A|$ 的单项不相同, 否则 $\{1,2,\cdots,n\}$ 必可分成若干对 $(i_1,j_1)$, $\cdots$, $(i_l,j_j)$, 使得 $a_{k_11}a_{k_22}\cdots a_{k_nn}=a_{i_1j_1}a_{j_1i_1}\cdots a_{i_lj_l}a_{j_li_l}$, 这与 $n$ 为奇数矛盾. 将上述两个单项看成一组, 则由引理 2 知, 它们在 $|A|$ 中符号相同. 由于 $A$ 反对称, 故 $a_{1k_1}a_{2k_2}\cdots a_{nk_n}=(-1)^na_{k_11}a_{k_22}\cdots a_{k_nn}=-a_{k_11}a_{k_22}\cdots a_{k_nn}$, 从而每组和为 0, 于是 $|A|=0$.  $\Box$

为了处理偶数阶反对称阵的情形, 我们先利用行列式的性质证明一个引理.

引理 7  设 $A=(a_{ij})\in M_{2n}(\mathbb{F})$ 为反对称阵, 则 $|A|=f^2$, 其中 $f$ 是关于 $a_{ij}\,(i<j)$ 的某个多项式.

证明  对阶数 $2n$ 进行归纳. 当 $n=1$ 时, $A=\begin{pmatrix} 0 & a_{12} \\ -a_{12} & 0 \\ \end{pmatrix}$, $|A|=a_{12}^2$, 结论成立. 设结论对 $2(n-1)$ 阶反对称阵成立, 现证 $2n$ 阶反对称阵的情形. 若 $|A|=0$, 结论显然成立. 以下不妨设 $|A|\neq 0$, 即 $A$ 是 $2n$ 阶非异反对称阵.

设 $C_{ij}$ 是去掉 $A$ 的第 $i$ 行和第 $j$ 列的 $2n-1$ 阶子阵, $C_{ij,ij}$ 是去掉 $A$ 的第 $i,j$ 行和第 $i,j$ 列的 $2(n-1)$ 阶子阵. 显然, 对任意的 $i,j$, $C_{ii}$ 和 $C_{ij,ij}$ 都是反对称阵. 设 $A^*$ 为 $A$ 的伴随阵, 则由定理 5 可知 $AA^*=A^*A=|A|I_{2n}$. 由 Lapalce 定理可推出 Cauchy-Binet 公式, 由此即得 $|A^*|=|A|^{2n-1}$. 考虑如下矩阵乘积: $$\begin{pmatrix} 0 & 1 & 0 & \cdots & 0 \\ 1 & 0 & 0 & \cdots & 0 \\ a_{31} & a_{32} & a_{33} & \cdots & a_{3,2n} \\ \vdots & \vdots & \vdots & & \vdots \\ a_{2n,1} & a_{2n,2} & a_{2n,3} & \cdots & a_{2n,2n} \\ \end{pmatrix}\cdot\begin{pmatrix} A_{11} & A_{21} & A_{31} & \cdots & A_{2n,1} \\ A_{12} & A_{22} & A_{32} & \cdots & A_{2n,2} \\ A_{13} & A_{23} & A_{33} & \cdots & A_{2n,3} \\ \vdots & \vdots & \vdots & & \vdots \\ A_{1,2n} & A_{2,2n} & A_{3,2n} & \cdots & A_{2n,2n} \\ \end{pmatrix}=\begin{pmatrix} A_{12} & A_{22} & A_{32} & \cdots & A_{2n,2} \\ A_{11} & A_{21} & A_{31} & \cdots & A_{2n,1} \\ 0 & 0 & |A| & \cdots & 0 \\ \vdots & \vdots & \vdots & & \vdots \\ 0 & 0 & 0 & \cdots & |A| \\ \end{pmatrix},$$ 取行列式即得 $$-|C_{12,12}|\cdot|A|^{2n-1}=(A_{12}A_{21}-A_{11}A_{22})\cdot|A|^{n-2}.$$ 由于 $C_{11},C_{22}$ 是奇数阶反对称阵, 故由命题 6 可知 $A_{11}=A_{22}=0$. 又 $C_{12}=-C_{21}'$, 故 $A_{12}=-A_{21}$, 从而 $A_{12}^2=|C_{12,12}|\cdot|A|$, 即 $A_{12}=\sqrt{|C_{12,12}|\cdot|A|}$ (平方根可根据情况取正负号). 对任意的 $i<j$, 同理可证 $A_{ij}=\sqrt{|C_{ij,ij}|\cdot|A|}$.

按 $A$ 的第一行进行展开可得 $|A|=\sum\limits_{j=2}^{2n}a_{1j}A_{1j}=\sum\limits_{j=2}^{2n}a_{1j}\sqrt{|C_{1j,1j}|\cdot|A|}$, 于是 $\sqrt{|A|}=\sum\limits_{j=2}^{2n}a_{1j}\sqrt{|C_{1j,1j}|}$. 因为 $C_{1j,1j}$ 是 $2(n-1)$ 阶反对称阵, 由归纳假设存在关于 $a_{ij}\,(i<j)$ 的多项式 $f_{1j}$, 使得 $|C_{1j,1j}|=f_{1j}^2$, 故有上式可得 $|A|=(\sum\limits_{j=2}^{2n}a_{1j}f_{1j})^2$.  $\Box$

引理 7 比较粗糙的原因是: 在几次开平方的过程中, 我们不能确定如何取正负号. 这一点将在定理 9 中加以改进, 直至符号完全确定. 为了阐述定理 9, 我们先给出偶数阶反对称阵的 Pfaffian 多项式的定义.

定义 8  设 $A_{2n}=\{(i_1,j_1,i_2,j_2,\cdots,i_n,j_n)\in S_{2n}\mid i_1<j_1,i_2<j_2,\cdots,i_n<j_n,i_1<i_2<\cdots<i_n\}$, 我们可以证明 $\sharp A_{2n}=(2n-1)!!=(2n-1)(2n-3)\cdots 1$. 事实上, $i_1$ 只能取 1, 于是 $j_1$ 有 $2n-1$ 种取法; $i_1,j_1$ 确定之后, $i_2$ 只能取剩下元素中最小者, 于是 $j_2$ 有 $2n-3$ 种取法; 由此类推, 即得上述结论. 显然, 常序排列 $(1,2,3,4,\cdots,2n-1,2n)$ 属于 $A_{2n}$.

设 $A=(a_{ij})$ 为 $2n$ 阶反对称阵, 则 $$\mathrm{Pf}(A)=\sum_{(i_1,j_1,i_2,j_2,\cdots,i_n,j_n)\in A_{2n}}(-1)^{N(i_1,j_1,i_2,j_2,\cdots,i_n,j_n)}a_{i_1j_1}a_{i_2j_2}\cdots a_{i_nj_n}$$ 称为 $A$ 的 Pfaffian 多项式, 这是一个关于 $a_{ij}\,(i<j)$ 的整系数多项式. 等价地, 我们也可以把 Pfaffian 多项式写成如下的形式 (它的验证留给读者): $$\mathrm{Pf}(A)=\frac{1}{2^nn!}\sum_{(i_1,i_2,i_3,i_4,\cdots,i_{2n-1}\,\,,i_{2n})\in S_{2n}}(-1)^{N(i_1,i_2,i_3,i_4,\cdots,i_{2n-1}\,\,,i_{2n})}a_{i_1i_2}a_{i_3i_4}\cdots a_{i_{2n-1}\,\,i_{2n}}.$$

定理 9  设 $A=(a_{ij})$ 为 $2n$ 阶反对称阵, 则 $|A|=\mathrm{Pf}(A)^2$.

证明  我们称由常序排列 $(1,2,3,4,\cdots,2n-1,2n)$ 决定的单项 $a_{12}a_{34}\cdots a_{2n-1,2n}$ 为常序单项. 由引理 7 的证明过程不难发现: $\sqrt{|A|}$ 的表达式中含有常序单项, 其符号为 1 或 $-1$. 为方便起见, 我们记包含符号等于 1 的常序单项的 $|A|$ 的那个平方根为 $\mathrm{Qr}(A)$, 则由引理 7 的证明过程可得 $$\mathrm{Qr}(A)=\sum_{j=2}^{2n}(-1)^{t_j}a_{1j}\mathrm{Qr}(C_{1j,1j}).\cdots\cdots(1)$$ 下面我们将用数学归纳法同时证明以下三个结论: $$t_j\equiv j\pmod 2,\,\,\forall j\geq 2,\cdots\cdots(2)\\  \mathrm{Qr}(A)=\mathrm{Pf}(A),\cdots\cdots(3)\\ \mathrm{Qr}(P_{i,i+1}AP_{i,i+1})=-\mathrm{Qr}(A),\,\,\forall\,1\leq i\leq 2n-1,\cdots\cdots(4)$$ 其中 $P_{i,i+1}$ 表示将第 $i$ 行和第 $i+1$ 行对换的第一类初等阵. 当 $n=1$ 时, 容易验证 (2), (3) 和 (4) 都成立. 设这三个结论对 $2n-2$ 阶反对称阵成立, 我们来证 $2n$ 阶反对称阵的情形. 因为 $(3)_{2n-2}$ 成立, 所以 $\mathrm{Qr}(C_{1j,1j})=\mathrm{Pf}(C_{1j,1j})$ 中的所有单项都不是同类项, 并且 $a_{1j}\mathrm{Qr}(C_{1j,1j})\,(2\leq j\leq 2n)$ 中的所有单项都不是同类项. 任取 $i>2$, 设 $B=P_{i,i+1}AP_{i,i+1}$, $B$ 中删除第 $i,j$ 行和第 $i,j$ 列的子阵记为 $D_{ij,ij}$. 显然, $B$ 也是反对称阵且 $|B|=|A|$. 由 (1) 可得: $$\mathrm{Qr}(A)=a_{12}\mathrm{Qr}(C_{12,12})+\cdots+(-1)^{t_i}a_{1i}\mathrm{Qr}(C_{1i,1i})+(-1)^{t_{i+1}}a_{1,i+1}\mathrm{Qr}(C_{1i+1,1i+1})+\cdots,$$ 对 $B$ 应用 (1) 可得 $$\mathrm{Qr}(B)=a_{12}\mathrm{Qr}(D_{12,12})+\cdots+(-1)^{t_i}a_{1,i+1}\mathrm{Qr}(D_{1i,1i})+(-1)^{t_{i+1}}a_{1,i}\mathrm{Qr}(D_{1i+1,1i+1})+\cdots.$$ 由 $|B|=|A|$ 可知 $\mathrm{Qr}(B)=\pm \mathrm{Qr}(A)$, 再由 $(4)_{2n-2}$ 可知 $a_{12}\mathrm{Qr}(D_{12,12})=-a_{12}\mathrm{Qr}(C_{12,12})$, 从而 $\mathrm{Qr}(B)=-\mathrm{Qr}(A)$. 注意到 $D_{1i,1i}=C_{1i+1,1i+1}$, $D_{1i+1,1i+1}=C_{1i,1i}$, 故比较对应单项的符号可得 $t_{i+1}\equiv t_i+1\pmod 2$ 对任意的 $i>2$ 都成立. 再设 $B=P_{23}AP_{23}$, 则由 (1) 可得: $$\mathrm{Qr}(A)=a_{12}\mathrm{Qr}(C_{12,12})+(-1)^{t_3}a_{13}\mathrm{Qr}(C_{13,13})+\cdots+(-1)^{t_i}a_{1,i}\mathrm{Qr}(C_{1i,1i})+\cdots,\\ \mathrm{Qr}(B)=a_{13}\mathrm{Qr}(D_{12,12})+(-1)^{t_3}a_{12}\mathrm{Qr}(D_{13,13})+\cdots+(-1)^{t_i}a_{1,i}\mathrm{Qr}(D_{1i,1i})+\cdots,$$ 其中 $3<i\leq 2n$. 由 $|B|=|A|$ 可知 $\mathrm{Qr}(B)=\pm \mathrm{Qr}(A)$, 再由 $(4)_{2n-2}$ 可知 $a_{1i}\mathrm{Qr}(D_{1i,1i})=-a_{1i}\mathrm{Qr}(C_{1i,1i})$, 从而 $\mathrm{Qr}(B)=-\mathrm{Qr}(A)$. 注意到 $D_{12,12}=C_{13,13}$, $D_{13,13}=C_{12,12}$, 故比较对应单项的符号可得 $t_3\equiv 1\pmod 2$, 于是 $t_j\equiv j\pmod 2$ 对任意的 $j\geq 2$ 成立, 即 $(2)_{2n}$ 成立. 综合 (1) 和 $(3)_{2n-2}$ 可得  $$\mathrm{Qr}(A)=\sum_{j=2}^{2n}a_{1j}\mathrm{Qr}(C_{1j,1j})=\sum_{j=2}^{2n}a_{1j}\mathrm{Pf}(C_{1j,1j})\\ =\sum_{j=2}^{2n}a_{1j}\Bigg(\sum_{A_{2n-2}}(-1)^{N(i_2,j_2,\cdots,i_n,j_n)}a_{i_2j_2}\cdots a_{i_nj_n}\Bigg)\\ =\sum_{j=2,A_{2n-2}}^{2n}(-1)^{N(1,j,i_2,j_2,\cdots,i_n,j_n)}a_{1j}a_{i_2j_2}\cdots a_{i_nj_n}\\ =\sum_{A_{2n}}(-1)^{N(i_1,j_1,i_2,j_2,\cdots,i_n,j_n)}a_{i_1j_1}a_{i_2j_2}\cdots a_{i_nj_n}=\mathrm{Pf}(A),$$ 即 $(3)_{2n}$ 成立 (注意: $N(1,j,i_2,j_2,\cdots,i_n,j_n)=j-2+N(i_2,j_2,\cdots,i_n,j_n)$). 由 $(3)_{2n}$ 可直接验证 $\mathrm{Qr}(P_{12}AP_{12})=-\mathrm{Qr}(A)$ 成立, 从而 $(4)_{2n}$ 也成立, 这就完成了所有的证明. 特别地, 我们可以得到 $|A|=\mathrm{Qr}(A)^2=\mathrm{Pf}(A)^2$.  $\Box$

例 10  设 4 阶反对称阵 $A=\begin{pmatrix} 0 & a & b & c \\ -a & 0 & d & e \\ -b & -d & 0 & f \\ -c & -e & -f & 0 \\ \end{pmatrix}$, 则 $A_4=\{(1,2,3,4),(1,3,2,4),(1,4,2,3)\}$, $\mathrm{Pf}(A)=af-be+cd$, 于是由定理 9 可得 $|A|=\mathrm{Pf}(A)^2=(af-be+cd)^2$.

注 3  利用反对称阵的 Pfaffian 多项式表示, 可以直接证明: 实反对称阵的行列式非负, 以及反对称整数矩阵的行列式是某个整数的平方, 这些都是反对称阵的常见结果. 另外, Pfaffian 还有一些常见的性质, 例如: $\mathrm{Pf}(P'AP)=\det(P)\mathrm{Pf}(A)$, 其中 $A$ 是 $2n$ 阶反对称阵, $P$ 是同阶非异阵.

注 4  反对称阵的 Pfaffian 多项式表示还有其他的证明方法, 例如: 普罗斯库烈柯夫, 线性代数习题集, 问题 543--545; H. W. Haber, Notes on Antisymmetric Matrices and the Pfaffian, Theorem 2; S. Winitzki, Linear Algebra via Exterior Products, $\S$5.8. 本文的证明方法仅利用了行列式的组合定义以及多元多项式的性质, 因此在适当地添补一些细节之后, 本文的结论也可以推广到带单位元 1 的交换环 $R$ 上, 有兴趣的读者可以自行完成相关的细节.

行列式的组合定义及其应用--反对称阵的Pfaffian的更多相关文章

  1. day25、 静态属性、类方法、静态方法、组合、继承、

    一. 静态属性.类方法.静态方法 1.1静态属性 class Room: def __init__(self,name,owner,width,length): self.name=name self ...

  2. javaScript定义对象的方法

    转自souhu新闻http://news.sohu.com/20110215/n279335637.shtml? javascript定义对象的几种简单方法 1.构造函数方式,全部属性及对象的方法都放 ...

  3. PHP组合模式

    一.组合模式简述 1.组合定义了一个单根继承体系,使具有不同职责的集合可以并肩工作 2.如果想像对待单个对象一样对待组合对象,那么组合模式十分有用 3.组合模式不能很好地在关系数据库中保存数据,但却非 ...

  4. JavaScript 和 TypeScript 交叉口 —— 类型定义文件(*.d.ts)

    在 <从 JavaScript 到 TypeScript 系列> 文章我们已经学习了 TypeScript 相关的知识. TypeScript 的核心在于静态类型,我们在编写 TS 的时候 ...

  5. 【python39--面向对象组合】

    一.组合 定义:当几个对象是水平方向的时候,就应该考虑组合,当对象是纵向的时候用继承,组合就是用一个类把2个平级层次的类放在一起,然后实例化就可以了 #现在定义一个类,叫水池,水池里面有鱼和乌龟cla ...

  6. javascript定义对象写法

    javascript定义对象的几种简单方法 1.构造函数方式,全部属性及对象的方法都放在构造方法里面定义 优点:动态的传递参数 缺点:每创建一个对象就会创建相同的方法函数对象,占用大量内存 funct ...

  7. CSUOJ 1979 古怪的行列式

    Description 这几天,子浩君潜心研究线性代数. 行列式的值定义如下: 其中,τ(j1j2...jn)为排列j1j2...jn的逆序数. 子浩君很厉害的,但是头脑经常短路,所以他会按照行列式值 ...

  8. 矩阵&行列式

    # 代数 排列 对换,对于一个排列操作,对于一个偶排列一次对换之后变为奇排列 反之变为偶排列 行列式 N阶行列式室友N^2个数aij(i,j = 1,2,3,...n) 行列式的数=\(\sum_ { ...

  9. BZOJ 4031 HEOI2015 小Z的房间 基尔霍夫矩阵+行列式+高斯消元 (附带行列式小结)

    原题链接:http://www.lydsy.com/JudgeOnline/problem.php?id=4031 Description 你突然有了一个大房子,房子里面有一些房间.事实上,你的房子可 ...

随机推荐

  1. Synchronized 与Lock的不同之处

    Synchronized 与Lock的不同之处 用法不一样.synchronized既可以加在方法上,也可以加载特定的代码块上,括号中表示需要锁的对象.而Lock需要显示地指定起始位置和终止位置.sy ...

  2. DevExtreme学习笔记(一) DataGrid中数据筛选

    config.filterRow = { visible: true, applyFilter: "auto" }; config.headerFilter = { visible ...

  3. Navicat 连接mysql 报错: Authentication plugin caching_ sha2_password cannot be loaded

    出现这个错误的时候, 网上的资料都是修改mysql的登录信息的, ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password ...

  4. springDataRedis的小demo

    1. 导入相关的依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns=" ...

  5. PHP 结合 Bootstrap 实现学生列表以及添加学生功能实现(继上篇登录及注册功能之后)

    本人是一位学生,正在学习当中,可能BUG众多,请见谅并指正,谢谢!!! 学生列表实现 HTML: <!DOCTYPE html> <html> <head> < ...

  6. springmvc集成cxf的方法

    最近需要在项目中增加webservice接口,供三方调用,下面就把集成的方法展示如下,供大家参考: 第一步:服务端的发布; 1:配置web.xml文件,添加cxf的servlet <servle ...

  7. DataPipeline的增量数据支持回滚功能

    DataPipeline的增量数据支持回滚功能 第一步:数据任务有增量数据时,回滚按钮激活,允许用户使用该功能进行数据回滚. 第二步:点击回滚按钮,允许用户选择回滚时间或者回滚位置进行数据回滚.选择按 ...

  8. Swift面试题

    class 和 struct 的区别 1.struct是值类型,class是引用类型. 值类型的变量直接包含它们的数据,对于值类型都有它们自己的数据副本,因此对一个变量操作不可能影响另一个变量. 引用 ...

  9. 微信小程序自定义toast的实现

    今天写微信小程序突然发现一个尴尬的问题,请求报错需要提示,就去小程序API里找,可悲的小程序的toast并不能满足我的需求,原生提供的方法调用如下 wx.showToast({ title: '成功' ...

  10. 使用VS.NET2019做为C++开发专用IDE

    一.下载安装包: https://visualstudio.microsoft.com/zh-hans/downloads/ 我下载的是企业版本. 二.安装支持C++ 序列号: Visual Stud ...