前置技能
行列式
定義
對於一個 n × n n \times n n × n 的矩陣 A A A ,記它第 i i i 行第 j j j 列的元素爲 a i , j a_{i, j} a i , j ,以及一個 1 ∼ n 1 \sim n 1 ∼ n 的排列 p p p ,記 λ A ( p ) = ( − 1 ) τ ( p ) ∏ i = 1 n a i , p i \lambda_A(p) = (-1) ^ {\tau(p)} \prod_{i = 1}^{n} a_{i, p_i} λ A ( p ) = ( − 1 ) τ ( p ) i = 1 ∏ n a i , p i (其中 τ ( p ) \tau(p) τ ( p ) 是 p p p 的逆序對個數)則 ∣ A ∣ = det A = ∑ p λ A ( p ) = ∑ p ( ( − 1 ) τ ( p ) ∏ i = 1 n a i , p i ) |A| = \det A = \sum_{p} \lambda_A(p) = \sum_{p} \left( (-1) ^ {\tau(p)} \prod_{i = 1}^{n} a_{i, p_i} \right) ∣ A ∣ = det A = p ∑ λ A ( p ) = p ∑ ( ( − 1 ) τ ( p ) i = 1 ∏ n a i , p i ) (其中 ∣ A ∣ |A| ∣ A ∣ 和 det A \det A det A 都是 A A A 的行列式的意思,後文有時爲了便於區分行列式和絕對值會使用 det A \det A det A ,其餘大部分時候使用 ∣ A ∣ |A| ∣ A ∣ )顯然行列式運算結果是數量。
簡單理解一下發現這樣的計算方法的時間複雜度是 O ( n ⋅ log n ⋅ n ! ) O(n \cdot \log n \cdot n!) O ( n ⋅ log n ⋅ n ! ) 。因此這個定義沒什麼用
性質
除了少數幾個,名字基本都是亂編的
拉普拉斯展開
對於一個 n × n n \times n n × n 的矩陣 A A A 和任意一個 1 ≤ i ≤ n 1 \leq i \leq n 1 ≤ i ≤ n ,有 ∣ A ∣ = ∑ j = 1 n ( − 1 ) i + j a i , j ∣ A i , j ∣ |A| = \sum_{j = 1}^{n} (-1)^{i + j} a_{i, j} |A_{i, j}| ∣ A ∣ = j = 1 ∑ n ( − 1 ) i + j a i , j ∣ A i , j ∣ 其中 A i , j A_{i, j} A i , j 指矩陣 A A A 刪去第 i i i 行和第 j j j 列的所有元素後形成的一個 ( n − 1 ) × ( n − 1 ) (n - 1) \times (n - 1) ( n − 1 ) × ( n − 1 ) 的矩陣。這個計算式稱爲對第 i i i 行進行拉普拉斯展開。
證明:
根據定義每個 λ A ( p ) \lambda_A(p) λ A ( p ) 一定有一個因子 x x x 滿足 x ∈ { a i , 1 , a i , 2 , ⋯ , a i , n } x \in \{a_{i, 1}, a_{i, 2}, \cdots, a_{i, n}\} x ∈ { a i , 1 , a i , 2 , ⋯ , a i , n } ,枚舉 j j j 得到這個因子 a i , j a_{i, j} a i , j 和滿足 p i = j p_i = j p i = j 的排列 p p p ,然後將這個 p i p_i p i 刪除,並把 p p p 中所有大於 j j j 的元素減一得到 q q q (q q q 是 1 ∼ n − 1 1 \sim n-1 1 ∼ n − 1 的排列),於是在 n , i , j n, i, j n , i , j 確定時有了一個 p p p 與 q q q 之間的一一對應的函數關係。
例如,當 n = 3 , i = 1 , j = 2 n = 3, i = 1, j = 2 n = 3 , i = 1 , j = 2 時,滿足 p 1 = 2 p_1 = 2 p 1 = 2 的 p p p 有 { 2 , 1 , 3 } , { 2 , 3 , 1 } \{2, 1, 3\}, \{2, 3, 1\} { 2 , 1 , 3 } , { 2 , 3 , 1 } ,將 2 2 2 刪除,得到{ 1 , 3 } , { 3 , 1 } \{1, 3\}, \{3, 1\} { 1 , 3 } , { 3 , 1 } ,然後將 3 3 3 減一,得到 q q q 爲 { 1 , 2 } \{1, 2\} { 1 , 2 } 和 { 2 , 1 } \{2, 1\} { 2 , 1 } ;根據 n = 3 , i = 1 , j = 2 n = 3, i = 1, j = 2 n = 3 , i = 1 , j = 2 ,亦可將 q q q 還原爲 p p p 。
令 ξ ( p ) = q \xi(p) = q ξ ( p ) = q ,那麼 ∣ ∑ p λ A ( p ) ⋅ [ j = p i ] a i , j ∣ = ∣ ∑ p λ A i , j ( ξ ( p ) ) ⋅ [ j = p i ] ∣ \left| \frac{\sum_{p} \lambda_A(p) \cdot [j = p_i]}{a_{i, j}} \right| = \left|\sum_{p} \lambda_{A_{i, j}}(\xi(p)) \cdot [j = p_i] \right| ∣ ∣ ∣ ∣ a i , j ∑ p λ A ( p ) ⋅ [ j = p i ] ∣ ∣ ∣ ∣ = ∣ ∣ ∣ ∣ ∣ p ∑ λ A i , j ( ξ ( p ) ) ⋅ [ j = p i ] ∣ ∣ ∣ ∣ ∣ 右邊變爲直接枚舉 ξ ( p ) \xi(p) ξ ( p ) ,即 ∣ ∑ p λ A ( p ) ⋅ [ j = p i ] a i , j ∣ = ∣ ∑ q λ A i , j ( q ) ∣ = ∣ det A i , j ∣ \left| \frac{\sum_{p} \lambda_A(p) \cdot [j = p_i]}{a_{i, j}} \right| = \left|\sum_{q} \lambda_{A_{i, j}}(q) \right| = |\det A_{i, j}| ∣ ∣ ∣ ∣ a i , j ∑ p λ A ( p ) ⋅ [ j = p i ] ∣ ∣ ∣ ∣ = ∣ ∣ ∣ ∣ ∣ q ∑ λ A i , j ( q ) ∣ ∣ ∣ ∣ ∣ = ∣ det A i , j ∣ ∣ ∑ p λ A ( p ) ⋅ [ j = p i ] ∣ = ∣ a i , j ⋅ det A i , j ∣ \left| \sum_{p} \lambda_A(p) \cdot [j = p_i] \right| = |a_{i, j} \cdot \det A_{i, j}| ∣ ∣ ∣ ∣ ∣ p ∑ λ A ( p ) ⋅ [ j = p i ] ∣ ∣ ∣ ∣ ∣ = ∣ a i , j ⋅ det A i , j ∣ 再考慮正負號,即 τ ( p ) \tau(p) τ ( p ) 與 τ ( ξ ( p ) ) \tau(\xi(p)) τ ( ξ ( p ) ) 的奇偶性的差別,這取決於 p i p_i p i 前面大於 j j j 的數量和 p i p_i p i 後面小於 j j j 的數量,即 ∑ k = 1 i − 1 [ p k > j ] + ∑ k = i + 1 n [ p k < j ] = ∑ k = 1 i − 1 [ p k > j ] + ( j − 1 − ∑ k = 1 i − 1 [ p k < j ] ) = ∑ k = 1 i − 1 [ p k > j ] + j − 1 − ( i − 1 − ∑ k = 1 i − 1 [ p k > j ] ) = 2 ∑ k = 1 i − 1 [ p k > j ] + ( i + j ) ≡ i + j m o d 2 \begin{aligned} & \sum_{k = 1}^{i - 1} [p_k > j] + \sum_{k = i + 1}^{n}[p_k < j] \\ =& \sum_{k = 1}^{i - 1} [p_k > j] + \left( j - 1 - \sum_{k = 1}^{i - 1}[p_k < j] \right) \\ =& \sum_{k = 1}^{i - 1} [p_k > j] + j - 1 - \left( i - 1 - \sum_{k = 1}^{i - 1}[p_k > j] \right) \\ =& 2\sum_{k = 1}^{i - 1} [p_k > j] + (i + j) \equiv i + j \mod 2\end{aligned} = = = k = 1 ∑ i − 1 [ p k > j ] + k = i + 1 ∑ n [ p k < j ] k = 1 ∑ i − 1 [ p k > j ] + ( j − 1 − k = 1 ∑ i − 1 [ p k < j ] ) k = 1 ∑ i − 1 [ p k > j ] + j − 1 − ( i − 1 − k = 1 ∑ i − 1 [ p k > j ] ) 2 k = 1 ∑ i − 1 [ p k > j ] + ( i + j ) ≡ i + j m o d 2 於是 τ ( p ) = ( − 1 ) i + j τ ( ξ ( p ) ) \tau(p) = (-1)^{i + j} \tau(\xi(p)) τ ( p ) = ( − 1 ) i + j τ ( ξ ( p ) ) ,則∑ p λ A ( p ) ⋅ [ j = p i ] = ( − 1 ) i + j ⋅ a i , j ⋅ det A i , j \sum_{p} \lambda_A(p) \cdot [j = p_i] = (-1)^{i + j} \cdot a_{i, j} \cdot \det A_{i, j} p ∑ λ A ( p ) ⋅ [ j = p i ] = ( − 1 ) i + j ⋅ a i , j ⋅ det A i , j
於是 ∣ A ∣ = ∑ p λ A ( p ) = ∑ j = 1 n ∑ p λ A ( p ) ⋅ [ j = p i ] = ∑ j = 1 n ( − 1 ) i + j a i , j ∣ A i , j ∣ |A| = \sum_{p} \lambda_A(p) = \sum_{j = 1}^{n} \sum_{p} \lambda_A(p) \cdot [j = p_i] = \sum_{j = 1}^{n} (-1)^{i + j} a_{i, j} |A_{i, j}| ∣ A ∣ = p ∑ λ A ( p ) = j = 1 ∑ n p ∑ λ A ( p ) ⋅ [ j = p i ] = j = 1 ∑ n ( − 1 ) i + j a i , j ∣ A i , j ∣
(百度百科“拉普拉斯展開”中有一個看不怎麼懂的高端證明,但比較簡潔,emmm 感覺上跟我這個自己 yy 的證明可能差不多)
線性性
可乘性
對於任意 1 ≤ i ≤ n 1 \leq i \leq n 1 ≤ i ≤ n 和 k k k ,若 A = ( a 1 , 1 a 1 , 2 ⋯ a 1 , n ⋮ ⋮ ⋱ ⋮ k a i , 1 k a i , 2 ⋯ k a i , n ⋮ ⋮ ⋱ ⋮ a n , 1 a n , 2 ⋯ a n , n ) A = \begin{pmatrix}
a_{1, 1} & a_{1, 2} & \cdots & a_{1, n} \\
\vdots & \vdots & \ddots & \vdots \\
ka_{i, 1} & ka_{i, 2} & \cdots & ka_{i, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n, 1} & a_{n, 2} & \cdots & a_{n, n}
\end{pmatrix} A = ⎝ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎛ a 1 , 1 ⋮ k a i , 1 ⋮ a n , 1 a 1 , 2 ⋮ k a i , 2 ⋮ a n , 2 ⋯ ⋱ ⋯ ⋱ ⋯ a 1 , n ⋮ k a i , n ⋮ a n , n ⎠ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎞ ,B = ( a 1 , 1 a 1 , 2 ⋯ a 1 , n ⋮ ⋮ ⋱ ⋮ a i , 1 a i , 2 ⋯ a i , n ⋮ ⋮ ⋱ ⋮ a n , 1 a n , 2 ⋯ a n , n ) B = \begin{pmatrix}
a_{1, 1} & a_{1, 2} & \cdots & a_{1, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i, 1} & a_{i, 2} & \cdots & a_{i, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n, 1} & a_{n, 2} & \cdots & a_{n, n}
\end{pmatrix} B = ⎝ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎛ a 1 , 1 ⋮ a i , 1 ⋮ a n , 1 a 1 , 2 ⋮ a i , 2 ⋮ a n , 2 ⋯ ⋱ ⋯ ⋱ ⋯ a 1 , n ⋮ a i , n ⋮ a n , n ⎠ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎞ ,則 ∣ A ∣ = k ∣ B ∣ |A| = k|B| ∣ A ∣ = k ∣ B ∣ 。
證明:
根據定義,對於每個 p p p ,λ A ( p ) = k ⋅ λ B ( p ) \lambda_A(p) = k \cdot \lambda_B(p) λ A ( p ) = k ⋅ λ B ( p ) ,得證。
可加性
對於任意 1 ≤ i ≤ n 1 \leq i \leq n 1 ≤ i ≤ n 和 k k k ,∣ a 1 , 1 a 1 , 2 ⋯ a 1 , n ⋮ ⋮ ⋱ ⋮ a i − 1 , 1 a i − 1 , 2 ⋯ a i − 1 , n a i , 1 + b i , 1 a i , 2 + b i , 2 ⋯ a i , n + b i , n a i + 1 , 1 a i + 1 , 2 ⋯ a i + 1 , n ⋮ ⋮ ⋱ ⋮ a n , 1 a n , 2 ⋯ a n , n ∣ = ∣ a 1 , 1 a 1 , 2 ⋯ a 1 , n ⋮ ⋮ ⋱ ⋮ a i − 1 , 1 a i − 1 , 2 ⋯ a i − 1 , n a i , 1 a i , 2 ⋯ a i , n a i + 1 , 1 a i + 1 , 2 ⋯ a i + 1 , n ⋮ ⋮ ⋱ ⋮ a n , 1 a n , 2 ⋯ a n , n ∣ + ∣ a 1 , 1 a 1 , 2 ⋯ a 1 , n ⋮ ⋮ ⋱ ⋮ a i − 1 , 1 a i − 1 , 2 ⋯ a i − 1 , n b i , 1 b i , 2 ⋯ b i , n a i + 1 , 1 a i + 1 , 2 ⋯ a i + 1 , n ⋮ ⋮ ⋱ ⋮ a n , 1 a n , 2 ⋯ a n , n ∣ \begin{vmatrix}
a_{1, 1} & a_{1, 2} & \cdots & a_{1, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i - 1, 1} & a_{i - 1, 2} & \cdots & a_{i - 1, n} \\
a_{i, 1} + b_{i, 1} & a_{i, 2} + b_{i, 2} & \cdots & a_{i, n} + b_{i, n} \\
a_{i + 1, 1} & a_{i + 1, 2} & \cdots & a_{i + 1, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n, 1} & a_{n, 2} & \cdots & a_{n, n}
\end{vmatrix} = \begin{vmatrix}
a_{1, 1} & a_{1, 2} & \cdots & a_{1, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i - 1, 1} & a_{i - 1, 2} & \cdots & a_{i - 1, n} \\
a_{i, 1} & a_{i, 2} & \cdots & a_{i, n} \\
a_{i + 1, 1} & a_{i + 1, 2} & \cdots & a_{i + 1, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n, 1} & a_{n, 2} & \cdots & a_{n, n}
\end{vmatrix} + \begin{vmatrix}
a_{1, 1} & a_{1, 2} & \cdots & a_{1, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i - 1, 1} & a_{i - 1, 2} & \cdots & a_{i - 1, n} \\
b_{i, 1} & b_{i, 2} & \cdots & b_{i, n} \\
a_{i + 1, 1} & a_{i + 1, 2} & \cdots & a_{i + 1, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n, 1} & a_{n, 2} & \cdots & a_{n, n}
\end{vmatrix} ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ a 1 , 1 ⋮ a i − 1 , 1 a i , 1 + b i , 1 a i + 1 , 1 ⋮ a n , 1 a 1 , 2 ⋮ a i − 1 , 2 a i , 2 + b i , 2 a i + 1 , 2 ⋮ a n , 2 ⋯ ⋱ ⋯ ⋯ ⋯ ⋱ ⋯ a 1 , n ⋮ a i − 1 , n a i , n + b i , n a i + 1 , n ⋮ a n , n ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ = ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ a 1 , 1 ⋮ a i − 1 , 1 a i , 1 a i + 1 , 1 ⋮ a n , 1 a 1 , 2 ⋮ a i − 1 , 2 a i , 2 a i + 1 , 2 ⋮ a n , 2 ⋯ ⋱ ⋯ ⋯ ⋯ ⋱ ⋯ a 1 , n ⋮ a i − 1 , n a i , n a i + 1 , n ⋮ a n , n ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ + ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ a 1 , 1 ⋮ a i − 1 , 1 b i , 1 a i + 1 , 1 ⋮ a n , 1 a 1 , 2 ⋮ a i − 1 , 2 b i , 2 a i + 1 , 2 ⋮ a n , 2 ⋯ ⋱ ⋯ ⋯ ⋯ ⋱ ⋯ a 1 , n ⋮ a i − 1 , n b i , n a i + 1 , n ⋮ a n , n ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣
證明:
對第 i i i 行拉普拉斯展開即證。
不重性
對於 n × n ( n > 1 ) n \times n (n > 1) n × n ( n > 1 ) 的矩陣 A A A ,若存在 1 ≤ i ≤ n , 1 ≤ j ≤ n , j ≠ j 1 \leq i \leq n, 1 \leq j \leq n, j \neq j 1 ≤ i ≤ n , 1 ≤ j ≤ n , j = j 使得對於任意 1 ≤ k ≤ n 1 \leq k \leq n 1 ≤ k ≤ n 都有 a i , k = a j , k a_{i, k} = a_{j, k} a i , k = a j , k ,即矩陣中某兩行對應相等,則 ∣ A ∣ = 0 |A| = 0 ∣ A ∣ = 0 。
證明:
若某排列 p p p 滿足 p x = i , p y = j ( x < y ) p_x = i, p_y = j (x < y) p x = i , p y = j ( x < y ) ,記 q q q 爲 p p p 交換第 x , y x, y x , y 個元素後得到的排列,即 q y = i , q x = j ( x < y ) q_y = i, q_x = j (x < y) q y = i , q x = j ( x < y ) ,那麼 λ A ( p ) = − λ A ( q ) \lambda_A(p) = -\lambda_A(q) λ A ( p ) = − λ A ( q ) ,因爲兩者逆序對個數相差 1 1 1 。
於是將所有 1 ∼ n 1 \sim n 1 ∼ n 的排列這樣兩兩配對,即可使所有 λ A ( p ) \lambda_A(p) λ A ( p ) 抵消爲 0 0 0 ,得證。
可倍加性
對於任意 1 ≤ i ≤ n , 1 ≤ j ≤ n , j ≠ j 1 \leq i \leq n, 1 \leq j \leq n, j \neq j 1 ≤ i ≤ n , 1 ≤ j ≤ n , j = j :
∣ a 1 , 1 a 1 , 2 ⋯ a 1 , n ⋮ ⋮ ⋱ ⋮ a i , 1 a i , 2 ⋯ a i , n ⋮ ⋮ ⋱ ⋮ a n , 1 a n , 2 ⋯ a n , n ∣ = ∣ a 1 , 1 a 1 , 2 ⋯ a 1 , n ⋮ ⋮ ⋱ ⋮ a i , 1 + k a j , 1 a i , 2 + k a j , 2 ⋯ a i , n + k a j , n ⋮ ⋮ ⋱ ⋮ a n , 1 a n , 2 ⋯ a n , n ∣ \begin{vmatrix}
a_{1, 1} & a_{1, 2} & \cdots & a_{1, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i, 1} & a_{i, 2} & \cdots & a_{i, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n, 1} & a_{n, 2} & \cdots & a_{n, n}
\end{vmatrix} = \begin{vmatrix}
a_{1, 1} & a_{1, 2} & \cdots & a_{1, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i, 1} + ka_{j, 1} & a_{i, 2} + ka_{j, 2} & \cdots & a_{i, n} + ka_{j, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n, 1} & a_{n, 2} & \cdots & a_{n, n}
\end{vmatrix} ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ a 1 , 1 ⋮ a i , 1 ⋮ a n , 1 a 1 , 2 ⋮ a i , 2 ⋮ a n , 2 ⋯ ⋱ ⋯ ⋱ ⋯ a 1 , n ⋮ a i , n ⋮ a n , n ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ = ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ a 1 , 1 ⋮ a i , 1 + k a j , 1 ⋮ a n , 1 a 1 , 2 ⋮ a i , 2 + k a j , 2 ⋮ a n , 2 ⋯ ⋱ ⋯ ⋱ ⋯ a 1 , n ⋮ a i , n + k a j , n ⋮ a n , n ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣
證明:
∣ a 1 , 1 a 1 , 2 ⋯ a 1 , n ⋮ ⋮ ⋱ ⋮ a i , 1 + k a j , 1 a i , 2 + k a j , 2 ⋯ a i , n + k a j , n ⋮ ⋮ ⋱ ⋮ a n , 1 a n , 2 ⋯ a n , n ∣ = ∣ a 1 , 1 a 1 , 2 ⋯ a 1 , n ⋮ ⋮ ⋱ ⋮ a i , 1 a i , 2 ⋯ a i , n ⋮ ⋮ ⋱ ⋮ a n , 1 a n , 2 ⋯ a n , n ∣ + ∣ a 1 , 1 a 1 , 2 ⋯ a 1 , n ⋮ ⋮ ⋱ ⋮ k a j , 1 k a j , 2 ⋯ k a j , n ⋮ ⋮ ⋱ ⋮ a n , 1 a n , 2 ⋯ a n , n ∣ ( 可 加 性 ) = ∣ a 1 , 1 a 1 , 2 ⋯ a 1 , n ⋮ ⋮ ⋱ ⋮ a i , 1 a i , 2 ⋯ a i , n ⋮ ⋮ ⋱ ⋮ a n , 1 a n , 2 ⋯ a n , n ∣ + k ∣ a 1 , 1 a 1 , 2 ⋯ a 1 , n ⋮ ⋮ ⋱ ⋮ a j , 1 a j , 2 ⋯ a j , n ⋮ ⋮ ⋱ ⋮ a n , 1 a n , 2 ⋯ a n , n ∣ ( 線 性 性 ) = ∣ a 1 , 1 a 1 , 2 ⋯ a 1 , n ⋮ ⋮ ⋱ ⋮ a i , 1 a i , 2 ⋯ a i , n ⋮ ⋮ ⋱ ⋮ a n , 1 a n , 2 ⋯ a n , n ∣ + 0 ( 不 重 性 ) = ∣ a 1 , 1 a 1 , 2 ⋯ a 1 , n ⋮ ⋮ ⋱ ⋮ a i , 1 a i , 2 ⋯ a i , n ⋮ ⋮ ⋱ ⋮ a n , 1 a n , 2 ⋯ a n , n ∣ \begin{aligned} & \begin{vmatrix}
a_{1, 1} & a_{1, 2} & \cdots & a_{1, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i, 1} + ka_{j, 1} & a_{i, 2} + ka_{j, 2} & \cdots & a_{i, n} + ka_{j, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n, 1} & a_{n, 2} & \cdots & a_{n, n}
\end{vmatrix} \\ =& \begin{vmatrix}
a_{1, 1} & a_{1, 2} & \cdots & a_{1, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i, 1} & a_{i, 2} & \cdots & a_{i, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n, 1} & a_{n, 2} & \cdots & a_{n, n}
\end{vmatrix} + \begin{vmatrix}
a_{1, 1} & a_{1, 2} & \cdots & a_{1, n} \\
\vdots & \vdots & \ddots & \vdots \\
ka_{j, 1} & ka_{j, 2} & \cdots & ka_{j, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n, 1} & a_{n, 2} & \cdots & a_{n, n}
\end{vmatrix} & (可加性) \\ =& \begin{vmatrix}
a_{1, 1} & a_{1, 2} & \cdots & a_{1, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i, 1} & a_{i, 2} & \cdots & a_{i, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n, 1} & a_{n, 2} & \cdots & a_{n, n}
\end{vmatrix} + k\begin{vmatrix}
a_{1, 1} & a_{1, 2} & \cdots & a_{1, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{j, 1} & a_{j, 2} & \cdots & a_{j, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n, 1} & a_{n, 2} & \cdots & a_{n, n}
\end{vmatrix} & (線性性) \\ =& \begin{vmatrix}
a_{1, 1} & a_{1, 2} & \cdots & a_{1, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i, 1} & a_{i, 2} & \cdots & a_{i, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n, 1} & a_{n, 2} & \cdots & a_{n, n}
\end{vmatrix} + 0 & (不重性) \\ =& \begin{vmatrix}
a_{1, 1} & a_{1, 2} & \cdots & a_{1, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i, 1} & a_{i, 2} & \cdots & a_{i, n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n, 1} & a_{n, 2} & \cdots & a_{n, n}
\end{vmatrix} \end{aligned} = = = = ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ a 1 , 1 ⋮ a i , 1 + k a j , 1 ⋮ a n , 1 a 1 , 2 ⋮ a i , 2 + k a j , 2 ⋮ a n , 2 ⋯ ⋱ ⋯ ⋱ ⋯ a 1 , n ⋮ a i , n + k a j , n ⋮ a n , n ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ a 1 , 1 ⋮ a i , 1 ⋮ a n , 1 a 1 , 2 ⋮ a i , 2 ⋮ a n , 2 ⋯ ⋱ ⋯ ⋱ ⋯ a 1 , n ⋮ a i , n ⋮ a n , n ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ + ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ a 1 , 1 ⋮ k a j , 1 ⋮ a n , 1 a 1 , 2 ⋮ k a j , 2 ⋮ a n , 2 ⋯ ⋱ ⋯ ⋱ ⋯ a 1 , n ⋮ k a j , n ⋮ a n , n ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ a 1 , 1 ⋮ a i , 1 ⋮ a n , 1 a 1 , 2 ⋮ a i , 2 ⋮ a n , 2 ⋯ ⋱ ⋯ ⋱ ⋯ a 1 , n ⋮ a i , n ⋮ a n , n ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ + k ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ a 1 , 1 ⋮ a j , 1 ⋮ a n , 1 a 1 , 2 ⋮ a j , 2 ⋮ a n , 2 ⋯ ⋱ ⋯ ⋱ ⋯ a 1 , n ⋮ a j , n ⋮ a n , n ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ a 1 , 1 ⋮ a i , 1 ⋮ a n , 1 a 1 , 2 ⋮ a i , 2 ⋮ a n , 2 ⋯ ⋱ ⋯ ⋱ ⋯ a 1 , n ⋮ a i , n ⋮ a n , n ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ + 0 ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ a 1 , 1 ⋮ a i , 1 ⋮ a n , 1 a 1 , 2 ⋮ a i , 2 ⋮ a n , 2 ⋯ ⋱ ⋯ ⋱ ⋯ a 1 , n ⋮ a i , n ⋮ a n , n ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ( 可 加 性 ) ( 線 性 性 ) ( 不 重 性 )
轉置不變性
任意一個 n × n n \times n n × n 的矩陣 A A A ,滿足 ∣ A T ∣ = ∣ A ∣ |A^T| = |A| ∣ A T ∣ = ∣ A ∣ 。A T A^T A T 表示矩陣 A A A 的轉置,即 a i , j → a j , i a_{i, j} \to a_{j, i} a i , j → a j , i (換句話說,將 A A A 沿“左上 - 右下”對角線翻折即得到 A T A^T A T ),下同。
證明:
對於一個排列 p p p ,根據轉置的定義,令 ξ ( p ) = q ( q p i = i ) \xi(p) = q\ (q_{p_i} = i) ξ ( p ) = q ( q p i = i ) ,那麼 λ A ( p ) = λ A T ( ξ ( p ) ) \lambda_A(p) = \lambda_{A^T}(\xi(p)) λ A ( p ) = λ A T ( ξ ( p ) ) 。考慮 τ ( p ) \tau(p) τ ( p ) 和 τ ( ξ ( p ) ) \tau(\xi(p)) τ ( ξ ( p ) ) 的關係:
把 A i , p i ( 1 ≤ i ≤ n ) A_{i, p_i}\ (1 \leq i \leq n) A i , p i ( 1 ≤ i ≤ n ) 記做特殊點,令 T p ( i ) \Tau_p(i) T p ( i ) 表示 A i , p i A_{i, p_i} A i , p i 的左下方的特殊點數量,T p ′ ( i ) \Tau'_p(i) T p ′ ( i ) 表示A i , p i A_{i, p_i} A i , p i 的右上方的特殊點數量,則 τ ( p ) = ∑ i = 1 n T p ( i ) = ∑ i = 1 n T p ′ ( i ) \tau(p) = \sum_{i = 1}^{n} \Tau_p(i) = \sum_{i = 1}^{n} \Tau'_p(i) τ ( p ) = ∑ i = 1 n T p ( i ) = ∑ i = 1 n T p ′ ( i ) ,由於是沿對角線翻折,所以顯然 T p ( i ) = T q ′ ( i ) \Tau_p(i) = \Tau'_q(i) T p ( i ) = T q ′ ( i ) (事實上只是把“左下方”的特殊點變到“右上方”,“右上方”變到“左下方”),於是 τ ( p ) = τ ( q ) \tau(p) = \tau(q) τ ( p ) = τ ( q ) 。
因此 λ A ( p ) = λ A T ( ξ ( p ) ) \lambda_A(p) = \lambda_{A^T}(\xi(p)) λ A ( p ) = λ A T ( ξ ( p ) ) ,得證。
可交換性
行可交換性
矩陣兩行交換,矩陣的行列式值反號。
證明:
交換 A A A 的兩行 u , v u, v u , v 可視爲將 v v v 行加到 u u u 行上(①)得到一個新矩陣 A ′ A' A ′ ,再從 A ′ A' A ′ 的 v v v 行上減去 A ′ A' A ′ 的 u u u 行(②),再將 A ′ A' A ′ 的 u u u 行全部取反(③)。根據可倍加性,① 和 ② 均不改變行列式的值,根據可乘性,③ 操作使行列式的值反號,得證。
列可交換性
矩陣兩列交換,矩陣行列式值反號。
證明:
根據轉置不變性,先轉置再用行可交換性交換兩行,再轉置回來即證。
優化行列式的計算
對矩陣 A A A 的第一行進行拉普拉斯展開可以證明:當 A A A 爲一個上三角矩陣(即任意 i > j i > j i > j ,滿足 a i , j = 0 a_{i, j} = 0 a i , j = 0 )時:∣ A ∣ = ∏ i = 1 n a i , i |A| = \prod_{i = 1}^{n} a_{i, i} ∣ A ∣ = i = 1 ∏ n a i , i 發現高斯消元用到的是可倍加性、可交換性,於是我們對 A A A 高斯消元,可以得到一個上三角矩陣,這個矩陣的對角線乘積即爲 A A A 的行列式的絕對值(可交換性會使其反號)!於是我們做到了 O ( n 3 ) O(n^3) O ( n 3 ) 求行列式的值。
矩陣樹定理
前置定義
對於一個無向圖 G = ( V , E ) G = (V, E) G = ( V , E ) ,其中 ∣ V ∣ = n |V| = n ∣ V ∣ = n (點數),∣ E ∣ = m |E| = m ∣ E ∣ = m (邊數):
給 G G G 的每條邊任意分配一個方向,則它的關聯矩陣(大小爲 m × n m \times n m × n ) B B B :b i , j = { 1 點 j 是 邊 i 的 起 點 − 1 點 j 是 邊 i 的 終 點 0 其 他 b_{i, j} = \begin{cases} 1 & 點\ j\ 是邊\ i\ 的起點 \\ -1 & 點\ j\ 是邊\ i\ 的終點 \\ 0 & 其他\end{cases} b i , j = ⎩ ⎪ ⎨ ⎪ ⎧ 1 − 1 0 點 j 是 邊 i 的 起 點 點 j 是 邊 i 的 終 點 其 他
G G G 的基爾霍夫矩陣(大小爲 n × n n \times n n × n )L L L :l i , j = { d i i = j − e i , j i ≠ j l_{i, j} = \begin{cases} d_i & i = j \\ -e_{i, j} & i \neq j\end{cases} l i , j = { d i − e i , j i = j i = j (其中 d i d_i d i 表示 i i i 號點的度,e i , j e_{i, j} e i , j 連接點 i , j i, j i , j 的邊的數量)
一些引理
轉置引理
L = B B T L = BB^T L = B B T L , B , B T L, B, B^T L , B , B T 定義如上,乘法是矩陣乘法。
證明:
按照矩陣乘法的規則展開即證。
事實上如果定義兩個序列相乘的結果是對應位置的乘積之和的話,矩陣乘法將 B B B 的列兩兩相乘得到了一個新矩陣,這個矩陣就是 L L L 。
連通性引理
引理 1
若 G G G 是一個連通圖,那麼 ∣ L ∣ = 0 |L| = 0 ∣ L ∣ = 0 。
證明:
若 G G G 是連通圖,那麼根據定義 L L L 的每一列的元素之和都爲 0 0 0 ,再根據可倍加性,將其他所有行加到某一行上,這一行的元素就全部爲零,再對這一行進行拉普拉斯展開,得到 ∣ L ∣ = 0 |L| = 0 ∣ L ∣ = 0 。
引理 2
若 G G G 不連通,則對任意 1 ≤ i ≤ n 1 \leq i \leq n 1 ≤ i ≤ n ,∣ L i , i ∣ = 0 |L_{i, i}| = 0 ∣ L i , i ∣ = 0 。
證明:
根據行列可交換性,我們將同一聯通塊的點換到一起,得到的新矩陣 L ′ L' L ′ 滿足 ∣ det L ′ ∣ = ∣ det L ∣ |\det L'| = |\det L| ∣ det L ′ ∣ = ∣ det L ∣ ,並且 L ′ L' L ′ 長這個樣子:( A 1 0 0 ⋯ 0 0 A 2 0 ⋯ 0 0 0 A 3 ⋯ 0 ⋮ ⋮ ⋮ ⋱ ⋮ 0 0 0 ⋯ A k ) \begin{pmatrix} A_1 & \bold{0} & \bold{0} & \cdots & \bold{0} \\ \bold{0} & A_2 & \bold{0} & \cdots & \bold{0} \\ \bold{0} & \bold{0} & A_3 & \cdots & \bold{0} \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ \bold{0} & \bold{0} & \bold{0} & \cdots & A_k\end{pmatrix} ⎝ ⎜ ⎜ ⎜ ⎜ ⎜ ⎛ A 1 0 0 ⋮ 0 0 A 2 0 ⋮ 0 0 0 A 3 ⋮ 0 ⋯ ⋯ ⋯ ⋱ ⋯ 0 0 0 ⋮ A k ⎠ ⎟ ⎟ ⎟ ⎟ ⎟ ⎞ (0 \bold{0} 0 代表零矩陣,k k k 是聯通塊的個數)
由於 G G G 不連通,所以 k ≥ 2 k \geq 2 k ≥ 2 ,所以 L i , i L_{i, i} L i , i 至少包含一個 A x ( 1 ≤ x ≤ k ) A_x (1 \leq x \leq k) A x ( 1 ≤ x ≤ k ) 。因爲 A x A_x A x 是一個獨立連通子圖,所以 A x A_x A x 可以經過適當操作使得其對角線上某個元素爲 0 0 0 ,進而 ∣ L i , i ∣ = 0 |L_{i, i}| = 0 ∣ L i , i ∣ = 0 。
引理 3
若 G G G 是一個樹,則對任意 1 ≤ i ≤ n 1 \leq i \leq n 1 ≤ i ≤ n ,∣ det L i , i ∣ = 1 |\det L_{i, i}| = 1 ∣ det L i , i ∣ = 1 。
證明:
將這個樹的結點拓撲排序,使得對於任意點 i i i ,去除掉所有 1 ∼ i − 1 1 \sim i - 1 1 ∼ i − 1 的點後 i i i 的度數爲 1 1 1 ,這可以通過不斷“摘掉”葉子結點實現。然後以這個順序整理矩陣 L L L 的各行得到 L ′ L' L ′ ,我們對 L ′ L' L ′ 模擬高斯消元的過程:
假設當前到了第 i i i 行。沒有消元時,由於我們拓撲排序了,那麼 l i , i ′ l'_{i, i} l i , i ′ 右邊(“右邊”指所有 l i , j ′ ( j > i ) l'_{i, j}\ (j > i) l i , j ′ ( j > i ) ,“左邊”“上面”“下面”同理)和下面有且僅有 1 1 1 個 − 1 -1 − 1 ,左邊和上面有且僅有 l i , i ′ − 1 l'_{i, i} - 1 l i , i ′ − 1 個 − 1 -1 − 1 ;由於我們用前 i − 1 i - 1 i − 1 行消掉了 l i , i ′ l'_{i, i} l i , i ′ 前面的 l i , i ′ − 1 l'_{i, i} - 1 l i , i ′ − 1 個 − 1 -1 − 1 , 並且 l i , i ′ l'_{i, i} l i , i ′ 上面有 l i , i ′ − 1 l'_{i, i} - 1 l i , i ′ − 1 個 − 1 -1 − 1 ,於是 l i , i ′ l'_{i, i} l i , i ′ 被加了 l i , i ′ − 1 l'_{i, i} - 1 l i , i ′ − 1 個 − 1 -1 − 1 ,就變成了 1 1 1 。
按這樣高斯消元下去,最後一個元素(l n , n ′ l'_{n, n} l n , n ′ ) 肯定是 0 0 0 。但我們要求的是 ∣ L i , i ∣ = ∣ L i , i ′ ∣ |L_{i, i}| = |L'_{i, i}| ∣ L i , i ∣ = ∣ L i , i ′ ∣ ,它是 L ′ L' L ′ 刪去了一行一列,因此 L i , i ′ L'_{i, i} L i , i ′ 消元過後的最後一個(l n − 1 , n − 1 ′ ′ l''_{n - 1, n - 1} l n − 1 , n − 1 ′ ′ )是 1 1 1 。於是對角線上的元素全部是 1 1 1 ,得證。
Binet - Cauchy 定理
設 A A A 是一個 n × m n \times m n × m 的矩陣,B B B 是一個 m × n m \times n m × n 的矩陣,有 ∣ A B ∣ = { 0 n > m ∣ A ∣ ⋅ ∣ B ∣ n = m ∑ 1 ≤ k 1 < k 2 < ⋯ < k n ≤ m ∣ A ( 1 , 2 , ⋯ , n ; k 1 , k 2 , ⋯ , k n ) ∣ ⋅ ∣ B ( k 1 , k 2 , ⋯ , k n ; 1 , 2 , ⋯ , n ) ∣ n < m |AB| = \begin{cases}
0 & n > m \\
|A| \cdot |B| & n = m\\
\sum\limits_{1 \leq k_1 < k_2 < \cdots < k_n \leq m} |A(1, 2, \cdots, n; k_1, k_2, \cdots, k_n)| \cdot |B(k_1, k_2, \cdots, k_n; 1, 2, \cdots, n)| & n < m
\end{cases} ∣ A B ∣ = ⎩ ⎪ ⎪ ⎨ ⎪ ⎪ ⎧ 0 ∣ A ∣ ⋅ ∣ B ∣ 1 ≤ k 1 < k 2 < ⋯ < k n ≤ m ∑ ∣ A ( 1 , 2 , ⋯ , n ; k 1 , k 2 , ⋯ , k n ) ∣ ⋅ ∣ B ( k 1 , k 2 , ⋯ , k n ; 1 , 2 , ⋯ , n ) ∣ n > m n = m n < m (A ( 1 , 2 , ⋯ , n ; k 1 , k 2 , ⋯ , k n ) A(1, 2, \cdots, n; k_1, k_2, \cdots, k_n) A ( 1 , 2 , ⋯ , n ; k 1 , k 2 , ⋯ , k n ) 表示由 A A A 的第 k 1 , k 2 , ⋯ , k n k_1, k_2, \cdots, k_n k 1 , k 2 , ⋯ , k n 列組成的矩陣;B ( k 1 , k 2 , ⋯ , k n ; 1 , 2 , ⋯ , n ) B(k_1, k_2, \cdots, k_n; 1, 2, \cdots, n) B ( k 1 , k 2 , ⋯ , k n ; 1 , 2 , ⋯ , n ) 表示由 B B B 的第 k 1 , k 2 , ⋯ , k n k_1, k_2, \cdots, k_n k 1 , k 2 , ⋯ , k n 行組成的矩陣)
證明:
我們構造兩個輔助矩陣:M = ( A 0 − I B ) , N = ( 0 A B − I B ) M = \begin{pmatrix} A & \bold{0} \\ -I & B\end{pmatrix},\ \ N = \begin{pmatrix} \bold{0} & AB \\ -I & B\end{pmatrix} M = ( A − I 0 B ) , N = ( 0 − I A B B ) 其中 I I I 是單位矩陣(“左上 - 右下”對角線爲 1 1 1 的矩陣)可以發現 ∣ M ∣ = ∣ N ∣ |M| = |N| ∣ M ∣ = ∣ N ∣ ,證明如下:
枚舉 M M M 矩陣的第 i ( n + 1 ≤ i ≤ n + m ) i\ (n + 1 \leq i \leq n + m) i ( n + 1 ≤ i ≤ n + m ) 行,然後將第 i i i 行乘以 a k 1 a_{k_1} a k 1 後加到第 1 1 1 行,乘以 a k 2 a_{k_2} a k 2 後加到第 2 2 2 行,……,乘以 a k n a_{k_n} a k n 後加到第 n n n 行。這樣操作完後,根據矩陣乘法的定義,M M M 變爲了 N N N ,又因爲倍加不變性,∣ M ∣ = ∣ N ∣ |M| = |N| ∣ M ∣ = ∣ N ∣ 。
用定義式計算 ∣ N ∣ |N| ∣ N ∣ ,由於只要 p p p 選到 0 \bold{0} 0 中的元素 λ N ( p ) \lambda_N(p) λ N ( p ) 就爲 0 0 0 ,所以只考慮 p 1 , p 2 , ⋯ , p n ∈ [ m + 1 , m + n ] p_1, p_2, \cdots, p_n \in [m + 1, m + n] p 1 , p 2 , ⋯ , p n ∈ [ m + 1 , m + n ] 的情況,又因爲 A B AB A B 是個 n × n n \times n n × n 的矩陣,所以 p n + 1 , p n + 2 , ⋯ , p n + m ∈ [ 1 , m ] p_{n + 1}, p_{n + 2}, \cdots, p_{n + m} \in [1, m] p n + 1 , p n + 2 , ⋯ , p n + m ∈ [ 1 , m ] ,所以 ∣ N ∣ = ∣ A B ∣ ⋅ ∣ − I ∣ = ( − 1 ) m ∣ A B ∣ |N| = |AB| \cdot |-I| = (-1)^m |AB| ∣ N ∣ = ∣ A B ∣ ⋅ ∣ − I ∣ = ( − 1 ) m ∣ A B ∣
接下來分類計算 ∣ M ∣ |M| ∣ M ∣ ,並證明該定理:
當 n > m n > m n > m 時(圖中 C = A B C = AB C = A B ,下同):
用定義式計算 M M M ,發現排列 p p p 無論如何取都會取到 0 \bold{0} 0 中的元素(原因就是 n > m n > m n > m ),因此 ∣ M ∣ = 0 |M| = 0 ∣ M ∣ = 0 ,即 ( − 1 ) m ∣ A B ∣ = 0 (-1)^m |AB| = 0 ( − 1 ) m ∣ A B ∣ = 0 ,即 ∣ A B ∣ = 0 |AB| = 0 ∣ A B ∣ = 0 。
當 n = m n = m n = m 時:
用定義式計算 M M M ,顯然只有 p 1 , p 2 , ⋯ , p n ∈ [ 1 , n ] p_1, p_2, \cdots, p_n \in [1, n] p 1 , p 2 , ⋯ , p n ∈ [ 1 , n ] 且 p n + 1 , p n + 2 , ⋯ , p n + m ∈ [ n + 1 , n + m ] p_{n + 1}, p_{n + 2}, \cdots, p_{n + m} \in [n + 1, n + m] p n + 1 , p n + 2 , ⋯ , p n + m ∈ [ n + 1 , n + m ] 時 λ M ( p ) \lambda_M(p) λ M ( p ) 不爲 0 0 0 ,於是 ∣ M ∣ = ∣ A ∣ ⋅ ∣ B ∣ ⋅ ( − 1 ) n 2 |M| = |A| \cdot |B| \cdot (-1)^{n^2} ∣ M ∣ = ∣ A ∣ ⋅ ∣ B ∣ ⋅ ( − 1 ) n 2 其中 ( − 1 ) n 2 (-1)^{n^2} ( − 1 ) n 2 即爲分開計算 A , B A, B A , B 將兩者的排列合起來新形成的逆序對數。因而 ∣ A ∣ ⋅ ∣ B ∣ ⋅ ( − 1 ) n 2 = ∣ A B ∣ ⋅ ( − 1 ) m |A| \cdot |B| \cdot (-1)^{n^2} = |AB| \cdot (-1)^m ∣ A ∣ ⋅ ∣ B ∣ ⋅ ( − 1 ) n 2 = ∣ A B ∣ ⋅ ( − 1 ) m ,於是 ∣ A ∣ ∣ B ∣ = ∣ A B ∣ ( − 1 ) m − n 2 = ∣ A B ∣ ( − 1 ) n − n 2 = ∣ A B ∣ |A||B| = |AB|(-1)^{m - n^2} = |AB|(-1)^{n - n^2} = |AB| ∣ A ∣ ∣ B ∣ = ∣ A B ∣ ( − 1 ) m − n 2 = ∣ A B ∣ ( − 1 ) n − n 2 = ∣ A B ∣
當 n < m n < m n < m 時:
這時候我們枚舉 k 1 , k 2 , ⋯ , k n ∈ [ 1 , m ] k_1, k_2, \cdots, k_n \in [1, m] k 1 , k 2 , ⋯ , k n ∈ [ 1 , m ] (就是定理中的 k 1 , k 2 , ⋯ , k n k_1, k_2, \cdots, k_n k 1 , k 2 , ⋯ , k n )表示在 A A A 的各行中選的元素。爲了使 λ M ( p ) ≠ 0 \lambda_M(p) \neq 0 λ M ( p ) = 0 ,− I -I − I 中就只能選對角線上的元素,又因爲 A A A 中選的元素的正下方的那個 − 1 -1 − 1 肯定不能選(因爲p p p 是排列),所以在 B B B 被選了元素的行一定和 A A A 被選了元素的列一樣。舉個例子,假設 n = 3 n = 3 n = 3 ,紅色是 A / B A\ /\ B A / B 中含有被選中元素的列 / / / 行。
這樣一來 ∣ A ( 1 , 2 , ⋯ , n ; k 1 , k 2 , ⋯ , k n ) ∣ |A(1, 2, \cdots, n;k_1, k_2, \cdots, k_n)| ∣ A ( 1 , 2 , ⋯ , n ; k 1 , k 2 , ⋯ , k n ) ∣ 的那些排列就和 ∣ B ( k 1 , k 2 , ⋯ , k n ; 1 , 2 , ⋯ , n ) ∣ |B(k_1, k_2, \cdots, k_n; 1, 2, \cdots, n)| ∣ B ( k 1 , k 2 , ⋯ , k n ; 1 , 2 , ⋯ , n ) ∣ 的那些排列形成了一一對應的函數關係,於是∣ M ∣ = ∑ 1 ≤ k 1 < k 2 < ⋯ < k n ≤ m ∣ A ( 1 , 2 , ⋯ , n ; k 1 , k 2 , ⋯ , k n ) ∣ ⋅ ∣ B ( k 1 , k 2 , ⋯ , k n ; 1 , 2 , ⋯ , n ) ∣ ⋅ ( − 1 ) m − n + x |M| = \sum\limits_{1 \leq k_1 < k_2 < \cdots < k_n \leq m} |A(1, 2, \cdots, n; k_1, k_2, \cdots, k_n)| \cdot |B(k_1, k_2, \cdots, k_n; 1, 2, \cdots, n)| \cdot (-1)^{m - n + x} ∣ M ∣ = 1 ≤ k 1 < k 2 < ⋯ < k n ≤ m ∑ ∣ A ( 1 , 2 , ⋯ , n ; k 1 , k 2 , ⋯ , k n ) ∣ ⋅ ∣ B ( k 1 , k 2 , ⋯ , k n ; 1 , 2 , ⋯ , n ) ∣ ⋅ ( − 1 ) m − n + x 其中 ( − 1 ) m − n (-1)^{m - n} ( − 1 ) m − n 是 − I -I − I 的貢獻, x x x 是“新構成”的逆序對個數,所謂新構成,就是三部分的逆序對個數之和:− I -I − I 與 A A A 、− I -I − I 與 B B B 、A A A 與 B B B 。由於枚舉出的東西關於對角線對稱,所以− I -I − I 與 A A A 之間的逆序對數等於 − I -I − I 與 B B B 之間的逆序對數,於是 x x x 可以轉化爲 A A A 與 B B B 之間的逆序對數,即 n 2 n^2 n 2 。於是 ∣ M ∣ = ∑ 1 ≤ k 1 < k 2 < ⋯ < k n ≤ m ∣ A ( 1 , 2 , ⋯ , n ; k 1 , k 2 , ⋯ , k n ) ∣ ⋅ ∣ B ( k 1 , k 2 , ⋯ , k n ; 1 , 2 , ⋯ , n ) ∣ ⋅ ( − 1 ) m − n + x = ∑ 1 ≤ k 1 < k 2 < ⋯ < k n ≤ m ∣ A ( 1 , 2 , ⋯ , n ; k 1 , k 2 , ⋯ , k n ) ∣ ⋅ ∣ B ( k 1 , k 2 , ⋯ , k n ; 1 , 2 , ⋯ , n ) ∣ ⋅ ( − 1 ) m − n + n 2 = ∣ A B ∣ ( − 1 ) m \begin{aligned} |M| &= \sum\limits_{1 \leq k_1 < k_2 < \cdots < k_n \leq m} |A(1, 2, \cdots, n; k_1, k_2, \cdots, k_n)| \cdot |B(k_1, k_2, \cdots, k_n; 1, 2, \cdots, n)| \cdot (-1)^{m - n + x} \\ &= \sum\limits_{1 \leq k_1 < k_2 < \cdots < k_n \leq m} |A(1, 2, \cdots, n; k_1, k_2, \cdots, k_n)| \cdot |B(k_1, k_2, \cdots, k_n; 1, 2, \cdots, n)| \cdot (-1)^{m - n + n^2} \\ &= |AB| (-1)^m \end{aligned} ∣ M ∣ = 1 ≤ k 1 < k 2 < ⋯ < k n ≤ m ∑ ∣ A ( 1 , 2 , ⋯ , n ; k 1 , k 2 , ⋯ , k n ) ∣ ⋅ ∣ B ( k 1 , k 2 , ⋯ , k n ; 1 , 2 , ⋯ , n ) ∣ ⋅ ( − 1 ) m − n + x = 1 ≤ k 1 < k 2 < ⋯ < k n ≤ m ∑ ∣ A ( 1 , 2 , ⋯ , n ; k 1 , k 2 , ⋯ , k n ) ∣ ⋅ ∣ B ( k 1 , k 2 , ⋯ , k n ; 1 , 2 , ⋯ , n ) ∣ ⋅ ( − 1 ) m − n + n 2 = ∣ A B ∣ ( − 1 ) m 於是 ∣ A B ∣ = ∑ 1 ≤ k 1 < k 2 < ⋯ < k n ≤ m ∣ A ( 1 , 2 , ⋯ , n ; k 1 , k 2 , ⋯ , k n ) ∣ ⋅ ∣ B ( k 1 , k 2 , ⋯ , k n ; 1 , 2 , ⋯ , n ) ∣ ⋅ ( − 1 ) n 2 − n = ∑ 1 ≤ k 1 < k 2 < ⋯ < k n ≤ m ∣ A ( 1 , 2 , ⋯ , n ; k 1 , k 2 , ⋯ , k n ) ∣ ⋅ ∣ B ( k 1 , k 2 , ⋯ , k n ; 1 , 2 , ⋯ , n ) ∣ \begin{aligned} |AB| &= \sum\limits_{1 \leq k_1 < k_2 < \cdots < k_n \leq m} |A(1, 2, \cdots, n; k_1, k_2, \cdots, k_n)| \cdot |B(k_1, k_2, \cdots, k_n; 1, 2, \cdots, n)| \cdot (-1)^{n^2 - n} \\ &= \sum\limits_{1 \leq k_1 < k_2 < \cdots < k_n \leq m} |A(1, 2, \cdots, n; k_1, k_2, \cdots, k_n)| \cdot |B(k_1, k_2, \cdots, k_n; 1, 2, \cdots, n)| \end{aligned} ∣ A B ∣ = 1 ≤ k 1 < k 2 < ⋯ < k n ≤ m ∑ ∣ A ( 1 , 2 , ⋯ , n ; k 1 , k 2 , ⋯ , k n ) ∣ ⋅ ∣ B ( k 1 , k 2 , ⋯ , k n ; 1 , 2 , ⋯ , n ) ∣ ⋅ ( − 1 ) n 2 − n = 1 ≤ k 1 < k 2 < ⋯ < k n ≤ m ∑ ∣ A ( 1 , 2 , ⋯ , n ; k 1 , k 2 , ⋯ , k n ) ∣ ⋅ ∣ B ( k 1 , k 2 , ⋯ , k n ; 1 , 2 , ⋯ , n ) ∣
定理得證。
該證明參考了 Freopen 大佬的博客,詳見參考資料。同樣百度百科上有個很線代看不懂的證明。
矩陣樹定理
對於 n n n 個點 m m m 條邊的無向圖 G G G 以及任意一個 1 ≤ i ≤ n 1 \leq i \leq n 1 ≤ i ≤ n ,∣ L i i ∣ |L_{ii}| ∣ L i i ∣ 即爲它的生成樹個數。
證明:
由轉置引理 ∣ L i , i ∣ = ∣ B i , i B i , i T ∣ |L_{i, i}| = |B_{i, i} B_{i, i}^T| ∣ L i , i ∣ = ∣ B i , i B i , i T ∣ 因爲 B i , i , B i , i T B_{i, i}, B_{i, i}^T B i , i , B i , i T 分別是大小爲 ( n − 1 ) × ( m − 1 ) , ( m − 1 ) × ( n − 1 ) (n - 1) \times (m - 1), (m - 1) \times (n - 1) ( n − 1 ) × ( m − 1 ) , ( m − 1 ) × ( n − 1 ) 的矩陣,所以由 Binet - Cauchy 定理得 ∣ L i , i ∣ = ∣ B i , i B i , i T ∣ = ∑ 1 ≤ k 1 < k 2 < ⋯ < k n − 1 ≤ m ∣ B i , i ( 1 , 2 , ⋯ , n − 1 ; k 1 , k 2 , ⋯ , k n − 1 ) ∣ ⋅ ∣ B i , i T ( k 1 , k 2 , ⋯ , k n − 1 ; 1 , 2 , ⋯ , n − 1 ) ∣ |L_{i, i}| = |B_{i, i} B_{i, i}^T| = \sum_{1 \leq k_1 < k_2 < \cdots < k_{n - 1} \leq m} |B_{i, i}(1, 2, \cdots, n - 1; k_1, k_2, \cdots, k_{n - 1})| \cdot |B_{i, i}^T(k_1, k_2, \cdots, k_{n - 1}; 1, 2, \cdots, n - 1)| ∣ L i , i ∣ = ∣ B i , i B i , i T ∣ = 1 ≤ k 1 < k 2 < ⋯ < k n − 1 ≤ m ∑ ∣ B i , i ( 1 , 2 , ⋯ , n − 1 ; k 1 , k 2 , ⋯ , k n − 1 ) ∣ ⋅ ∣ B i , i T ( k 1 , k 2 , ⋯ , k n − 1 ; 1 , 2 , ⋯ , n − 1 ) ∣ 由於 B i , i ( 1 , 2 , ⋯ , n − 1 ; k 1 , k 2 , ⋯ , k n − 1 ) = B i , i T ( k 1 , k 2 , ⋯ , k n − 1 ; 1 , 2 , ⋯ , n − 1 ) B_{i, i}(1, 2, \cdots, n - 1; k_1, k_2, \cdots, k_{n - 1}) = B_{i, i}^T(k_1, k_2, \cdots, k_{n - 1}; 1, 2, \cdots, n - 1) B i , i ( 1 , 2 , ⋯ , n − 1 ; k 1 , k 2 , ⋯ , k n − 1 ) = B i , i T ( k 1 , k 2 , ⋯ , k n − 1 ; 1 , 2 , ⋯ , n − 1 ) ,所以 ∣ L i , i ∣ = ∣ B i , i B i , i T ∣ = ∑ 1 ≤ k 1 < k 2 < ⋯ < k n − 1 ≤ m ∣ B i , i ( 1 , 2 , ⋯ , n − 1 ; k 1 , k 2 , ⋯ , k n − 1 ) ∣ ⋅ ∣ B i , i T ( k 1 , k 2 , ⋯ , k n − 1 ; 1 , 2 , ⋯ , n − 1 ) ∣ = ∑ 1 ≤ k 1 < k 2 < ⋯ < k n − 1 ≤ m ∣ B i , i ( 1 , 2 , ⋯ , n − 1 ; k 1 , k 2 , ⋯ , k n − 1 ) ∣ 2 \begin{aligned} |L_{i, i}| = |B_{i, i} B_{i, i}^T| &= \sum_{1 \leq k_1 < k_2 < \cdots < k_{n - 1} \leq m} |B_{i, i}(1, 2, \cdots, n - 1; k_1, k_2, \cdots, k_{n - 1})| \cdot |B_{i, i}^T(k_1, k_2, \cdots, k_{n - 1}; 1, 2, \cdots, n - 1)| \\ &= \sum_{1 \leq k_1 < k_2 < \cdots < k_{n - 1} \leq m} |B_{i, i}(1, 2, \cdots, n - 1; k_1, k_2, \cdots, k_{n - 1})|^2 \end{aligned} ∣ L i , i ∣ = ∣ B i , i B i , i T ∣ = 1 ≤ k 1 < k 2 < ⋯ < k n − 1 ≤ m ∑ ∣ B i , i ( 1 , 2 , ⋯ , n − 1 ; k 1 , k 2 , ⋯ , k n − 1 ) ∣ ⋅ ∣ B i , i T ( k 1 , k 2 , ⋯ , k n − 1 ; 1 , 2 , ⋯ , n − 1 ) ∣ = 1 ≤ k 1 < k 2 < ⋯ < k n − 1 ≤ m ∑ ∣ B i , i ( 1 , 2 , ⋯ , n − 1 ; k 1 , k 2 , ⋯ , k n − 1 ) ∣ 2 由關聯矩陣的定義可知,B ′ = B i , i ( 1 , 2 , ⋯ , n − 1 ; k 1 , k 2 , ⋯ , k n − 1 ) B' = B_{i, i}(1, 2, \cdots, n - 1; k_1, k_2, \cdots, k_{n - 1}) B ′ = B i , i ( 1 , 2 , ⋯ , n − 1 ; k 1 , k 2 , ⋯ , k n − 1 ) 就是由圖 G G G 的邊 k 1 , k 2 , ⋯ , k n − 1 k_1, k_2, \cdots, k_{n - 1} k 1 , k 2 , ⋯ , k n − 1 構成的子圖 G ′ G' G ′ 的關聯矩陣。由連通性引理二得,當 G ′ G' G ′ 不連通時,∣ B ′ ∣ = 0 |B'| = 0 ∣ B ′ ∣ = 0 ;由連通性引理三得,當 G ′ G' G ′ 是樹時,∣ det B ′ ∣ = 1 |\det B'| = 1 ∣ det B ′ ∣ = 1 ,因此 ∣ B i , i ( 1 , 2 , ⋯ , n − 1 ; k 1 , k 2 , ⋯ , k n − 1 ) ∣ 2 = 1 |B_{i, i}(1, 2, \cdots, n - 1; k_1, k_2, \cdots, k_{n - 1})|^2 = 1 ∣ B i , i ( 1 , 2 , ⋯ , n − 1 ; k 1 , k 2 , ⋯ , k n − 1 ) ∣ 2 = 1 當且僅當由圖 G G G 的邊 k 1 , k 2 , ⋯ , k n − 1 k_1, k_2, \cdots, k_{n - 1} k 1 , k 2 , ⋯ , k n − 1 構成的子圖是樹,得證。
參考資料
Matrix - Tree 定理(生成樹計數)的另類證明和簡單拓展 - MoebiusMeow
矩陣樹定理 - Freopen
Matrix - Tree 矩陣樹定理 - Lucky_Glass
拉普拉斯展開 - 百度百科
Binet - Cauchy 定理 - 百度百科