Cauchy-Binet 公式

本文的閱讀等級:中級

Cauchy-Binet 公式是方陣乘積行列式可乘公式 \det(AB)=(\det A)(\det B) 的推廣。在線性代數理論中,Cauchy-Binet 公式是一個相當實用的行列式計算公式,但多數線性代數課程並未將它列入講授範圍。理解 Cauchy-Binet 公式除了要知道行列式基本性質,還需要一些新的符號與概念。

 
Cauchy-Binet 公式建立於矩陣的子陣(submatrix)之上,“正定矩陣的性質與判別方法”曾經使用過方陣的主子陣,下面介紹一般的子陣表示符號。若 A 為一 m\times n 階矩陣,令 R 為列指標 \{1,2,\ldots,m\} 的子集合,C 為行指標 \{1,2,\ldots,n\} 的子集合,我們將同時具有列指標 R 和行指標 C 的子陣表示為 A_{R,C}。考慮

A=\begin{bmatrix}    1&2&3&4\\    7&5&6&2\\    3&8&2&6    \end{bmatrix}

以下是幾個 A 子陣的例子:

A_{\{1,3\},\{2,3,4\}}=\begin{bmatrix}    2&3&4\\    8&2&6    \end{bmatrix},~ A_{\{1,2,3\},\{2\}}=\begin{bmatrix}    2\\    5\\    8    \end{bmatrix},~ A_{\{3\},\{4\}}=\begin{bmatrix}    6    \end{bmatrix}

 
Bn\times m 階矩陣,令 U=\{1,2,\ldots,m\}S\subset\{1,2,\ldots,n\} 為包含 m 個元素的子集合,如果 m>n,則 S 為空集合。A_{U,S} 表示以 S 的元素作為行指標所構成之 Am\times m 階子陣,而 B_{S,U} 則表示以 S 的元素作為列指標所構成之 Bm\times m 階子陣。Cauchy-Binet 公式提供 m 階方陣 AB 的行列式計算式:

\det(AB)=\displaystyle\sum_{S}(\det A_{U,S})(\det B_{S,U})

上式加總 \{1,2,\ldots,n\}m 個元素的子集合 S,合計有 \binom{n}{m} 個不同的 S

 
我用一個例子說明 Cauchy-Binet 公式的實際運作。令

A=\left[\!\!\begin{array}{rrcc}    1&2&0&1\\    -1&-1&1&0\\    2&0&3&1    \end{array}\!\!\right],~~~B=\left[\!\!\begin{array}{rcr}    -1&1&0\\    0&1&2\\    1&2&-1\\    1&1&0    \end{array}\!\!\right]

m=3n=4,可能的 S\binom{4}{3}=4 個,依序為 \{1,2,3\}\{1,2,4\}\{1,3,4\}\{2,3,4\}。行列式 \det(AB) 等於 4 個子陣乘積的行列式之和,如下:

\begin{aligned}  \det(AB)&=\left|\!\!\begin{array}{rrc}    1&2&0\\    -1&-1&1\\    2&0&3    \end{array}\!\!\right|\left|\!\!\begin{array}{rcr}    -1&1&0\\    0&1&2\\    1&2&-1    \end{array}\!\!\right|+\left|\!\!\begin{array}{rrc}    1&2&1\\    -1&-1&0\\    2&0&1    \end{array}\!\!\right|\left|\!\!\begin{array}{rcc}    -1&1&0\\    0&1&2\\    1&1&0    \end{array}\!\!\right|\\    &+\left|\!\!\begin{array}{rcc}    1&0&1\\    -1&1&0\\    2&3&1    \end{array}\!\!\right|\left|\!\!\begin{array}{rcr}    -1&1&0\\    1&2&-1\\    1&1&0    \end{array}\!\!\right|+\left|\!\!\begin{array}{rcc}    2&0&1\\    -1&1&0\\    0&3&1    \end{array}\!\!\right|\left|\!\!\begin{array}{ccr}    0&1&2\\    1&2&-1\\    1&1&0    \end{array}\!\!\right|\\    &=7\cdot 7+3\cdot 4+(-4)\cdot(-2)+(-1)\cdot(-3)=72\end{aligned}

 
為便於理解,我們以小型矩陣推導 Cauchy-Binet 公式。考慮 m=2n=3 的情況,AB 分別為

A=\begin{bmatrix}    a_{11}&a_{12}&a_{13}\\    a_{21}&a_{22}&a_{23}    \end{bmatrix},~B=\begin{bmatrix}    b_{11}&b_{12}\\    b_{21}&b_{22}\\    b_{31}&b_{32}    \end{bmatrix}

先乘開 AB,計算其行列式

\det(AB)=\begin{vmatrix}    a_{11}b_{11}+a_{12}b_{21}+a_{13}b_{31}& a_{11}b_{12}+a_{12}b_{22}+a_{13}b_{32}\\    a_{21}b_{11}+a_{22}b_{21}+a_{23}b_{31}& a_{21}b_{12}+a_{22}b_{22}+a_{23}b_{32}    \end{vmatrix}

行列式是矩陣列的線性函數,利用可加性 f(x+y)=f(x)+f(y) 分離各列之和,重複執行此步驟可將原行列式拆解為 3^2 個行列式之和(見“矩陣和之行列式 (上)”),結果如下:

\det(AB)=\displaystyle\sum_{\alpha,\beta=1}^3\begin{vmatrix}    a_{1\alpha}b_{\alpha 1}&a_{1\alpha}b_{\alpha 2}\\    a_{2\beta}b_{\beta 1}&a_{2\beta}b_{\beta 2}    \end{vmatrix}

再利用線性函數的均勻性 f(cx)=cf(x) 可抽離出各列的公因子,於是又有

\det(AB)=\displaystyle\sum_{\alpha,\beta=1}^3a_{1\alpha}a_{2\beta}\begin{vmatrix}    b_{\alpha 1}&b_{\alpha 2}\\    b_{\beta 1}&b_{\beta 2}    \end{vmatrix}

觀察發現當 \alpha=\beta 時,上面的 2\times 2 階行列式包含相同的二列,故行列式為零。這說明 \alpha\neq\beta,扣除相同的變數值還剩下 3^2-3=3\times 2=6 個行列式。若限制 \alpha<\beta,利用交換兩列改變行列式的正負號此性質不難得出

\det(AB)=\displaystyle\sum_{1\le\alpha<\beta\le 3}\begin{vmatrix}    a_{1\alpha}&a_{1\beta}\\    a_{2\alpha}&a_{2\beta}    \end{vmatrix}\begin{vmatrix}    b_{\alpha 1}&b_{\alpha 2}\\    b_{\beta 1}&b_{\beta 2}    \end{vmatrix}

此即 Cauchy-Binet 公式。

 
接著檢驗 Cauchy-Binet 公式如何隨 mn 的大小變化。當 m=n 時,AB 都是方陣,僅存在唯一的 S,即 S=\{1,2,\ldots,n\},Cauchy-Binet 公式退化為方陣乘積的行列式公式 \det(AB)=(\det A)(\det B)。若 m>nS 為空集合,\det(AB)=0。此結果亦可由分析矩陣的尺寸來確認,如果 m>n,則 \mathrm{rank}A\le n\mathrm{rank}B\le n,推知 \mathrm{rank}(AB)\le n<mm 階方陣 AB 是不可逆的。又如果 m=1,總計有 n 個可能的 S 子集合,Cauchy-Binet 公式退化為二向量的標準內積公式。

 
Cauchy-Binet 公式能幫助我們暸解 \det(AA^T) 的幾何意義。若 Am\times n 階實矩陣,AA^T 是半正定矩陣,特徵值不為負值,故 \det(AA^T)\ge 0。行列式 \det(AA^T) 等於 m 階方陣 AA^T 的行向量在 \mathbb{R}^m 空間所張開的平行多面體體積,例如,

A=\begin{bmatrix}    2&0&0\\    0&3&4    \end{bmatrix}

AA^T=\begin{bmatrix}    4&0\\    0&25    \end{bmatrix}

