`R_n = | , , ,1; , ,1, ; ,⋰, , ; 1, , , ; |_(n xx n) = (-1)^((n(n-1))/2)`. 设 `bm R_n` 是这个行列式对应的矩阵, 左乘 (右乘) `bm R_n` 的效果相当于将原矩阵的各行 (列) 倒排.

鸡爪形行列式 对正整数 `n ge 2`, `| a,x,cdots,x; y,z, , ; vdots, ,ddots, ; y, , ,z; |_n` `= { (a z-(n-1)x y) z^(n-2), if z != 0; -x y, if z = 0 and n = 2; 0, if z = 0 and n gt 2; :}`

`z != 0` 时, 将后面各列的 `-y/z` 倍加到第一列, 原式等于 `| a-(n-1)x y z^-1,x,cdots,x; ,z, , ; , , ddots, ; , , ,z; |`. 于是得到第一种情形. 另外两种情形是显然的.

对正整数 `n ge 2`, `| x,y,cdots,y; y,x,cdots,y; vdots,vdots, ,vdots; y,y,cdots,x; |_n = (x-y)^(n-1) (x+(n-1)y)`.

先将第一行的 -1 倍加到其余各行, 再将其余各列加到第一列, 原式等于 `| x,y,cdots,y; y-x,x-y,cdots,0; vdots,vdots, ,vdots; y-x,0,cdots,x-y; |` `= | x+(n-1)y,y,cdots,y; 0,x-y,cdots,0; vdots,vdots, ,vdots; 0,0,cdots,x-y; |` `= (x-y)^(n-1) (x+(n-1)y)`.

加边法. 此法需要结合线性递推式来求解, 可能不是最简便的, 但它的通用性较强. 设原式等于 `D_n`, 则 `D_n =` `| 1,-y,-y,cdots,-y; 0,x,y,cdots,y; 0,y,x,cdots,y; vdots,vdots,vdots, ,vdots; 0,y,y,cdots,x; |_(n+1)` `=| 1,-y,-y,cdots,-y; 1,x-y,0,cdots,0; 1,0,x-y,cdots,0; vdots,vdots,vdots, ,vdots; 1,0,0,cdots,x-y; |_(n+1)`. 沿最后一列展开, 再将 `-y` 的余子式沿最后一行展开, `D_n = (x-y) D_(n-1) + (-1)^(n+1+1) (-y) (-1)^(n+1) (x-y)^(n-1)` `= (x-y) D_(n-1) + y(x-y)^(n-1)`. 两边同除以 `(x-y)^(n-1)`, `D_n/(x-y)^(n-1) = D_(n-1)/(x-y)^(n-2) + y`. 于是 `D_n = (x-y)^(n-1)(D_1/(x-y)^0 + (n-1) y)` `= (x-y)^(n-1) (x+(n-1)y)`.

对正整数 `n ge 2`, `y != z`, 有 `| x,y,cdots,y; z,x,cdots,y; vdots,vdots,,vdots; z,z,cdots,x; |_n` `= (z(x-y)^n - y(x-z)^n)/(z-y)`.

设原式为 `D_n`, 则 `D_n =` `| z, y, y, cdots, y; z, x, y, cdots, y; z, z, x, cdots, y; vdots, vdots, vdots,,vdots; z, z, z, cdots, x; |` `+ | x-z, y, y, cdots, y; 0, x, y, cdots, y; 0, z, x, cdots, y; vdots, vdots, vdots,,vdots; 0, z, z, cdots, x; |` `= | z, 0, 0, cdots, 0; z, x-y, 0, cdots, 0; z, z-y, x-y, cdots, 0; vdots, vdots, vdots,,vdots; z, z-y, z-y, cdots, x-y; | + (x-z) D_(n-1)` `= z(x-y)^(n-1) + (x-z) D_(n-1)`. 将 `y, z` 互换得 `D_n = y(x-z)^(n-1) (x-z) D_(n-1)`. 由两式得 `D_n = (z(x-y)^n - y(x-z)^n)/(z-y)`.

