第一章 可計算性函數
§1.1 算法和能行過程的直觀含義(非數學定義)
計算機的主要功能就是能算,首要關心的就是能不能算、如何算.能算,就表明能獲得信息,以某種方式獲得信息.算法就是獲得信息的過程.那么什么是算法呢?什么是能行過程?
+,-,×,÷是最簡單的算法和能行過程.算法也叫能行方法或能行過程,是一個相當古老的概念,其歷史最早可以上溯到古希臘時代.
中國的祖沖之計算圓周率的算法也必定是能行的,他的算法記錄在《綴術》中,可惜失傳了.現在保存完整的《九章算術》,是中國古代第一部數學專著,大概成書于公元一世紀.《九章算術》專注于講解算法,不注重推理證明.一般是先提出幾個同類型的具體的問題,然后給出結果,給出計算過程.舉個例子,開平方運算在《九章算術》是這樣運算的:
開方術曰:“置積為實,借一算,步之,超一等.議所得,以一乘所借一算為法而以除.除已,倍法為定法.其復除,折法而下.復置借算步之如初.以復議一乘之,所得副,以加定法,以除.以所得副從定法,復除折下如前.”
例1.1.1 n=7569,求.其算法如下:
(1)可將n分解為n=n1+100n2,即7569=69+75×100,則整數平方根可分解為s=s1+10s2,余數為r=n-s2;
(2)計算=75-64=11;
(3)再計算=7,r1=(100r2+n1)-(20s2+s1)s1=(11×100+69)-(20×8+7)×7=1169-1169=0;
(4)得s=s1+10s2=87,r=0.即7659=872+0.
從《九章算術》的這個例子我們可以看出,這些是自動運行的方法,它們可以機械運行.因此我們可以得到結論:在直覺上,算法或能行方法,就是一種機械規則,或是一種自動運行的方法,或是一種能執行某種數學運算的程序.我們在中小學學過的所有數學運算其實都是能行運算的,簡稱能行的,例如求第n個質數、求兩個正整數x,y的最大公因數、判斷是否x|y……在德國海德堡的一個博物館里,有一臺世界上最早的計算機.輸入一個數字,它會自動地輸出另一個數字.這是算法的另外一個特點,即算法可以用黑箱非正式表示.輸入一個物體,如一個數字,通過黑箱(如一臺電腦,或一條被馴服的狗),自動地給出一個輸出.

上面這些函數在直覺上都是可計算的.我們一般認為一個函數稱為可計算函數,如果存在一種算法能夠計算該函數.當然并非所有函數均為可計算函數.例如

就是直覺上不可計算函數.我們不可能在事先知道g(n)=0,除非我們在一位位查看π的小數表示形式時恰好發現存在連續n個7.我們不知道對某個n,我們會不會不得不一直找尋下去.所以從直覺上看g不可計算.所以,可計算的事物,必有一個算法,必定能在有窮步內給出答案.
- 管致中《信號與線性系統》(第5版)【教材精講+考研真題解析】講義與視頻課程【26小時高清視頻】
- 西安外國語大學357英語翻譯基礎[專業碩士]歷年考研真題及詳解
- 張永剛、董學文《文學原理》筆記和典型題(含考研真題)詳解
- 幼兒教師師德修養與專業發展
- 移動電子商務基礎與實務(第3版·微課版)
- 2020年青海公務員錄用考試專項教材:判斷推理【考點精講+典型題(含歷年真題)詳解】
- 新編經濟法
- 電子商務文案策劃與寫作全能一本通(微課版)
- 大學體驗英語項目組《大學體驗英語綜合教程(1)》(第3版)學習指南【詞匯短語+課文精解+全文翻譯+練習答案】
- 中國著名大學校長畢業訓詞
- 物流案例分析與方案設計
- 中國服裝史(2018版)
- PLC應用技術
- 歌曲寫作與改編(第二版)
- 平狄克《微觀經濟學》(第8版)筆記和課后習題詳解