Cauchy-Binet 公式的應用
Binet-Cauchy 公式
我們知道,方陣的行列式不是方陣的線性函數,即對 \(\forall \lambda\in F,A,B\in F^{n\times n}\),有 \(det(A+B)\neq detA+detB\) 和 \(det(\lambda A)\neq \lambda detA\);而方陣的行列式是方陣的可乘函數,即 \(det(AB)=detA\cdot detB\). 那麼如果 \(A,B\) 不是方陣,而是長方矩陣,那麼就可以推廣得到 Cauchy-Binet 公式。
Theorem(Cauchy-Binet)[1] 設 \(A=(a_{ij})\) 是 \(m\times n\) 矩陣,\(B=(b_{ij})\) 是 \(n\times m\) 矩陣,\(A\begin{pmatrix}i_1 & \cdots & i_s \\ j_1 & \cdots & j_s\end{pmatrix}\) 表示 \(A\) 的一個 \(s\) 階子式,它由 \(A\) 的第 \(i_1,\cdots,i_s\) 行與第 \(j_1,\cdots,j_s\) 列交點上的元素按原次序排列組成的行列式。同理定義 \(B\) 的 \(s\) 階子式,則 (1) 若 \(m>n\),必有 \(|AB|=0\);
(2) 若 \(m\le n\),必有
1 & 2 & \cdots & m \\
j_1 & j_2 & \cdots & j_m
\end{pmatrix}B\begin{pmatrix}
j_1 & j_2 & \cdots & j_m \\
1 & 2 & \cdots & m
\end{pmatrix}.
\]
Proof. 令 \(C=\begin{pmatrix} A & 0 \\ -I_n & B \end{pmatrix}\). 我們將用不同的方法來計算行列式 \(|C|\).
首先,對 \(C\) 進行第三類分塊初等變換得到矩陣 \(M=\begin{pmatrix} 0 & AB \\ -I_n & B \end{pmatrix}\). 事實上,\(M\) 可寫為
I_m & A \\
0 & I_n
\end{pmatrix}C,
\]
因此 \(|M|=|C|\). 用 Laplace 定理來計算 \(|M|\),按前 \(m\) 行展開得
(-1)^{n(m+1)}|AB|.
\]
再來計算 \(|C|\),用 Laplace 定理按前 \(m\) 行展開。這時若 \(m>n\),則前 \(m\) 行中任意一個 \(m\) 階子式都含有至少一列全為零,因此行列式值等於零,即 \(|AB|=0\). 若 \(m\le n\),由 Laplace 定理得
1 & 2 & \cdots & m \\
j_1 & j_2 & \cdots & j_m
\end{pmatrix}C\begin{pmatrix}
1 & 2 & \cdots & m \\
j_1 & j_2 & \cdots & j_m
\end{pmatrix},
\]
其中 \(C\begin{pmatrix}1 & 2 & \cdots & m \\ j_1 & j_2 & \cdots & j_m \end{pmatrix}\) 是 \(A\begin{pmatrix} 1 & 2 & \cdots & m \\ j_1 & j_2 & \cdots & j_m \end{pmatrix}\) 在矩陣 \(C\) 中的代數餘子式。顯然
1 & 2 & \cdots & m \\
j_1 & j_2 & \cdots & j_m
\end{pmatrix}=(-1)^{\frac{1}{2}m(m+1)+(j_1+j_2+\cdots+j_m)}
|-e_{i_1},-e_{i_2},\cdots,-e_{i_{n-m}},B|,
\]
其中 \(i_1,i_2,\cdots,i_{n-m}\) 是 \(C\) 中前 \(n\) 列去掉 \(j_1,j_2,\cdots,j_m\) 列後餘下的列序數,\(e_{i_1},e_{i_2},\cdots,e_{i_{n-m}}\) 是相應的 \(n\) 維標準單位列向量。記
\]
現來計算 \(|N|\). \(|N|\) 用 Laplace 定理按前 \(n-m\) 列展開。注意只有一個子式非零,其值等於 \(|-I_{n-m}|=(-1)^{n-m}\). 而這個子式的餘子式為
j_1 & j_2 & \cdots & j_m \\
1 & 2 & \cdots & m
\end{pmatrix}.
\]
因此
\begin{pmatrix}
j_1 & j_2 & \cdots & j_m \\
1 & 2 & \cdots & m
\end{pmatrix}.
\]
注意到 \((i_1+i_2+\cdots+i_{n-m})+(j_1+j_2+\cdots+j_m)=1+2+\cdots+n\),綜合上面的結論,通過簡單計算不難得到
1 & 2 & \cdots & m \\
j_1 & j_2 & \cdots & j_m
\end{pmatrix}B\begin{pmatrix}
j_1 & j_2 & \cdots & j_m \\
1 & 2 & \cdots & m
\end{pmatrix}.
\]
Binet-Cauchy 公式在恆等式中的應用
Binet-Cauchy 公式有很多方面的應用,比如證明 Lagrange 恆等式,Cauchy- Schwarz 不等式,計算一些特殊的 \(n\) 階行列式。下面我們先來看其在恆等式證明中的應用。
Question 1.[1:1] 證明 Lagrange 恆等式(\(n\ge2\)):
(a_ib_j-a_jb_i)^2.
\]
Proof. 左邊的表達式寫成行列式的形式如下
\displaystyle\sum_{i=1}^n a_i^2 & \displaystyle\sum_{i=1}^n a_ib_i \\
\displaystyle\sum_{i=1}^n a_ib_i & \displaystyle\sum_{i=1}^n
b_i^2
\end{vmatrix}.
\]
這個行列式對應的矩陣可化為
a_1 & a_2 & \cdots & a_n \\
b_1 & b_2 & \cdots & b_n
\end{pmatrix}\begin{pmatrix}
a_1 & b_1 \\
a_2 & b_2 \\
\vdots & \vdots \\
a_n & b_n
\end{pmatrix}.
\]
用 Cauchy- Schwarz 公式得
\displaystyle\sum_{i=1}^n a_i^2 & \displaystyle\sum_{i=1}^n a_ib_i \\
\displaystyle\sum_{i=1}^n a_ib_i & \displaystyle\sum_{i=1}^n
b_i^2
\end{vmatrix}=\sum_{1\le i<j\le n}\begin{pmatrix}
a_i & a_j \\
b_i & b_j
\end{pmatrix}\begin{pmatrix}
a_i & b_i \\
a_j & b_j
\end{pmatrix}=\sum_{1\le i<j\le n}(a_ib_j-a_jb_i)^2.
\]
注意到,上述證明過程中行列式的值是非負的,這樣我們就得到了Cauchy- Schwarz不等式。另外,類似於上面的證明過程,我們可以使用 Cauchy-Binet 公式證明比 Lagrange 恆等式更一般的結論 Cauchy 恆等式[2] 。當然,也可以使用其他方法證明這恆等式,但是顯然沒有使用 Cauchy-Binet 公式證明來得簡潔。
Binet-Cauchy 公式在行列式計算中的應用
Binet- Cauchy 公式在行列式中應用最多的情形是 \(m=n\) 時方陣乘積的行列式等於方陣行列式的乘積。而對於一些特殊的行列式,我們可以把這個行列式對應的矩陣寫成兩個長方陣的乘積,然後利用 Binet-Cauchy 公式進行分類討論,可以參考下面兩道例題:
Question 2.[3] 計算行列式:
x_1y_1+1 & x_1y_2+1 & \cdots & x_1y_n+1 \\
x_2y_1+1 & x_2y_2+1 & \cdots & x_2y_n+1 \\
\vdots & \vdots & \ddots & \vdots \\
x_ny_1+1 & x_ny_2+1 & \cdots & x_ny_n+1
\end{vmatrix}.
\]
Solution. 記此行列式為 \(|A|\),則有
\begin{pmatrix}
x_1 & 1 \\
x_2 & 1 \\
\vdots & \vdots \\
x_n & 1
\end{pmatrix}\begin{pmatrix}
y_1 & y_2 & \cdots & y_n \\
1 & 1 & \cdots & 1
\end{pmatrix}
\end{vmatrix}.
\]
由 Binet-Cauchy 公式,當 \(n>2\) 時,\(|A|=0\); 當 \(n=2\) 時,
\begin{pmatrix}
x_1 & 1 \\
x_2 & 1
\end{pmatrix}\begin{pmatrix}
y_1 & y_2 \\
1 & 1
\end{pmatrix}
\end{vmatrix}=\begin{vmatrix}
x_1 & 1 \\
x_2 & 1
\end{vmatrix}\begin{vmatrix}
y_1 & y_2 \\
1 & 1
\end{vmatrix}=(x_1-x_2)(y_1-y_2).
\]
當 \(n=1\) 時,\(|A|=x_1y_1+1\).
Question 3.[3:1] 計算行列式:
x_1-y_1 & x_1-y_2 & \cdots & x_1-y_n \\
x_2-y_1 & x_2-y_2 & \cdots & x_2-y_n \\
\vdots & \vdots & \ddots & \vdots \\
x_n-y_1 & x_n-y_2 & \cdots & x_n-y_n
\end{vmatrix}.
\]
Solution. 記此行列式為 \(|B|\),則有
\begin{pmatrix}
x_1 & -1 \\
x_2 & -1 \\
\vdots & \vdots \\
x_n & -1
\end{pmatrix}\begin{pmatrix}
1 & 1 & \cdots & 1 \\
y_1 & y_2 & \cdots & y_n
\end{pmatrix}
\end{vmatrix}.
\]
由 Binet-Cauchy 公式,當 \(n>2\) 時,上式右端乘積的行列式為零;當 \(n=2\) 時,
x_1 & -1 \\
x_2 & -1 \\
\end{pmatrix}\begin{pmatrix}
1 & 1 \\
y_1 & y_2
\end{pmatrix}\end{vmatrix}=\begin{vmatrix}
x_1 & -1 \\
x_2 & -1
\end{vmatrix}\begin{vmatrix}
1 & 1 \\
y_1 & y_2
\end{vmatrix}=(x_1-x_2)(y_1-y_2).
\]
當 \(n=1\) 時,\(|B|=x_1-x_2\).
可見,Binet-Cauchy 公式是處理這種值隨階數變化而變化的行列式的有力工具。Binet-Cauchy 公式應用最多的還是 \(m=n\) 的情形,具體可以參考文獻[4]第三章第二節習題第4題的前三小題,這裡不再贅述。下面給出輪迴方陣的行列式的應用 Cauchy- Binet 公式的求法。輪迴方陣本身不可能寫成兩個矩陣的乘積,但是如果我們另設一個矩陣,兩個矩陣乘積可以寫成和一個對角矩陣的乘積,而對角矩陣的行列式是非常容易得到的,從而就可以得到輪迴方陣的行列式。與其類似的文獻[4]第三章第二節習題第4題的第(4)小題,採用同樣的處理方法就可以得到結果。
Question 4.[4] \(n\) 階方陣
a_0 & a_1 & a_2 & \cdots & a_{n-1} \\
a_{n-1} & a_0 & a_1 & \cdots & a_{n-2} \\
a_{n-2} & a_{n-1} & a_0 & \cdots & a_{n-3} \\
\vdots & \vdots & \vdots & \ddots & \vdots \\
a_1 & a_2 & a_3 & \cdots & a_0
\end{pmatrix}.
\]
稱為輪迴方陣,求 \(n\) 階輪迴方陣的行列式。
Solution. 設 \(\omega\) 是 \(n\) 次本原單位根,即 \(\omega^i\neq 1,1\le i\le n-1,\omega^n=1\),\(f(x)=a_0+a_1x+\cdots+a_{n-1}x^{n-1}\),取 \(n\) 階矩陣 \(B\) 為
1 & 1 & 1 & \cdots & 1 \\
1 & \omega & \omega^2 & \cdots & \omega^{n-1} \\
1 & \omega^2 & \omega^4 & \cdots & \omega^{2(n-1)} \\
\vdots & \vdots & \vdots & \ddots & \vdots \\
1 & \omega^{n-1} & \omega{2(n-1)} & \cdots & \omega{(n-1)^2}
\end{pmatrix}
\]
容易驗證 \(AB=Bdiag(f(1), f(\omega), f(\omega^2), \cdots, f(\omega^{n-1}))\). 兩端各取行列式,則由
\]
顯然 Vandermonde 行列式 \(detB=\displaystyle\prod_{1\le i<j\le n}(\omega^j-\omega^i)\neq 0\). 因此 \(detA=\displaystyle\prod_{i=0}^{n-1}f(\omega^i)\)