对正整数 `n ge 2`, `| 1, 2, cdots, n-1, n; 2, 3, cdots, n, 1; vdots, vdots, , vdots, vdots; n-1, n, cdots, n-3, n-2; n, 1, cdots, n-2, n-1; | = (-1)^((n(n-1))/2) (n^(n-1) (n+1))/2`.

[来自 颓废] 因为行列式行和相等, 我们将各列加到第一列. 原式等于 `(n(n+1))/2 | 1, 2, 3, cdots, n-1, n; 1, 3, 4, cdots, n, 1; 1, 4, 5, cdots, 1, 2; vdots, vdots, vdots, , vdots, vdots; 1, n, 1, cdots, n-3, n-2; 1, 1, 2, cdots, n-2, n-1; |_n` `= (n(n+1))/2 | 1, 0, 0, cdots, 0, 0; 1, 1, 1, cdots, 1, 1-n; 1, 2, 2, cdots, 2-n, 2-n; vdots, vdots, vdots, , vdots, vdots; 1, n-2, -2, cdots, -2, -2; 1, -1, -1, cdots, -1, -1; |_n` `= (n(n+1))/2 | 1, 0, cdots, 0, -n; 2, 0, cdots, -n, -n; vdots, vdots, , vdots, vdots; n-2, -n, cdots, -n, -n; -1, 0, cdots, 0, 0; |_(n-1)` `= (n(n+1))/2 R_(n-1) (-1)^(n-1) n^(n-2)`. 其中 `R_(n-1)` 表示将行列式各行倒排.

三对角形行列式 `n` 为正整数, 求 `| y,z; x,y,z; ,x,ddots,ddots; , ,ddots,y,z; , , ,x,y; |_n`

记原式等于 `D_n`, 按第一行展开, `D_n = y D_(n-1) - z| x,z,cdots,0; 0,,,; vdots,,D_(n-2),; 0,,,; |`, 上面的行列式再按第一列展开得 `D_n = y D_(n-1) - x z D_(n-2)`. 求解这个线性递推式. 若 `x z = 0`, 方程退化为 `D_n = y D_(n-1)`, 从而 `D_n = y^n`. 否则解特征方程 `lambda^2 - y lambda + x z = 0` 得 `lambda_(1,2) = (y +- sqrt(y^2-4x z))//2`. `lambda_1 != lambda_2` 时, 通解为 `D_n = c_1 lambda_1^n + c_2 lambda_2^n`,
`c_1 = (D_1 lambda_2-D_2)/(lambda_1(lambda_2-lambda_1))`, `quad c_2 = (D_2-lambda_1 D_1)/(lambda_2(lambda_2-lambda_1))`.
再代入初值 `D_1 = y`, `D_2 = y^2-x z` 即可. `lambda_1 = lambda_2 = y//2` 时, 通解为 `D_n = (c_1 + c_2 n) lambda_1^n`,
`c_1 = 1/lambda_1(2D_1 - D_2/lambda_1)`, `quad c_2 = 1/lambda_1(D_2/lambda_1-D_1)`.
再代入初值得 `c_1 = (x z)/y^2`, `quad c_2 = 2 - (4x z)/y^2`.

友阵的特征多项式 令 `f(x) = sum_(i=0)^n a_i x^i`, `a_n = 1`, 则 `| x,0,cdots,0,a_0; -1,x,cdots,0,a_1; 0,-1,cdots,0,a_2; vdots,vdots, ,vdots,vdots; 0,0,cdots,-1,x+a_(n-1); | = f(x)`.

对 `k = n-1, cdots, 2, 1`, 依次将第 `k+1` 行的 `x` 倍加到第 `k` 行上, 原式等于 `|0, f(x); -bm I_(n-1) ,**|` `= (-1)^(n-1) |f(x), 0; **, -bm I_(n-1)|` `= f(x)`.

