線性方程組之一:列向量觀點
線性方程組應該是線性代數中貫穿始終的一個問題,作為本專欄的開篇,我想聊一聊線性方程組。可能線性代數學的還可以的讀者多半會覺得線性方程組是trivial的:它是中學時學到的二元一次方程組的直接推廣,關於解的存在性、唯一性都有理論上的判別依據,要具體地求解的話又有Cramer法則,還有什麼可說的呢?
其實我個人認為,線性方程組裡面大有門道,理解好線性方程組,對於理解線性代數的基本概念大有裨益。本文主要從列向量的觀點去考察線性方程組,後續還會從行向量的觀點、實際求解的角度去討論。
首先我們回憶一下,一個線性方程組用矩陣寫法可以表示為,這裡的是一個的矩陣,是一個維向量,是一個維向量,所有的分量都在實數域上取值。如果是零向量,我們往往稱之為齊次線性方程組,否則成為非齊次線性方程組 ,後面大家會看到,齊次與非齊次,在很多場景下表現出截然不同的性質。
本文既是說從列向量的觀點區考察,那麼列向量在哪呢?如果我們把矩陣分塊為個維向量,並且把未定元寫為分量形式,則有
這樣改寫之後有什麼好處呢?似乎只是換湯不換藥而已。先考慮一下的情況,也就是
此時聯想一下線性代數中的兩個重要概念——線性相關與線性無關,就看得出列向量表達的意義了。所謂的齊次線性方程組是否有非零解,實際上也就是在問係數矩陣的列向量是否是線性相關的。如果的列向量線性相關,那麼根據線性相關的定義,必然存在不全為零的數使得,那麼也就是說這個齊次線性方程組必然有非零解。反之,如果的列向量線性無關,該齊次線性方程組必然只有零解。
從這一角度,我們回想一下關於齊次線性方程組的一些結論。我們在線性代數中都學過,如果,那麼必然有非零解。直觀上看,方程的個數可以看成是「約束」,而未定元的個數可以看成是「自由度」,「自由度」比「約束」多一定有(非平凡)解,這一結論是符合直覺的。如何用更數學的語言去表達呢?用我們的列向量的觀點就一目了然。我們有個維向量,由維數的定義,必然導致它們是線性相關的,立即可知這樣的齊次線性方程組是有非零解的。
如果,就退化為了我們最喜歡的方陣的情形。我們學過,如果是可逆矩陣,那麼只有平凡解,也就是零解;如果不可逆,那麼一定有非零解。或者等價地,也可以從行列式是否為0的角度去闡述這一結果。前一半結論非常顯然,直接在方程兩邊乘以即可見。對於後一半結論,我們同樣從列向量的角度去考慮。矩陣不可逆,說明什麼?說明,而根據秩的定義(極大線性無關組的個數)我們又知道,的列向量必定是線性相關的,因而必有非零解。同理,矩陣可逆說明,也就是列滿秩,列向量線性無關,因而只有零解。從多個角度看待這一結果,最終殊途同歸。
到此為止考察的都是齊次線性方程組,對於非齊次的情形又如何?我們回到列向量表達式
當的時候,這個方程有什麼意義呢?這牽涉到線性表示的概念,粗略地說,如果這個方程有解,也就是說可以由的列向量的線性組合表示出來。用線性空間的語言來表述,就是我們有了向量,考慮它們張成的子空間
根據線性空間的定義,非常容易驗證這確實是的子空間。問非齊次線性方程組是否有解,就等價於問我們是否有。這也就揭示了齊次線性方程組與非齊次線性方程組的本質不同——前者是考慮線性相關與線性無關,後者是考慮線性表示 。
關於線性表示這一點,我想放到低維的情況來看非常明顯。比如說我們考慮,方程組這時可寫為
還記得高中數學向量運算的讀者,應該都很容易看出,這就是在問向量是否共線,而所謂的共線,正是我們這裡談論的、可以由線性表示的低維版本。
對於非齊次線性方程組,從列向量觀點出發我們可以得到什麼結果呢?這裡我主要想要討論相容性定理。所謂的相容性定理說的是如果有解,當且僅當,也就是說在矩陣後面添加一列得到的新矩陣與原來的係數矩陣具有相同的秩。從列向量觀點考察,有解當且僅當可以由線性表示,而秩的定義是一個向量組裡極大線性無關組的向量個數,由於已經可以被線性表示了,也就是說在向量組添加上向量,其秩並不會有改變,也就是相容性定理所陳述的內容。
最後,我們仍然討論一下為方陣的情形。此時,如果可逆(或者等價地,),那麼一定有解。這一結果是顯然的,但我在此提及此例就是想熟悉一下線性表示的觀點去看問題。是可逆的,此時必有的列向量是線性無關的,它們都是維空間中的向量,又恰好有個,因此一定構成一組基。既然是基,那麼一定可以由它們線性表示出來,也就是說有解。但是注意此處的並不是充要條件,也就是說有可能不可逆,仍然有解,原因在於只要即可,這並不需要可逆。
推薦閱讀: