# 行列式定義 對一個方陣 $A\in F^{n\times n}$ $$ \displaylines{ \Large \text{det}(A)\overset{\text{def}}{=}\sum_{\sigma\in S_{n}}\text{sgn}(\sigma)\cdot\prod_{j=1}^{n}A_{\sigma(j),j} } $$ ## $\sigma$ 函數 「一個 $\sigma$」是一個函數,他會把 1 到 $n$ 的正整數,對回 1 到 $n$ 的正整數,**並且是雙射**: $$ \sigma:\{1,2,...,n\}\rightarrow\{1,2,...,n\} $$ 例如 $n=3$ 的時候,我們可以定義: $$ \displaylines{ \sigma(1)=2\\ \sigma(2)=3\\ \sigma(3)=1\\ } $$ 這樣就是一個由我們定義的 $\sigma$ 函數。而如果我們把全部可能的 $\sigma$ 函數蒐集起來,構成的集合就是熟悉的「**排列 permutation**」,通常記作「$S_n$」。 $$ \Large \sum_{\sigma\in S_{n}} $$ $\Sigma$ 就是把這 $n!$ 種 $\sigma$ 函數 一個一個叫出來。 $$ \Large \prod_{j=1}^{n}A_{\sigma(j),j} $$ $\prod$ 就是用一個被拿出來的 $\sigma$ 函數,從 $n$ 個 column 中,挑選出 $n$ 個 row 不相同的 $A_{i,j}$ 乘在一起。 通常會將一個 $\sigma$ 函數得到的排列寫成有序 tuple,例如上面的例子: $$ \langle \sigma(1),\sigma(2),\sigma(3)\rangle = \langle 2,3,1\rangle\\ $$ ## $\text{sgn}(\sigma)$ 我們先來探討一個在計算「反序個數」的函數,**$\rho$ 函數**。所謂的反序是: $$ \displaylines{ i<j\\ \sigma(i)>\sigma(j) } $$ 所以上面的例子中 $$ \rho(\sigma)=\rho(\langle 2,3,1\rangle)=2 $$ 而我們的 $\text{sgn}(\sigma)$ 函數則是: $$ \text{sgn}(\sigma)=-1^{\rho(\sigma)} $$ 也就是看反序對是奇數還是偶數個。 ## 單位方陣 $$ \text{det}(I_n)=1 $$ 因為**只有一個 $\sigma$ 函數**會在第 $j$ 個 column 挑選第 $j$ 個 row 的 $A_{i,j}$ 出來相乘,也就是對角線上的值。 而就只有對角線上的值相乘才不等於 0,其他的 $\sigma$ 函數因為都會選到 0,會導致 $\prod$ 的部分變成 0。 而挑選對角線的那個 $\sigma$ 函數的反序對個數是 0,因此可以知道行列式值就是 1。 ## 三角方陣 分別「上三角」跟「下三角」;首先左上到右下是對角線所在位置。 上三角是指對角線左下的區塊都是 0 的方陣;下三角則是右上的區塊都是 0。 而這種方陣的行列式值有個特性是: $$ \text{det}(A)=\prod_{i=1}^{n}A_{i,i} $$ 也就是說行列式值就是對角線的元素通通乘起來。 原理很簡單,就是因為選對角線以外的 $\sigma$ 會選到 0。 ## 幾何意義 $n$ 方陣的行列式絕對值,是把方陣的每個 column 當作向量,在 $n$ 維空間所張出的 $n$ 維多面體的體積。 --- # 轉置保式 $$ \large \text{det}(A)=\text{det}(A^T) $$ 要證明這個,首先要觀察到一件事: $$ \rho(\sigma^{-1})=\rho(\sigma) $$ 舉例來說: $$ \displaylines{ \langle \sigma(1),\sigma(2),\sigma(3)\rangle = \langle 2,3,1\rangle\\ \langle \sigma^{-1}(1),\sigma^{-1}(2),\sigma^{-1}(3)\rangle = \langle 3,1,2\rangle\\ } $$ - $\sigma^{-1}$ 他其實也是個 $\sigma$ 函數,而原本的 $\sigma$ 函數得到的值,是 $\sigma^{-1}$ 的輸入 - 當我們要表示 $\sigma^{-1}$ 的有序對輸出時,要將原本 $\sigma$ 函數得到的值依照大小排好 - 如果 $i<j$ 是反序對,代表 $\sigma(i)>\sigma(j)$,所以照大小排好會變成: $$ \displaylines{ ...\sigma(j),...,\sigma(i)...\\ ...\sigma^{-1}(\sigma(j)),...,\sigma^{-1}(\sigma(i))...\\ \Rightarrow ...j,...,i...\\ } $$ 因此可以知道 - 如果 $i,j$ 在 $\sigma$ 中是反序對,可知 $\sigma(i)>\sigma(j)$ - 並且可以知道 $\sigma(i),\sigma(j)$ 在 $\sigma^{-1}$ 中也是反序對 也就證明了 $\rho(\sigma^{-1})=\rho(\sigma)$。 所以就可以開始我們的表演了: $$ \Large \begin{align} \text{det}(A^{T})&= \sum_{\sigma\in S_{n}}\text{sgn}(\sigma)\cdot\prod_{j=1}^{n}(A^T)_{\sigma(j),j}\\ &=\sum_{\sigma\in S_{n}}\text{sgn}(\sigma)\cdot\prod_{j=1}^{n}(A^T)_{j,\sigma^{-1}(j)} \end{align} $$ $\sigma$ 可以這樣調換是因為,我們原本是「看第 $j$ 個 col 選 $\sigma(j)$ row」,換個角度看就是「看第 $j$ 個 row 選 $\sigma^{-1}(j)$ col」。 接著會得到: $$ \Large \begin{align} &\sum_{\sigma\in S_{n}}\text{sgn}(\sigma)\cdot\prod_{j=1}^{n}(A^T)_{j,\sigma^{-1}(j)}\\ =&\sum_{\sigma\in S_{n}}\text{sgn}(\sigma^{-1})\cdot\prod_{j=1}^{n}A_{\sigma^{-1}(j),j}\\ =&\sum_{\sigma\in S_{n}}\text{sgn}(\sigma)\cdot\prod_{j=1}^{n}A_{\sigma(j),j}\\ =&\text{det}(A) \end{align} $$ 第二個等號是轉置的緣故;第三個只是單純改寫符號,因為 $\sigma^{-1}$ 也是 $S_n$ 的一員。 # 換行變號 對於原本的方陣 $A$,如果我們交換其中兩個 col 後得到 $B$,則: $$ \large \text{det}(A)=-\text{det}(B) $$ 要證明這個,我們先產生一個特殊的 $\sigma_{i,j}$ 函數 $$ \displaylines{ \sigma_{i,j}(k) \left\{\begin{matrix} \sigma(j) &k=i \\ \sigma(i) &k=j \\ \sigma(k) &\text{other} \end{matrix}\right.\\ } $$ >不失一般性,令 $i<j$ 此時我們要注意到: $$ \text{sgn}(\sigma_{i,j})=-\text{sgn}(\sigma) $$ 原因是因為交換兩 col 之後反序對個數只會相差「奇數個」。 這個其實不難推導,令以下情形: $$ \sigma = \langle \sigma(1),...,\sigma(i-1),\color{red}{\sigma(i)},\sigma(i+1),...,\sigma(j-1),\color{blue}{\sigma(j)},\sigma(j+1),...,\sigma(n)\rangle $$ $$ \sigma_{i,j} =\langle \sigma(1),...,\sigma(i-1),\color{blue}{\sigma(j)},\sigma(i+1),...,\sigma(j-1),\color{red}{\sigma(i)},\sigma(j+1),...,\sigma(n) \rangle $$ 我們可以發現: - 對於 $1\sim i-1$ 跟 $j+1 \sim n$,就算交換之後,**不會影響與他們相關的反序對個數** - 對於 $i+1\sim j-1$ 的人,我們知道有四種可能的情形,令 $i<k<j$ - 如果 $\sigma(i)<\sigma(k)<\sigma(j)$,跟 $k$ 有關的反序對是 0 個 - 交換之後會變成 $\sigma(j)>\sigma(k)>\sigma(i)$,跟 $k$ 有關的反序對變成 2 個 - 如果 $\sigma(i)>\sigma(k)>\sigma(j)$,跟 $k$ 有關的反序對是 2 個 - 交換之後會變成 $\sigma(j)<\sigma(k)<\sigma(i)$,跟 $k$ 有關的反序對變成 0 個 - 如果 $\sigma(i)<\sigma(k)>,\ \ \sigma(k)>\sigma(j)$,跟 $k$ 有關的反序對是 1 個 - 交換之後會變成 $\sigma(j)<\sigma(k)>,\ \ \sigma(k)>\sigma(i)$,跟 $k$ 有關的反序對還是 1 個,沒有變動 - 如果 $\sigma(i)>\sigma(k),\ \ \sigma(k)<\sigma(j)$,跟 $k$ 有關的反序對是 1 個 - 交換之後會變成 $\sigma(j)>\sigma(k),\ \ \sigma(k)<\sigma(i)$,跟 $k$ 有關的反序對還是 1 個,沒有變動 - 也就是說,對位於 $i+1\sim j-1$ 的人來說,交換之後的反序對,要嘛相差 2 個或 0 個 最後是 $i,j$ 這兩個人本身: - 如果 $\sigma(i)<\sigma(j)$,交換後 $\sigma(j)>\sigma(i)$,也就是新增了一組反序對 - 如果 $\sigma(i)>\sigma(j)$,交換後 $\sigma(j)<\sigma(i)$,也就是減少了一組反序對 因此我們就知道反序對個數一定是相差奇數個,也因此 $\text{sgn}(\sigma_{i,j})=-\text{sgn}(\sigma)$ ## 證明 有了上面的觀察後,令 $B$ 是交換兩行後的方陣,$A$ 是原本的方陣: $$ \Large \begin{align} \text{det}(B)&= \sum_{\sigma\in S_{n}}\text{sgn}(\sigma)\cdot\prod_{k=1}^{n}B_{\sigma(k),k}\\ &=-\sum_{\sigma\in S_{n}}\text{sgn}(\sigma_{i,j})\cdot\prod_{k=1}^{n}A_{\sigma_{i,j}(k),k}\\ &=-\sum_{\sigma\in S_{n}}\text{sgn}(\sigma)\cdot\prod_{k=1}^{n}A_{\sigma(k),k}\\ &=-\text{det}(A) \end{align} $$ 倒數第二行單純是因為 $\sigma_{i,j}$ 也是一種 $\sigma$ 函數,所以只是換個記號表示而已。 所以我們成功的證明 $$ \large \text{det}(B)=-\text{det}(A) $$ 而上面是說交換 col,但我們已經證明了轉置保式,所以可以知道如果是交換 row,也會差一個負號 $$ \large \text{det}(B)=\text{det}(B^{T})=-\text{det}(A^{T})=-\text{det}(A) $$ ## 同行式零 可以輕鬆地從交換變號得出,如果 $A$ 當中有兩 row / col 是相同的,交換那兩 row/col 後依舊是原矩陣,因此: $$ \text{det}(A)=-\text{det}(A)\\ \Rightarrow \text{det}(A)=0 $$ --- # 多重線轉 再繼續往下介紹前,要先介紹一個酷東西,「多重線轉 multi-linear transformation」。 $$ T:F^{n\times n}\rightarrow F $$ 多重線轉的樣子如上,把一個方陣投射到純量。 但是這個東西不是線轉,他必須要給 input 做一些限制後才會有線轉的性質。 令 $A,B,C$ 是三個方陣,並且這 $B,C$ 這兩個方陣都是從 $A$「**修改第 $j$ 個 col**」而得到。 也就是說他們三個只差在第 $j$ 個 col,其他地方都一樣。 此時如果他們具有下列的**線性關係**: $$ A_j=aB_j+C_j $$ 則這個多重線轉在此時才會在投射出的純量上展現他的線轉特性: $$ T(A)=aT(B)+T(C) $$ # 改行方陣 此時我們在引進一個酷函數,改行方陣函數: $$ M_{A,j}(x)=B $$ 其中 $A\in F^{n\times n}$ 是我們的方陣,$x\in F^{n}$ 就是我們要替換成的 col;顧名思義 $M_{A,j}$ 就是把 A 的第 $j$ 個 col 換成 $x$: $$ B_j= \left\{\begin{matrix} x & \text{if }i=j\\ A_j & \text{otherwise}\\ \end{matrix}\right. $$ 而我們可以知道改行方陣函數並不是線性轉換: $$ M_{A,j}(ax+y)\ne aM_{A,j}(x) + M_{A,j}(y) $$ # 多重線轉 + 改行方陣 但是當我們把這兩個東西結合在一起,我們就湊出一個線轉了,所以下面是多重線轉的另一個定義: $$ \displaylines{ T:F^{n\times n}\rightarrow F\\ \text{T is multi-linear, if}\\ T\ \circ\ M_{A,j}\in \mathbb{L}(F^{n},F)\\ \text{hold for any }A\in F^{n\times n}\text{ and }j=\{1,2,...,n\} } $$ 因為線性轉換要滿足: $$ T(M_{A,j}(ax+y))=aT(M_{A,j}(x))+T(M_{A,j}(y)) $$ 而恰好 $M_{A,j}(ax+y)$ 跟 $M_{A,j}(x)$ 和 $M_{A,j}(y)$ 這三個從 $A$ 修改來的方陣確實只有第 $j$ 個 col 不一樣,其他都相同,並且: $$ M_{A,j}(ax+y)_j=aM_{A,j}(x)_j+M_{A,j}(y)_j $$ >畢竟是改行方陣 所以根據上上面原本多重線轉的定義,我們就可以知道: $$ T(M_{A,j}(ax+y))=aT(M_{A,j}(x))+T(M_{A,j}(y)) $$ :::warning 並且我們還可以注意到 $T(aA)=a^nT(A)$,因為 $aA$ 是一次性的把全部 col 都乘以 a,不過也等同一個一個的將 col 乘以 a 後再帶入 $T$。 ::: # 行列式函數是多重線轉 我們的行列式也是把一個方陣投射到一個純量,下面我們來證明他是個多重線轉: $$ A\in F^{n\times n},a \in F, x,y\in F^n\ ,j=\{1,2,...,n\}\\ $$ $$ \begin{align} \text{det}(M_{A,j}(ax+y))&= \sum_{\sigma\in S_{n}}\text{sgn}(\sigma)\cdot(ax_{\sigma(j)}+y_{\sigma(j)})\prod_{i\in\{1,..,n\}\setminus\{j\}}^{n}A_{\sigma(i),i}\\ &= a\sum_{\sigma\in S_{n}}\text{sgn}(\sigma)\cdot x_{\sigma(j)} \cdot \prod_{i\in\{1,..,n\}\setminus\{j\}}^{n}A_{\sigma(i),i} + \sum_{\sigma\in S_{n}}\text{sgn}(\sigma)\cdot y_{\sigma(j)}\cdot\prod_{i\in\{1,..,n\}\setminus\{j\}}^{n}A_{\sigma(i),i}\\ &= a\cdot \text{det}(M_{A,j}(x)) + \text{det}(M_{A,j}(y)) \end{align} $$ 所以我們知道 $\text{det}(M_{A,j})$ 是線性轉換,也就是說 $\text{det}$ 是多重轉換。 --- # 拉普拉斯降階法 這個東西似乎國中或高中就教過了。 $$ \displaylines{ \text{det}(A)=\sum_{i=1}^{n}A_{i,j}\cdot (-1)^{i+j}\cdot \text{det}(\tilde{A}_{i,j})\text{ for each j=1,2,...,n}\\ \text{det}(A)=\sum_{j=1}^{n}A_{i,j}\cdot (-1)^{i+j}\cdot \text{det}(\tilde{A}_{i,j})\text{ for each i=1,2,...,n} } $$ :::info 第二個等式可以由第一個等式加轉置保式得到 ::: ## 餘子式 / 餘因子 / cofactor 上面公式中的 $\tilde{A}_{i,j}$,意思是把 $A$ 的第 $i$ row 跟第 $j$ col 刪除後剩餘的部分: $$ \tilde{A}_{i,j}\in F^{(n-1)\times(n-1)} $$ 例如: $$ A= \begin{pmatrix} 1 & 2 & 3\\ 4 & 5 & 6\\ 7 & 8 & 9\\ \end{pmatrix}\\ \tilde{A}_{1,1}= \begin{pmatrix} 5 & 6\\ 8 & 9\\ \end{pmatrix}, \tilde{A}_{2,3}= \begin{pmatrix} 1 & 2\\ 7 & 8\\ \end{pmatrix}, \tilde{A}_{2,2}= \begin{pmatrix} 1 & 3\\ 7 & 9\\ \end{pmatrix}, $$ ## 證明 首先我們可以神奇的觀察出一件事情: $$ \displaylines{ \text{det}(A)=\text{det}(M_{A,j}(A_j))=\text{det}\left(M_{A,j}\left(\sum_{i=1}^{n}A_{i,j}\beta_i\right)\right) } $$ 我們把 $A_j$ 換成了 $A_j$ ...,沒錯,壓根形同沒換,但是我們可以得到右邊的 $\Sigma$;$\beta_i$ 是 $F^n$ 的標準基底的成員,別忘記 $\beta_i\in F^{n}$,而 $A_{i,j}\in F$。 由於行列式 + 改行函數會產生出線性轉換,因此: $$ \text{det}\left(M_{A,j}\left(\sum_{i=1}^{n}A_{i,j}\beta_i\right)\right)= \sum_{i=1}^{n}A_{i,j}\cdot\text{det}\left(M_{A,j}\left(\beta_i\right)\right) $$ 是不是逐漸看出降解法的雛型了。 所以接著就是處理 $\text{det}(M_{A,j}(\beta_i))$;如果我們以上面的例子舉例: $$ \displaylines{ A= \begin{pmatrix} 1 & 2 & 3\\ 4 & 5 & 6\\ 7 & 8 & 9\\ \end{pmatrix}\\ M_{A,2}(\beta_3)= \begin{pmatrix} 1 & 0 & 3\\ 4 & 0 & 6\\ 7 & 1 & 9\\ \end{pmatrix}\\ } $$ 我們可以把這個方陣稍微挪動一下,把剛剛替換上去的 $\beta_3$ 從第 2 行移動到第 1 行: $$ \begin{pmatrix} 0 & 1 & 3\\ 0 & 4 & 6\\ 1 & 7 & 9\\ \end{pmatrix}\\ $$ 接著再將 $\beta_3$ 唯一的那個 1 從他原本所在的第 3 列,移動到第 1 列: $$ \large \begin{pmatrix} 1 & 7 & 9\\ 0 & 1 & 3\\ 0 & 4 & 6\\ \end{pmatrix}= \begin{pmatrix} 1 & (7,9)\in F^{(3-1)} \\ 0_{F^{(3-1)}} & \tilde{A}_{3,2}\\ \end{pmatrix} $$ 這個是我們最終想要形成的樣子。對任何 $M_{A,j}(\beta_i)$,我們都可以透過上面的步驟,將他修改成: $$ \Large B= \begin{pmatrix} 1 & R\in F^{n-1}\\ 0_{F^{n-1}} & \tilde{A}_{i,j} \\ \end{pmatrix}\\ $$ 但是別忘記交換的過程中需要付出的變號: $$ \large (-1)^{(i-1)+(j-1)}=(-1)^{i+j} $$ 所以現在問題是 $B$ 這個東西要怎麼算行列式。 ## 分解觀察 $$ \Large \color{red}A= \begin{pmatrix} \overbrace{\color{red}B}^{F^{m\times m}} & \overbrace{\color{blue}D}^{F^{m\times n}} \\ \overbrace{\color{green}E}^{F^{n\times m}} & \overbrace{\color{red}C}^{F^{n\times n}} \\ \end{pmatrix}\in F^{(m+n)\times(m+n)}\\ $$ 如果 **$D$ 或 $E$ 有一個矩陣的內容全都是 0**,則: $$ \large \text{det}(\color{red}A)=\text{det}(\color{red}B)\cdot \text{det}(\color{red}C) $$ 也就是說,剛剛上面的結論中: $$ \displaylines{ B= \begin{pmatrix} 1 & R\in F^{n-1}\\ 0_{F^{n-1}} & \tilde{A}_{i,j} \\ \end{pmatrix}\\ \begin{align} \text{det}(M_{A,j}(\beta_i))&=(-1)^{i+j}\cdot\text{det}(B)\\ &=(-1)^{i+j}\cdot\text{det}(\tilde{A}_{i,j}) \end{align} } $$ 這樣就證明完成拉普拉斯降解法了。所以我們最後只要證明分解觀察就好。 證明其實也不難。首先我們可以觀察到一件事: $$ \sigma\text{ 選不到 E}\Leftrightarrow \sigma\text{ 選不到 D} $$ 我們討論兩種情形: - 當 $m<n$,如果 $\sigma$ 在 $1\sim m$ 行中,只選 $1\sim m$ 列 - 也就是說只選在 $B$ 這個區域,不選 $E$ 這個區域 - 此時不難發現,因為不可以選到重複的列,所以區域 $D$ 也因此不會被選到了 - 當 $m>n$,如果 $\sigma$ 在 $m+1\sim m+n$ 行中,只選 $m+1\sim m+n$ 列 - 也就是說只選在 $C$ 這個區域,不選 $D$ 這個區域 - 此時不難發現,因為不可以選到重複的列,所以區域 $E$ 也因此不會被選到了 所以確實選不到 $D$ 就選不到 $E$。 而我們對於這種只選 $B$ 跟 $C$ 兩個區域的 $\sigma$ 函數,我們把他拆成兩個 $\sigma$ 函數 : $$ \displaylines{ \sigma_B(j)=\sigma(j),\ j=\{1,...,m\}\\ \sigma_C(j)=\sigma(j+m)-m,\ j=\{m+1,...,m+n\}\\ } $$ >$\sigma_C(j)$ 會需要減掉 $m$ 是因為我們要得到的是 $C$ 這個子區域的 index,他是 $1\sim n$ 的範圍 並且我們可以發現: $$ \rho(\sigma)=\rho(\sigma_B)+\rho(\sigma_{C}) $$ 也就是說 $B$ 區域的反序對 + $C$ 區域的反序對,等於原本的反序對數量。 這個也不難推導,因為 $C$ 區域在 $B$ 的右下方,$\sigma$ 選在 $C$ 的列 index 一定都大於 $\sigma$ 選在 $B$ 的列 index,所以可以拆成兩部分的反序列數量相加。 ## 表演時間 $$ \Large \begin{align} \text{det}(\color{red}A)&= \sum_{\sigma\in S_{m+n}}\text{sgn}(\sigma)\cdot\prod_{i=1}^{m+n}\color{red}A_{\sigma(i),i}\\ &= \sum_{\sigma\in S_{m+n}:\text{只選 B 跟 C}}\text{sgn}(\sigma)\cdot\prod_{i=1}^{m+n}\color{red}A_{\sigma(i),i}\\ \end{align} $$ 因為如果選到 $D$ 就一定會選到 $E$,這樣就一定會選到 0,就會通通都不見。 $$ \large \begin{align} &= \sum_{\sigma\in S_{m+n}:\text{只選 B 跟 C}}\text{sgn}(\sigma_B)\cdot\text{sgn}(\sigma_C)\cdot\prod_{i=1}^{m}\color{red}A_{\sigma(i),i}\cdot\prod_{i=m+1}^{m+n}\color{red}A_{\sigma(i),i}\\ &= \left( \sum_{\sigma_B\in S_{m}}\text{sgn}(\sigma_B)\cdot\prod_{i=1}^{m}\color{red}B_{\sigma(i),i}\right) \cdot \left( \sum_{\sigma_C\in S_{n}}\text{sgn}(\sigma_C)\cdot\prod_{i=1}^{n}\color{red}C_{\sigma(i),i}\right)\\ &=\text{det}(\color{red}B)\cdot\text{det}(\color{red}C) \end{align} $$ --- # 行列式互乘 接著我們想要證明,對任意的方陣 $A,B\in F^{n\times n}$: $$ \text{det}(A\times B)=\text{det}(A)\cdot\text{det}(B) $$ 因為如果用拉普拉斯降解去算行列式,依舊需要 $\Omega(n!)$ 的時間,下面會介紹高斯消去這個快速的方法,只需要多項式時間。 # 互乘基本款 $$ \displaylines{ \text{for any }C\in F^{n\times n}\\ \text{det}(A\times C)=\text{det}(A)\cdot\text{det}(C),\ A\in F^{n\times n}\text{ 是標準列運算}\\ \text{det}(C\times B)=\text{det}(C)\cdot\text{det}(B),\ B\in F^{n\times n}\text{ 是標準行運算}\\ } $$ 我們循序漸進,先討論其中一者是標準列/行運算的情形;下面只證標準行運算,因為可以使用轉置保式。 - 如果 $B$ 是「交換」 - $\text{det}(C\times B)=-\text{det}(C)$,因為交換差負號 - 而剛好 $\text{det}(B)=-1$,因為只要 $B$ 交換後剛好是 $I_n$ - 如果 $B$ 是「伸縮」 - $\text{det}(C\times B)=c\cdot\text{det}(C)$,因為行列式是多重線轉 - 而剛好 $\text{det}(B)=c$,可以回顧對角線乘積的那部分 - 如果 $B$ 是「跳加」 - 還是一樣因為行列式是多重線轉: $$ \begin{align} \text{det}(C\times B)&=\text{det}(M_{C,j}(c\cdot C_i+C_j))\\ &=c\cdot \text{det}(M_{C,j}(C_i))+\text{det}(M_{C,j}(C_j))\\ &=0+\text{det}(M_{C,j}(C_j))\\ &=\text{det}(C)\\ \end{align} $$ 所以我們成功證明基本款確實成立。 ## 高斯消去法算行列式 因為我們可以根據基本列運算將 $C$ 方陣轉成上三角矩陣 $D$: $$ \displaylines{ A_{(1)}\times A_{(2)}\times ... \times A_{(p)}\times C = D\\ \text{det}(A_{(1)})\cdot \text{det}(A_{(2)})\cdot ... \cdot \text{det}(A_{(p)})\cdot \text{det}(C) = \text{det}(D)\\ \Rightarrow \text{det}(C) = \frac{\text{det}(D)}{\text{det}(A_{(1)})\cdot \text{det}(A_{(2)})\cdot ... \cdot \text{det}(A_{(p)})} } $$ - 可以回顧那三種基本運算的行列式值因為都不是 0 - $D$ 如果是滿階矩陣,由於對角線都是 1,因此可之行列式值就是 1 - 但如果不是滿階,行列式值就會是 0 ## 可逆式非零 一個可逆方陣 $A$,之前有證明他經過高斯消去後必定得到 $I_n$,也就是滿階的意思;而上面也發現如果滿階則行列式值就不會是 0,反之就會是 0。 $$ 可逆\Leftrightarrow 滿階 \Leftrightarrow 式非零 $$ # 互乘普遍款 對任意的 $A,B\in F^{n\times n}$ $$ \text{det}(A\times B)=\text{det}(A)\cdot\text{det}(B) $$ 下面我們分段討論。 ## 任一非滿階 根據上周的不升階觀察,一旦兩者之一有人不滿階,則可以知道: $$ rank(A\times B)\le min(rank(A),rank(B)) < n $$ 因此就可以根據非滿階而知道行列式值等於 0;不失一般性,令 $B$ 就是那個不滿階的傢伙: $$ \text{det}(A\times B) = 0 = \text{det}(A)\cdot \text{det}(B)=\text{det}(A)\cdot 0 = 0 $$ 所以確實滿足互乘定理。 ## 均滿階 由於 $B$ 滿階,一樣還是上週,我們有說明 $B$ 經過高斯消去後會得到一個 $I_n$,所以其實可以將 $B$ 表示為: $$ B=B_{(1)}\times B_{(2)}\times ... \times B_{(p)} $$ 這樣一來就可以用基本款的互乘定理了: $$ \begin{align} \text{det}(A\times B)&=\text{det}(A\times B_{(1)}\times B_{(2)}\times ... \times B_{(p)})\\ &=\text{det}(A)\cdot \text{det}(B_{(1)})\cdot \text{det}(B_{(2)})\cdot ... \cdot \text{det}(B_{(p)})\\ &=\text{det}(A)\cdot\text{det}(B) \end{align} $$ >要注意上面是用了兩次互乘定理。 :::warning 其實推論的過程也不一定要知道 $A$ 的情況到底如何,只需要知道 $B$ 的情況就好,因為我們有轉置保式這個強力的工具可以用。 ::: --- # 冪零則式零 當我們說一個方陣 $A$ 是「冪零 nilpotent」,意思是說存在一個正整數 $k$,滿足: $$ \Large A^{k}=0_{F^{n\times n}} $$ 而我們可以根據熱騰騰的互乘定理,知道: $$ \text{det}(A)=0 $$ # 反矩陣的行列式 一樣根據熱騰騰的互乘定理,知道: $$ A\times A^{-1}=I_n\\ \Rightarrow \text{det}(A)\cdot \text{det}(A^{-1}) = 1 \Rightarrow \text{det}(A^{-1}) = \frac{1}{\text{det}(A)} $$ # 相似方陣 所謂的相似方陣,是說對於兩個方陣 $A,B$,如果存在一個可逆的方陣 $Q$,滿足: $$ B=Q\times A \times Q^{-1} $$ 此時記作: $$ A \sim B $$ 例如 $V$ 的任兩個基底 $\beta$ 跟 $\gamma$,對於一個線運 $T\in \mathbb{L}(V)$,在這兩個基底的線轉矩陣就是相似矩陣: $$ [T]_{\beta}^{\beta}\sim [T]_{\gamma}^{\gamma} $$ 因為我們可以找到 $Q=[I_V]_{\beta}^{\gamma},\ Q^{-1}=[I_V]_{\gamma}^{\beta}$,這裡請回顧 [反線轉的線轉矩陣](https://hackmd.io/QuO8LVnhTt-YGwyxm0dROA#%E5%8F%8D%E7%9F%A9%E9%99%A3%E8%88%87%E5%8F%AF%E9%80%86%E7%9F%A9%E9%99%A3) >$T$ 可逆,若且唯若,$T$ 的線轉矩陣可逆。 >並且 $T$ 的線轉矩陣的反矩陣,就是 $T^{-1}$ 的線轉矩陣。 >$[I_V]_{\beta}^{\gamma}\times [I_V]_{\gamma}^{\beta}=[I_V]_{\gamma}^{\gamma}=I_n$ $$ [T]_{\gamma}^{\gamma}=[I_V]_{\beta}^{\gamma}\times [T]_{\beta}^{\beta}\times [I_V]_{\gamma}^{\beta} $$ ## 居易推論 名稱 By 老師。 >同是天涯淪落人,相逢何必曾相識 -- 白居易 琵琶行 >相逢何必曾相似 by 老師 如果 $A$ 相似於 $B$,則 $\text{det}(A)=\text{det}(B)$ 這個用大腦快速推論就可以了,因為 $Q$ 跟 $Q^{-1}$ 的行列式值乘起來是 1。 --- # 克拉瑪公式 Cramer’s Rule 大名鼎鼎的克拉瑪。 對於某個線性系統: $$ E:A\times x = b $$ 之前我們有證明,如果 $A$ 可逆,[則 $|S(E)|=1$,也就是說有唯一解](https://hackmd.io/3EZeA7jjS7yjT5v-_P7BQw#%E4%BF%82%E6%95%B8%E6%96%B9%E9%99%A3%E8%A7%80%E5%AF%9F)。 則對於那個唯一的解 $s$,我們知道: $$ s=A^{-1}\times b $$ 克拉瑪公式告訴我們: $$ s_i=\frac{\text{det}(M_{A,i}(b))}{\text{det}(A)} $$ 也就是說,$s$ 的第 $i$ 個元素的值,就是去算出把 $A$ 的第 $i$ 行換成 $b$ 後的行列式值再除以 $A$ 的行列式。 ## 證明 要證明克拉瑪公式,要先通靈出一個觀察: $$ \displaylines{ A\times I_n = A\\ A\times M_{I_n,i}(s) = M_{A,i}(b)\\ } $$ 這個事實確實合理,但是要想的到用這個來證明,屬實頗難。 總之我們可以繼續根據分解觀察: $$ \text{det}(M_{I_n,i}(s))\\ =\text{det} \begin{pmatrix} 1 & 0 & \dots & s_1 & \dots & 0 \\ 0 & 1 & \dots & s_2 & \dots & 0 \\ \vdots & \vdots & \ddots & \vdots & & \vdots \\ 0 & 0 & \dots & s_i & \dots & 0 \\ \vdots & \vdots & & \vdots & \ddots & \vdots \\ 0 & 0 & \dots & s_n & \dots & 1 \\ \end{pmatrix}=s_i $$ 因為可以切出右下角那個區塊的下三角矩陣: $$ \text{det} \begin{pmatrix} s_i & \dots & 0 \\ \vdots & \ddots & \vdots \\ s_n & \dots & 1 \\ \end{pmatrix}=s_i $$ 左上角是個單位方陣 $I_i$;左下角是全都是 0 的區域 $0_{F^{(n-i)\times i}}$。 所以再使用互乘定理就可以知道: $$ \displaylines{ \text{det}(A)\cdot \text{det}(M_{I_n,i}(s)) = \text{det}(M_{A,i}(b))\\ \text{det}(M_{I_n,i}(s))=s_i=\frac{\text{det}(M_{A,i}(b))}{\text{det}(A)} } $$ # 反矩陣公式 我們可以馬上從克拉瑪公式的思路推出反矩陣公式。 因為反矩陣滿足: $$ A\times A^{-1} = I_n $$ 所以我們可以巧妙的拆一部份出來看: $$ A\times (A^{-1})_i = e_i $$ 此時其實就可以看做是一個線性系統,並且 $(A^{-1})_i$ 就是那個唯一的解 $s$: $$ \displaylines{ E:A\times x = b\\ s = (A^{-1})_i,\ \ \ b = e_i } $$ 所以一樣用上面的通靈絲路,可以得到: $$ \displaylines{ \text{det}(M_{I_n,j}(s)) =\text{det}(M_{I_n,j}((A^{-1})_i))\\ =(A^{-1})_{j,i} =\frac{\text{det}(M_{A,j}(e_i))}{\text{det}(A)} } $$ >別忘記 $A_{i,j}$ 跟 $A_i$ 兩種表示法的差異 所以如果把上面的代號換一下,可以得到: $$ (A^{-1})_{i,j}=\frac{\text{det}(M_{A,i}(\beta_j))}{\text{det}(A)} $$ 接著再使用拉普拉斯降解時用到的中間結果: $$ \frac{\text{det}(M_{A,i}(\beta_j))}{\text{det}(A)}=(-1)^{i+j}\cdot\frac{\text{det}(\tilde{A}_{j,i})}{\text{det}(A)} $$ $\beta$ 是標準基底。