Vandermonde 行列式 对正整数 `n ge 2`, `| 1,x_1,cdots,x_1^(n-1); 1,x_2,cdots,x_2^(n-1); vdots,vdots,,vdots; 1,x_n,cdots,x_n^(n-1); | = prod_(1 le i lt j le n) (x_j - x_i)`.

对 `n` 进行归纳证明. `n = 2` 时原式等于 `x_2 - x_1`, 结论成立. 设结论对 `n-1` 成立, 依次将原式第 `i` 列的 `-x_1` 倍加到第 `i+1` 列, `i = n-1, n-2, cdots, 1`, 得到 `| 1,0,cdots,0; 1,x_2-x_1,cdots,x_2^(n-2)(x_2-x_1); vdots,vdots,,vdots; 1,x_n-x_1,cdots,x_n^(n-2)(x_n-x_1); |`. 按第一行展开后, 提出每一行的公因式, 得 `prod_(j=2)^n (x_j-x_1) | 1,cdots,x_2^(n-2); vdots,,vdots; 1,cdots,x_n^(n-2); |`. 由归纳假设, 上式等于 `prod_(1 le i lt j le n) (x_j-x_i)`.

Vandermonde 行列式不等于 0 当且仅当 `x_1, x_2, cdots, x_n` 两两不相等.

求行列式 `| 1, (x_1;1), cdots, (x_1;n-1); 1, (x_2;1), cdots, (x_2;n-1); vdots, vdots, , vdots; 1, (x_n;1), cdots, (x_n;n-1); |`.

将 `(x;k)` 看作关于 `x` 的 `k` 次多项式, 依次将原式的前 `i` 列的某个线性组合加到第 `i+1` 列, 就可以消去 第 `i+1` 列中的低次项, 使其只剩 `i` 次项, `i = 2, 3, cdots, n-1`. 从而得到 `| 1,x_1/(1!),cdots,x_1^(n-1)/((n-1)!); 1,x_2/(1!),cdots,x_2^(n-1)/((n-1)!); vdots,vdots,,vdots; 1,x_n/(1!),cdots,x_n^(n-1)/((n-1)!); |`. 利用 Vandermonde 行列式, 上式等于 `prod_(i=1)^(n-1) (i!)^-1 prod_(1 le i lt j le n) (x_j-x_i)`.

设 `bm A in bbb P^(m xx n)`, `bm B in bbb P^(n xx m)`, 证明: ` |bm I_m - bm (AB)| = |bm I_n, bm B; bm A, bm I_m| = |bm I_m, bm A; bm B, bm I_n| = |bm I_n - bm (BA)|`. 当 `m != n`, 此公式可以用于降阶. 如第一章的 Householder 矩阵的行列式为 `|bm I - 2 bm(alpha alpha^T)|` `= |bm I - 2 bm(alpha^T alpha)|` `= -1`.

  1. 先证第一个等号. 由行列式的相关性质和矩阵的分块乘法, ` |bm I_m - bm (AB)| = |bm I_n, bm O; bm O, bm I_m - bm (AB)|` `= |bm I_n, bm O; -bm A, bm I_m| |bm I_n, bm B; bm A, bm I_m| |bm I_n, -bm B; bm O, bm I_m| = |bm I_n, bm B; bm A, bm I_m|`. 类似可以证明第三个等号.
  2. 再证第二个等号. 先交换左边行列式的前 `n` 列与后 `m` 列, 得到 `|bm B, bm I_n; bm I_m, bm A|`. 这可以通过把后 `m` 列逐列前移 `n` 个位置得到, 因此需要交换 `mn` 次. 再交换它的前 `n` 行与后 `m` 行来得到右边的行列式; 同样需要 `mn` 次交换. 由于交换行/列的次数是偶数, 行列式的值不变.
    正交矩阵 `bm A` 满足 `bm(A^T A) = bm I`, 取行列式知 `|bm A|^2 = 1`. 我们把行列式等于 1 的正交矩阵称为第一类正交矩阵, 行列式等于 -1 的正交矩阵称为第二类正交矩阵.
    现在设 `bm A` 是 `n ge 3` 阶非零实矩阵, 则
  1. `bm A` 是第一类正交矩阵当且仅当 `bm A^T = bm A^**`;
  2. `bm A` 是第二类正交矩阵当且仅当 `bm A^T = -bm A^**`.