算得 \det(AA^T)=100,即為 \begin{bmatrix}    4\\  0    \end{bmatrix}\begin{bmatrix}    0\\25    \end{bmatrix}\mathbb{R}^2 張開的長方形面積。

 
繼續深入解析 \det(AA^T) 會發現更多矩陣結構隱藏的奧秘。考慮 \det(AA^T)>0,則 \mathrm{rank}(AA^T)=m,且 \mathrm{rank}A=\mathrm{rank}(AA^T)=m,指出 Am 個列是線性獨立的,推論 m\le n。由秩—零度定理,零空間的維數等於 n-\mathrm{rank}A=n-m。經由 Gram-Schmidt 正交化過程,可求出零空間 N(A)n-m 個單範正交 (orthonormal) 基底向量,以這 n-m 個零空間基底向量當作列,可構成一 (n-m)\times n 階矩陣 N。上例矩陣 A 的零空間由 \left[\!\!\begin{array}{r}    0\\    -4/5\\    3/5    \end{array}\!\!\right] 擴張,也就有 N=\begin{bmatrix}    0&-4/5&3/5    \end{bmatrix}

 
我們將矩陣 A 的列空間基底和零空間基底整併成一 n 階方陣,設分塊矩陣

C=\begin{bmatrix}    A\\    N    \end{bmatrix}

因為零空間 N(A) 為列空間 C(A^T) 的正交補餘,AN^T=0NA^T=0。此外,N 包含單範正交列向量,所以 NN^T=I_{n-m}。使用這些性質,得到

\begin{aligned}  CC^T&=\begin{bmatrix}    A\\    N    \end{bmatrix}\begin{bmatrix}    A^T&N^T    \end{bmatrix}=\begin{bmatrix}    AA^T&AN^T\\    NA^T&NN^T    \end{bmatrix}=\begin{bmatrix}    AA^T&0\\    0&I_{n-m}    \end{bmatrix}\end{aligned}

交互乘積 CC^T 為分塊對角矩陣,其行列式等於主對角分塊行列式乘積,

\begin{aligned}  \det(CC^T)&=\det(AA^T)(\det I_{n-m})=\det(AA^T)\end{aligned}

利用矩陣乘積的行列式可乘公式,就有

\begin{aligned}  \det(CC^T)&=(\det C)(\det C^T)=(\det C)^2\end{aligned}

合併上面二式,

\det(AA^T)=(\det C)^2

解讀 \det C 的含意,\det C 等於 C 的列向量在 \mathbb{R}^n 空間中所張的平行多面體體積,又因為 C 的最底 (n-m) 個列 (即 N) 為一組單範正交向量,所以 \det C 即為 Am 個列向量在 \mathbb{R}^n 空間所張的平行多面體體積。參見下圖,A 的列向量 \begin{bmatrix}2&0&0\end{bmatrix}\begin{bmatrix}0&3&4\end{bmatrix}\mathbb{R}^3 所張的面積為

\begin{aligned}  \det C&=\left|\!\!\begin{array}{crr}    2&0&0\\    0&3&4\\    0&-4/5&3/5    \end{array}\!\!\right|=10\end{aligned}

高度為1的平行六面體體積等於其底面積

若以 Cauchy-Binet 公式計算 AA^T 的行列式,

\begin{aligned}  \det(AA^T)&=\begin{vmatrix}    2&0\\    0&3    \end{vmatrix}\begin{vmatrix}    2&0\\    0&3    \end{vmatrix}+\begin{vmatrix}    2&0\\    0&4    \end{vmatrix}\begin{vmatrix}    2&0\\    0&4    \end{vmatrix}+\begin{vmatrix}    0&0\\    3&4    \end{vmatrix}\begin{vmatrix}    0&3\\    0&4    \end{vmatrix}\\    &=6^2+8^2+0^2=100\end{aligned}

直接從算式解讀其意義,Cauchy-Binet 公式說 \det(AA^T) 等於由 A 的列向量 \begin{bmatrix}2&0&0\end{bmatrix}\begin{bmatrix}0&3&4\end{bmatrix}\mathbb{R}^3 所張的面積投影至三個平面 XY,XZ 和 YZ 的投影面積平方和。根據這個事實,當 m=1 時,\det(AA^T) 指的是列向量的長度平方,故 Cauchy-Binet 公式不過就是畢氏定理。

Advertisements
本篇發表於 線性代數專欄, 行列式 並標籤為 , , , , , 。將永久鏈結加入書籤。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s