相信高中的時候大家都學過數學歸納法(The Principle of Mathematical Induction),但我一直不知道數學歸納法這個定理本身也是需要證明的!(事實上在數學中除了公設以外,所有的定理都需要證明)
這個證明使用的是反證法(proof by contradiction),以及引理(Lemma)這個以前沒注意過的概念,推導的過程需要相當的邏輯能力,蠻精采的,因此趁機整理一下。
由於數學歸納法適用的問題是自然數命題,因此需要對自然數的基本性質有一定的了解,這部份的補充說明請參考中原大學數學系董世平教授所寫的數學歸納法一文中關於「皮阿諾公設」的說明。
在了解了自然數的基本性質以後,接下來看一下數學歸納法的證明過程(字蠻小的,可能需要另開視窗):
(此證明在研究所考試中曾經考過:91交大資科, 93中原資工)
反證法真的很有趣,比起一般的數學推導(化繁為簡、化簡為繁),欲使用反證法需要有很強的邏輯觀念,最普遍的應用是證明存在性或無限多等無法明確描述的觀念有關的問題,例如:證明正整數中有無限多個質數。因為這個命題是「無限多」,因此無法直接將所有質數表列出來證明(根本表列不完),要驗證此命題是否正確,就必須先假設質數是有限個(故意假設錯誤),再推導出矛盾的結果,進而反證此命題為真。
(存在性問題也是類似的概念,因為沒辦法直接證明「不存在」,因此必須先假設存在,再導出矛盾的結果,進而反證確實不存在)
數學歸納法的應用除了證明一次方連加、二次方連加、三次方連加等公式以外,在 Wikipedia 上面還可以看到應用在 computer science, graph theory 中的變形(稱作 Structural induction (中文)),這部份我還沒學到,所以先略過不談 XD
數學歸納法在使用上要特別小心,若邏輯觀念不夠清楚,使用時可能會產生以下的錯誤,進而推導出奇怪的謬論--利用數學歸納法證明飯永遠吃不飽(原文請參考國立中央大學教學網):
先想想看這個顯然是胡扯的證明到底錯在哪裡?好好思考之後再看一下解答,對於建立邏輯觀念有很大的幫助。(更多的數學歸納法使用錯誤範例請參考:大葉大學通訊與計算機工程學系的許介彥教授的數學歸納法使用上易犯的錯誤一文)
另一個更深入的應用是「如何找出劣幣」(原文請參考台大數學系蔡聰明教授的如何找出劣幣-簡介訊息與熵的概念一文),這跟最近唸資料結構/演算法時碰到的 Decision tree 也有關連,由於我沒辦法解釋的比蔡教授更清楚,所以這邊也略過不談 :p
數學歸納法的部份就先整理到這邊,下一篇預計整理的是「整數和偶數的個數相同」的相關問題。
訂閱:
張貼留言 (Atom)
Google Spreadsheet 裡用規則運算式
最近因為工作關係,遇到要用 Google Form 及 Google Sheet 所以研究了 Google Sheet 裡的一些 function 怎麼用 首先,分享一下如何在 Google Sheet 裡用規則運算 :D
-
今天坎尼去上課老師講了一題很有趣的題目 所以回到家坎尼就順手試驗了一下 I. XOR (exclusive OR) XOR 是邏輯運算子之一,定義為: 當兩數的值不同才為 true,相同則為 false 其他相關說明可以參考 維基百科:XOR II. 程式 以往的做法會宣...
-
好久沒開 Chart Control 議題了 剛好前陣子 Codeplex 出現可以輕鬆建立 Excel 檔案的 Library- NPOI 於是坎尼想說研究一下,看能不能把 Chart Control 匯出圖片到 Excel 中 沒想到只花了不到1小時就研究...
-
上個週末打開一個影片檔,發現字幕檔是中英文混合的,造成字幕吃掉畫面很大的空間, 打開字幕檔一看,果然每一段時間都有先英文後中文的字幕: 因此我想要自己作成「只有中文」&「只有英文」兩個字幕檔,但這個檔案有6418 行,如果要手動一行一行的刪除...
沒有留言:
張貼留言