只证第一小题的充分性. 于 `bm(A^T A) = bm(A^** A) = |bm A|bm I` 两边取行列式有 `|bm A|^2 = |bm A|^n`. 因为 `bm A` 非零, `0 lt "tr"(bm(A^T A)) = "tr"(|bm A|bm I) = n|bm A|`. 从而 `|bm A| gt 0`, 即 `|bm A| = 1`. 于是 `bm(A^T A) = bm I`, `bm A` 为第一类正交矩阵.

Laplace 定理

[来自 简书]

子式, 余子式和代数余子式 令 `D` 为一个 `n` 阶行列式, `1 le k le n`. 在 `D` 上任意选定 `k` 行 `k` 列, 位于这些行和列的交点上的 `k^2` 个元素按原来的 "上下左右" 的次序组成一个 `k` 阶行列式 `M`, 称为 `D` 的一个 `k` 阶子式. 若 `k lt n`, 在 `D` 中划去这 `k` 行 `k` 列后, 余下的元素按原来的次序组成一个 `n-k` 阶行列式 `N`, 称为 `M` 在 `D` 中的余子式. 由定义, `M` 也是 `N` 的余子式, 因此又称 `M, N` 为一对互余的子式. 如果 `M` 的各行, 列在原行列式 `D` 中的指标为 `i_1, i_2, cdots, i_k` 和 `j_1, j_2, cdots, j_k`, 则称 `(-1)^(sum_(t=1)^k (i_t + j_t)) N` 为 `M` 在 `D` 中的代数余子式.

行列式 `D` 的任一子式 `M` 与它的代数余子式 `A` 的乘积中的每一项都是 `D` 的展开式中的一项, 且符号一致.

  1. 假设 `M` 是 `D_(n xx n) = |a_(ij)|` 的左上方的 `k` 阶子式, 即 `M` 由 `D` 的前 `k` 行和前 `k` 列交叉处的元素组成, 则 `M` 的每一项可以写作 `(-1)^(tau(i_1 i_2 cdots i_k))` `a_(1 i_1) a_(2 i_2) cdots a_(k i_k)`, 其中 `i_1 i_2 cdots i_k` 是 `1, 2, cdots, k` 的一个排列. 而 `M` 的余子式 `N` 的每一项可以写作 `(-1)^(tau(j_1 j_2 cdots j_(n-k)))` `a_(k+1, j_1) a_(k+2, j_2) cdots a_(n, j_(n-k))`, 其中 `j_1 j_2 cdots j_(n-k)` 是 `k+1, k+2, cdots, n` 的一个排列. 两个通项相乘得 `(-1)^(tau(i_1 i_2 cdots i_k j_1 j_2 cdots j_(n-k))` `a_(1 i_1) a_(2 i_2) cdots a_(k i_k)` `a_(k+1, j_1) a_(k+2, j_2) cdots a_(n, j_(n-k))`. 上式再乘以代数余子式的符号 `(-1)^(sum_(t=1)^k (t+t)) = 1` 即为 `D` 的展开式中的一项, 且符号一致.
  2. 下证一般情形, 设 `M` 位于 `D` 的第 `i_1, i_2, cdots, i_k` 行, 第 `j_1, j_2, cdots j_k` 列, 其中 `i_1 lt i_2 lt cdots lt i_k`, `j_1 lt j_2 lt cdots lt j_k`. 作行列的对换, 将 `M` 移到 `D` 的左上角: 先把第 `i_1` 行依次与第 `i_1-1, i_1-2, cdots, 2, 1` 行对换, 经过 `i_1-1` 次对换而将它换到第 1 行. 再将第 `i_2` 行依次与第 `i_2-1, i_2-2, cdots, 2` 行对换, 经过 `i_2-2` 次对换而将它换到第 2 行... 如此下去, 经过 `sum_(t=1)^k (i_t-t)` 次对换, 把第 `i_1, i_2, cdots, i_k` 行换到第 `1, 2, cdots, k` 行. 类似地经过 `sum_(t=1)^k (j_t-t)` 次列对换, 可将第 `j_1, j_2, cdots, j_k` 列换到第 `1, 2, cdots, k` 列. 从而变换前后, 行列式 `D` 的值相差一个符号 `(-1)^(sum_(t=1)^k (i_t+j_t))`. 恰为 `M` 的代数余子式前的符号因子, 因此 `M` 与它的代数余子式乘积中的每一项都是 `D` 的展开式中的一项, 且符号一致.

