當初修課的東西現在看起來淺的不得了
一件(線代的)事情至少要會:
1. 定義與實例
2. 具體操作
3. 幾何觀點
4. 直觀概念
很多東西都突然覺得很深刻:
========================================================================
例一: column rank 與 row rank 相等
========================================================================
1.
我們知道:
c-rk(A) 定義為 「矩陣A中某一組maximal線性獨立column vectors的個數」
r-rk(A) 定義為 「矩陣A中某一組maximal線性獨立row vectors的個數」
2.
這兩個東西看起來好像會一樣 但是我們沒有辦法直接說明
常見的作法是把矩陣A換成 row-echelon form
這樣對於左上角的 rk*rk 子矩陣分別從行/列的方向去數pivots會一樣
可以告訴我們c-rk(A) = r-rk(A)
可是在這個層級裡面我們只看得見「矩陣裡面的數字」
「矩陣裡面的數字」對我們來說是沒有意義的!
我們也不知道行列操作的本質是什麼
我們只是呆呆的把一些數字經由小學算術換成另外一些數字
3.
讓我們回到源頭,
矩陣是個把「有限維」向量空間實體化的東西
*來看一個特例:
我們可以想像在R^n上有一個n維向量 v (此時的基底是e1,...,en)
一個Linear map可以把 v 變成另外一個向量 T(v) 同樣落在 R^n上
分開看每一個基底 ej
經過T變換之後變成的 T(ej) 我們一樣可以用e1~en來表示
寫作 T(ej) = Σek*akj 把係數寫下來 就是矩陣!
T
向量空間V → 向量空間V
e1 ┌ a11 a12 … a1n ┐ e1
e2 │ a21 a22 a2n │ e2
: │ : : │ :
: │ : : │ :
en └ an1 an2 … ann ┘ en
* 一般來說 T:V → W 可以把 向量空間V上的一個向量v
變成 向量空間W上的一個向量 T(v)
對於這個T,我們可以「任取」V的基底 e1~en 和W的基底f1~fm
可以找到唯一的表示 T(ej) = Σfk*akj 這些係數寫下來就是矩陣
所以一個矩陣就是:
「對於選定的T:V→W 採用基底e1~en和f1~fm對應的係數變化」
描述的是
「一個向量v在e1~en的方向以什麼倍數(就是矩陣係數)的變成T(v)」
T
向量空間V → 向量空間W
e1 ┌ a11 a12 … a1m ┐ f1
e2 │ a21 a22 a2m │ f2
: │ : : │ :
en │ : : │ :
└ an1 an2 … anm ┘ fm
這樣看起來矩陣是個極度不精確(或你可以說可塑性大)的東西
我們只看的到係數的變化卻看不見它的「向量改變」本質
*
我們實際上對A來做行列的操作,就是左右分別乘上基本矩陣 Q和P
使QAP變成我們想要的樣子
(也就是前rk*rk的子矩陣是I_rk 其他都是0)
*而基本矩陣的本質是「變換基底以描述同個向量」 所以我們可以寫成:
id T id
V → V → W → W
e'1 e1 f1 f'1
: [P] : [A] : [Q] :
e'n en fm f'm
QAP要是我們要的樣子,就是
「將v以e'1~e'n描述 變成 將id。T。id(v)=T(v)以f'1~f'm描述的係數變化」
4. 幾何觀點
在我修課(線代)的那個時候,dual space和dual basis是很沒有用的東西
但是我覺得我對這個的看法反而在代導被康老啟發了,在那之前我們先來看:
*什麼是矩陣A的轉置矩陣 tA ?
我們的認知絕對不可以只是把矩陣的行列換過來寫
回憶剛剛的圖表
矩陣A是把一個線性寫像 T:V→W 分別選定基底後的係數表示
有 T(ej) = Σfk*akj
k
我們能不能找到一種通用的方法、對應的東西
可以有 變換(基底1) = Σ基底2*ajk ?
k
答案就是用對偶空間來描述:
* 對於T:V→W 先畫出
T
V → W
e1 f1
: [A] :
en fm
我們可以決定T*:V*→W* 有以下關係
T*
V* → W*
e*1 f*1
: [B] :
e*n f*m
若V是一個over K 的向量空間,則V*是對應V的對偶空間
元素都是「把V對到K的線性轉換」即V* = Hom_K(V,K)
而e*i則是一個 把ei對到1, 其他基底都對到0的 線性轉換
我們把這種東西叫做 linear functional...依此類推f*j
譬如說若 v = 5e1 + 3e2 + 2e4
則 e*1(v) = 5*1 + 3*0 + 2*0 = 5
e*4(v) = 5*0 + 3*0 + 2*1 = 2
可以硬寫開來證明這樣產生的係數變化的矩陣B就是 tA !
而我們就可以把矩陣轉置著寫想成對偶空間上發生的事情。
*而我們用幾何的觀點來看r-rk等於c-rk這件事情就是:
r-rk(T)
= r-rk(A) 因為row rank is well defined
= c-rk(tA) 直接把它從另一個方向來數maximal LI set
= dim(im(T*)) 由幾何定義的rank得來
= dim(T*(W*)) 其中T*(W*)為W*的子空間
= dim(V*) - dim(T*(W*)⊥) 因 dimV* = dimU* + dimU*⊥
= dim(V) - dim(ker(T)) 因 dimV = dimV* 且 ker(T) = T*(W*)⊥
= dim(im(T)) 由rank equation
= c-rk(A)
= c-rk(T)
這中間發生了三件奧妙的事情:
(a) Rank Equation: dim V = dim(im(T)) + dim(ker(T))
(b) 若U*為W*的子空間 則 dimV* = dimU* + dimU*⊥
(c) ker(T) = T*(W*)⊥
前兩件事情可以紮實的由定義算出來
(或是說用Steinitz的方法來換基底之類的)
第三件事情可以由定義檢驗它是對的
但是說實在我也還沒有很明白中間的insight為何
至少我看來它把看「關係不明確的V和對偶空間V*」連結了起來
5.所以我們有三種觀點:
(a) 對寫成方塊狀的數字,我們可以把它按照規則動一動
變成一個樣子 然後指著它說c-rk = r-rk
(但是不知道自己在講什麼東西)
(b) 看著擺成方塊的數字,真實的看到了兩邊的基底和中間的關係
我們可以分別找到兩組基底,T這個變換在共rank個方向上
各別可以把那個方向的向量伸長且不會轉到別的方向去
延伸下去就是對角化的概念!
(c) 看著兩邊的基底和其中的關係,想到了對應的對偶空間
把「從另一個方向來數」看作了對偶空間上發生的事情
再藉由良好的定義基底讓等式成立
(說實在的我還沒有看透insight)
======================================================================
如果今天去問大學生「你會不會說明 row rank = column rank?」
可能很多人都會認為這是件trivial的事情
但是這個看起來trivial的事情對我來講意義很深刻
有點誇張的是,當我第一次了解dual space在幹麼的時候
是有點激動的 好像開了通往另一個世界的窗戶一樣
跨過這個窗戶究竟是一個新世界還是狹窄的小房間我並不清楚
(好像後者的可能性比較大 xD)
但是騙不了自己的是我那時候激動了一下
有如蚍蜉撼樹
後記:
其實我跳過了 「若U*為W*的子空間 則 dimV* = dimU* + dimU*⊥」的說明
因為跟本文不太有關係,但是我還是補一下:
我們可以定義 操作<˙,˙>如下:
V x V* → K
(v , f )|→
若U*為W*的子空間 則 U*⊥ = {v in V|