Laplace 定理 `n` 阶行列式的值等于它的任意 `k` (`1 le k le n-1`) 行 (列) 中所含有的全体 `k` 阶子式与相应代数余子式的乘积的和.

由行列式行和列的对称性, 只证行的情形. 设 `n` 阶行列式 `D` 中取定 `k` 行后得到的子式为 `M_i`, 相应的代数余子式为 `A_i`, `i = 1, 2, cdots, s`. 下证 `D = sum_(i=1)^s M_i A_i`. 显然, `M_i A_i` 中每一项都是 `D` 的展开式中的一项且符号一致, 且 `i!=j` 时, `M_i A_i` 与 `M_j A_j` 无公共项. 因此要证结论成立, 只需指出等式左右含展开式的项数相等. 由于 `n` 阶行列式的展开式有 `n!` 项, 故等式左端有 `n!` 项. 而由子式的取法知 `s = (n;k)`, 故等式右端的项数为 `(n;k) k! (n-k)! = n!`. 证毕.

Cramer 法则

我们从一个简单例子来看, 如何用行列式求解线性方程组.

三元一次方程组的 Cramer 法则 [2018.10] 设 `{ a_11 x_1 + a_12 x_2 + a_13 x_3 = b_1; a_21 x_1 + a_22 x_2 + a_23 x_3 = b_2; a_31 x_1 + a_32 x_2 + a_33 x_3 = b_3; :}` 于是 `|b_1, a_12, a_13; b_2, a_22, a_23; b_3, a_32, a_33|` `= |a_11 x_1 + a_12 x_2 + a_13 x_3, a_12, a_13; a_21 x_1 + a_22 x_2 + a_23 x_3, a_22, a_23; a_31 x_1 + a_32 x_2 + a_33 x_3, a_32, a_33|` `= |a_11 x_1, a_12, a_13; a_21 x_1, a_22, a_23; a_31 x_1, a_32, a_33|` `+ |color(red)(a_12) x_2, color(red)(a_12), a_13; color(red)(a_22) x_2, color(red)(a_22), a_23; color(red)(a_32) x_2, color(red)(a_32), a_33|` `+ |color(red)(a_13) x_3, a_12, color(red)(a_13); color(red)(a_23) x_3, a_22, color(red)(a_23); color(red)(a_33) x_3, a_32, color(red)(a_33)|` `= |a_11, a_12, a_13; a_21, a_22, a_23; a_31, a_32, a_33| x_1 + 0 + 0`. 后两项等于零是因为它们存在成比例的列. 最后, 系数行列式不为零时, 将它除到分母上得到 `x_1 = |b_1, a_12, a_13; b_2, a_22, a_23; b_3, a_32, a_33| // |a_11, a_12, a_13; a_21, a_22, a_23; a_31, a_32, a_33|`. 本节我们将这种方法推广到 `n` 元线性方程组, 称为 Cramer 法则.

令 `bm A = (a_(i j))_(n xx n)`, 以 `A_(i j)` 记元素 `a_(i j)` 的代数余子式, 则 `sum_(k=1)^n a_(i k) A_(j k) = delta_(i j) |bm A|`, `quad sum_(k=1)^n a_(k i) A_(k j) = delta_(i j) |bm A|`, `quad i,j in [n]`.

只证第一式. 若 `i = j`, 等式左边等于 `|bm A|` 沿第 `i` 行展开的结果, 自然等于右边. 若 `i != j`, 等式左边等于将 `|bm A|` 的第 `j` 行用第 `i` 行的拷贝替换后, 沿第 `j` 行展开的结果. 由于这个替换后的行列式的第 `j` 行与第 `i` 行完全相同, 所以它等于零.

如果 `|bm A| != 0`, 则称方阵 `bm A` 非奇异.

设 `bm A` 是阶数 `ge 2` 的方阵, `bm A^** := [ A_11,A_21,cdots,A_(n1); A_12,A_22,cdots,A_(n2); vdots,vdots, ,vdots; A_(1n),A_(2n),cdots,A_(n n); ]` 称为 `bm A` 的伴随矩阵 (adjugate matrix), 也记为 `"adj" bm A`. 注意伴随矩阵的 `i j` 元等于 `a_(j i)` 的代数余子式.

方阵逆的结构公式 方阵 `bm A` 可逆当且仅当它非奇异, 此时有 `bm A^-1 = (bm A^**)/|bm A|`. 这个公式适用于计算二阶矩阵的逆: `[a,b;c,d]^-1` `= 1/(a d-b c) [d,-b;-c,a]`, 但是当矩阵的阶数较大时, 计算量很大, 所以并不适用.

"`rArr`": 若 `bm A` 可逆, 则存在方阵 `bm B` 使得 `bm(A B) = bm(B A) = bm I`, 从而 `|bm A||bm B| = 1`, 所以 `|bm A| != 0`.
"`lArr`": 若 `bm A` 非奇异, 利用引理计算得, `bm (A A^**) = bm (A^** A) = |bm A| bm I`, 从而得到 `bm A^-1`.

从而得到第一章注释中的推论:

若方阵 `bm A, bm B` 满足 `bm(A B) = bm I`, 则 `bm A, bm B` 都可逆, 事实上它们互逆.

若 `bm A_(n xx n)` 可逆, 则由 `bm A^** bm A = |bm A|bm I` 得到 `|bm A^**| = |bm A|^(n-1)`.

若 `bm A` 不可逆, 则 `|bm A^**| = 0`. 我们将在第三章利用秩的理论给出一个证明.

设 `bm A in bbb P^(n xx n)`, `bm X, bb 0 in bbb P^(n xx 1)`, 则齐次线性方程组 `bm(A X) = bb 0` 存在非零解当且仅当其系数矩阵 `bm A` 奇异.

    首先指出, 原方程组总是有解 `bm X = bb 0`, 称为零解.
  1. 设 `bm A` 非奇异, 即 `bm A` 可逆. 设存在 `bm X` 满足 `bm(A X) = bb 0`, 则 `bm X = bm(A^-1 A X) = bm A^-1 bb 0 = bb 0`. 即原方程只有零解.
  2. 设 `bm A` 奇异, 考虑 `bm A` 的等价标准形 `bm overset ~ A`. 我们知道, 方程组在增广矩阵的行初等变换下, 以及不涉及最后一列的列初等变换下保持同解 (涉及列初等变换时, 同解是在适当重排变量次序的意义下的). 注意到齐次线性方程组的增广矩阵的最后一列全为零, 从而原方程组可以通过上述变换变成 `bm(overset ~ A X) = bb 0`, 即它们同解.
    因为初等变换不能将一个矩阵的行列式从零变成非零, 也不能将它从非零变成零, 所以 `|bm A| = 0` 当且仅当 `bm overset ~ A` 含有零列. 设 `bm overset ~ A` 的第 `j` 列全为零, 则单位列向量 `bm epsi_j` 就是 `bm(overset ~ A X) = bb 0` 的一个非零解, 从而也是原方程组的一个非零解.

Cramer 法则 设 `bm A in bbb P^(n xx n)`, `bm X, bm B in bbb P^(n xx 1)`, 则线性方程组 `bm(A X) = bm B` 有唯一解当且仅当 `bm A` 非奇异, 且此时解的表达式为: `bm X = bm(A^-1 B)` `= 1/|bm A| (|bm A_1|, |bm A_2|, cdots, |bm A_n|)^T`, 其中 `bm A_i` 是用 `bm B` 取代 `bm A` 的第 `i` 列所得的矩阵, `i in [n]`.

  1. "`lArr`": 设 `bm A` 非奇异, 即 `bm A` 可逆, `bm X = bm A^-1 bm B` 即为方程组的一个解, 这证明了解的存在性. 设又有 `bm Y` 满足 `bm(A Y) = bm B`, 则 `bm Y = bm(A^-1 A Y) = bm(A^-1 B) = bm X`. 这证明了解的唯一性.
  2. "`rArr`": 设 `bm X` 是方程组 `bm(A X) = bm B` 的唯一解, 反设 `bm A` 奇异, 则由, 存在 `bm Y != bb 0` 使得 `bm(A Y) = bb 0`. 从而 `bm(A(X+Y)) = bm(A X) + bm(A Y) = bm B`, 而 `bm(X+Y) != bm X`, 与解的唯一性矛盾. 故 `bm A` 非奇异.
  3. 下面证明解的第二个表达式. 首先将 `|bm A_i|` 按第 `i` 列展开得 `|bm A_i| = (A_(1 i), A_(2 i), cdots, A_(n i)) bm B`. 从而 `1/|bm A| (|bm A_1|, |bm A_2|, cdots, |bm A_n|)^T` `= 1/|bm A| [ (A_11, A_21, cdots, A_(n1))bm B; (A_12, A_22, cdots, A_(n2))bm B; vdots; (A_(1n), A_(2n), cdots, A_(n n))bm B; ]` `= 1/|bm A| bm A^** bm B` `= bm(A^-1 B)`.
  1. 解的表达式的另一证法. 设 `bm epsi_i` 为第 `i` 个分量等于 1, 其余分量等于 0 的 `n` 维单位列向量, 则 `bm A` 的 `n` 个列向量可以写成 `bm(A epsi_1), bm(A epsi_2), cdots, bm(A epsi_n)`. 若存在列向量 `bm X = (x_1, x_2, cdots, x_n)^T` 使得 `bm(A X) = bm B`, 则对任意 `i in [n]`, `bm A(bm epsi_1, cdots, bm epsi_(i-1), bm X, bm epsi_(i+1), cdots, bm epsi_n)` `= (bm(A epsi_1), cdots, bm(A epsi_(i-1)), bm(A X), bm(A epsi_(i+1)), cdots, bm(A epsi_n))` `= bm A_i`. 上式两边取行列式, 注意 `|bm epsi_1, cdots, bm epsi_(i-1), bm X, bm epsi_(i+1), cdots, bm epsi_n| = x_i`, `x_i = |bm A_i|/|bm A|`, `quad i in [n]`.
  2. 解的表达式的又一证法. 记 `bm A = (bm alpha_1, bm alpha_2, cdots, bm alpha_n)`, 若存在列向量 `bm X = (x_1, x_2, cdots, x_n)^T` 使得 `bm(A X) = bm B`, 则对任意 `i in [n]`, `|bm A_i|` `= |bm alpha_1, cdots, bm alpha_(i-1), bm(A X), bm alpha_(i+1), cdots, bm alpha_n|` `= |bm alpha_1, cdots, bm alpha_(i-1), sum_(j=1)^n x_j bm alpha_j, bm alpha_(i+1), cdots, bm alpha_n|` `= sum_(j=1)^n |bm alpha_1, cdots, bm alpha_(i-1), bm alpha_j, bm alpha_(i+1), cdots, bm alpha_n| x_j` `= |bm A| x_i`.

用 Cramer 法则求解二元一次方程组 `{ a x + b y = u; c x + d y = v; :}` 得 `(x,y) = 1/(a d-b c)(|u,b;v,d|, |a,u;c,v|)`. 但当方程组规模较大时, Cramer 法则的计算量很大.