中國剩餘定理!唯一以中國名字命名的數學定理

定理起源

“今有物不知其數。三三數之剩二,五五數之剩三,七七數之剩二,問物幾何,答曰二十三。”

這乃聞名於世的“物不知數”問題,記載於《孫子算經》(成書於公元 67-270 年之間),被譽為中國古代數學之經典。用現代數學語言表述為:“有一個數,被3除餘2,被5除餘3,被7除餘2,問這個數是多少?答:該數為23”

中國剩餘定理!唯一以中國名字命名的數學定理

現在我們帶著23去驗算,發現23確實符合題意,但是23是如何求得的呢?我們參考一下《孫子算經》對此題的解法:“三三數之剩二,置一百四十;五五數之剩三,置六十三;七七數之剩二,置三十。並之,得二百三十三,以二百十減之,即得。”“答曰:二十三。”

翻譯:“被3除餘2,找到140;被5除餘3,找到63;被7除餘2,找到30。全加起來,得到230,然後再減去210,得到最後答案23。”

當第一次讀到這個答案的時候,確實感覺很“謎”,雖然得到了最後的答案,但是每一步都是那麼的突兀,令人很費解。比如:為什麼是140?63?30?為什麼要減210?等等。如果我們對《孫子算經》的理解僅僅停留在這個層面上,那就大錯特錯了。

中國剩餘定理!唯一以中國名字命名的數學定理

《孫子算經》記載了這一類題目的的通解:“凡三三數之剩一則置七十,五五數之剩一則置二十一,七七數之剩一則置十五,一百六以上以一百五減之,即得。”(注:古稱“106”和“105”為“一百六”和“一百五”,而稱“160”和“150”為“一百六十”和“一百五十”。所以,這裡的“一百六”和“一百五”分別指“106”和“105”。)

翻譯:當問題是關於除數是3、5、7的時候,如果被3除餘1,則找到70(70能保證被3除餘1,同時被5和7整除);被5除餘1,則找到21(21能保證被5除餘1,同時被3和7整除);被7除餘1,則找到15(15能保證被7除餘1,同時被3和5整除),最後答案如果比106大,那麼就減去105。此算法給出了找到餘數為1的方法。當問題要求我們求“餘X”的數時,只要先求出“餘1”的數,然後再乘以“X”就可以了。

回到“物不知數”問題,要求被3除餘2,由於70滿足“餘1”,故70×2=140;要求被5除餘3,由於21滿足“餘1”,21×3=63;要求被7除餘2,由於15滿足“餘1”,15×2=30。最後要減的210,實際上是減了兩遍105罷了。這就解釋了《孫子算經》中的解法原理!

中國剩餘定理!唯一以中國名字命名的數學定理

方法雖然好,但是難記啊,中國人的智力水平馬上就體現出來了,比如我們比較擅長編“順口溜”,甚至是“詩歌”,明代的程大位就記錄了一首“孫子歌”。什麼?你不知道程大位?他可是 《算法統宗》的作者,珠算一代宗師,現如今的珠算技巧,均來自於程大位!

“三人同行七十稀,

五樹梅花廿一枝。

七子團員整半月,

除百零五便得知。”

在這首歌訣中完全體現了該方法的精髓,“三人同行七十稀”中有數字3和70,如果是除以3的餘數問題時,迅速找到70,後面的詩句同理。最後一句的“除”,實際是“減”的意思。得到該題的解法:N=70×2+21×3+15×2-105×2=23。

可能有些朋友對這個問題的解法還不是很理解,這裡我們引入現代數學的觀點,讓大家更好的理解“物不知數”問題的精髓,為閱讀下文做好鋪墊!

堆壘法(華羅庚用的方法)華老認為:“只要不是白痴,都能解得答案”

中國剩餘定理!唯一以中國名字命名的數學定理

根本在於根據條件逐步尋求滿足條件的解,從三三數之剩二開始,先找到2,然後加3,得到5,由於5之滿足第一個條件,但不滿足第二個條件,所以再加3,直到找到既滿足三三數剩二,又滿足五五數剩三的數,自然會得到8。此時不需要再加3了,要加上前兩個數的公倍數,即[3,5]=15,之後繼續加15,直到這個數滿足第三個(七七數之剩二)條件,此時我們會得到23。

這裡我們不得不佩服華老,他老人家僅用加法就求出了答案,印證了“神奇化易是坦道”的名言。

集合觀點

寫出三除餘二的數,寫出五除餘三的數,寫出七除餘二的數,然後再找到同時滿足這個三個條件的數。

三三數之剩二,設為集合A={2,5,8,11,14,17,20,23,26,…}

五五數之剩三,設為集合B={3,8,13,18,23,28,33,38,43,…}

七七數之剩二,設為集合C={2,9,16,23,30,37,44,51,58…}

同時滿足三個條件的數是 A、B、C 中都有的數,也就是:A∩B∩C={23,128,233,…},故符合此題解的最小正整數為 23。

希望以上兩個處理方法能更好的幫助大家理解“物不知數”問題的核心,同時也能更好的理解這個歌訣的道理所在。

我們把時間軸再拉回到古代,一直以來,歌訣或者算法看似解決了問題,實則不然,因為這個口訣只適合除數是3,5,7的情況。當除數被更改的時候,立馬出現的了新的問題,比如:“有一個數,被5除餘2,被7除餘3,被11除餘2,問這個數是多少?”甚至說一個小學水平的人,都能如法炮製的出一個新的問題,同時這個問題非常難解!

還是需要一個更加系統的解法,問題由中國人提出,自然由中國人去解,經過幾代人的努力,在宋朝終於誕生了系統的解法,叫“大衍求一術”,它的創始人就是我們今天的主角--秦九韶!

獨特智慧--大衍求一術

中國剩餘定理!唯一以中國名字命名的數學定理

秦九韶(約1208-1268)自稱魯郡人,他沿用《孫子算經》的思想,核心還是要找到類似70,21,15的數,也即重點要找到那些令餘數是1的數。從現代數學的角度看,該算法相當於求使ak≡1(mod p)的k(即乘率),比如在“物不知數”問題中,為了尋找70,21,15這個幾個數,可以構建同餘方程:35k≡1(mod 3); 21k≡1(mod 5);15k≡1(mod 7)。如果通過試驗的方法,我們可以得到k分別是2,1,1,這三個k值就是關鍵所在,如果找到k值,那麼“物不知數”問題便可破解。這麼關鍵的數,秦九韶先生把它命名為“乘率”(k值)。接下來的任務就找到“乘率”的算法了。千萬不要以為這很簡單,只是上面幾個數比較小而已,如若遇到27k≡1(mod64)這樣的問題,試數的方法可真是不靈了!

功夫不負有心人,秦九韶找到了,並把這個算法命名為“大衍求一術”,記錄在《數書九章》中。原文如下:

“大衍求一術雲:置奇右上,定居右下,立天元一於左上。先以右上除右下,所得商

數與左上一相生,入左下。然後乃以右行上下以少除多,遞互除之。所得商數隨即遞

互累乘,歸左行上下。須使右上末後奇一而止。乃驗左上所得,以為乘率。或奇數已

見單一者,便為乘率。”

很多小朋友看到這又要炸裂了,本來數學就夠難了,怎麼還搞出一篇古文?不要著急,先用用一個圖來說明這些名詞!

中國剩餘定理!唯一以中國名字命名的數學定理

置奇右上,定居右下,立天元一於左上


中國剩餘定理!唯一以中國名字命名的數學定理

先以右上除右下,所得商數與左上一相生,入左下

解釋:作64÷27=2……10,餘數10留在右下角,商數2與左上的1相乘,放入左下位置,形成第二個圖!

中國剩餘定理!唯一以中國名字命名的數學定理

然後乃以右行上下以少除多,遞互除之。所得商數隨即遞互累乘,歸左行上下

繼續操作:27÷10=2……7,餘數7留在右上角,商數2與左下角的2相乘,歸入左上位置,即2×2+1=5。

中國剩餘定理!唯一以中國名字命名的數學定理

須使右上末後奇一而止。乃驗左上所得,以為乘率。或奇數已見單一者,便為乘率

一直這樣操作過去,直到右上角的數變成1後,左上角的數就是“乘率”,然後做一下檢驗:19×27=513,而513÷64=8……1,成立!

意猶未盡的朋友可以做一下練習:求k,使得20k≡1(mod 27)。

根據“大衍求一術”可繪製上表,答案k=23.


“大衍求一術”的厲害之處在於它的操作過程一定是“有限步”,這裡的“有限”不同於現代數學上的“有限”,如果是天文數字般的“有限”,對實際問題是毫無意義的。同時,“大衍求一術”的算法機械、統一,只要按照步驟去操作就一定能正確輸出結果,這就是現代計算機的運行思路,所以“大衍求一術”可以一字不差地搬到現代電子計算機上去實現。可以看出秦九韶對算法的研究簡直是登峰造極!


名字確立--中國剩餘定理

眾所周知,中國古代數學經常出現比較尷尬的情形,有些定理在中國叫一個名字,在外國卻叫另一個名字,比如中國叫“祖𣈶原理”,西方叫“卡瓦列利原理”,好像總是有爭議的樣子,一旦出現沒爭議的情況,大部分的定理都是西方人的名字,比如“韋達定理”,“泰勒公式”。冠有中國人名字的定理真是少之又少!那麼秦九韶的“大衍求一術”是否又被外國人搶佔了先機呢?答案是:NO!

在十八九世紀,歐拉和高斯對一次同餘方程問題給出了系統的解法,到了1852年英國傳教士偉烈亞力,將“大衍求一術”的解法帶到了歐洲,學者發現歐拉和高斯兩位大神研究的解法和我們秦九韶先生的解法一致。歐拉和高斯竟然輸給了500年前的神秘東方人!這一次,在定理的命名上,毫無爭議!

在中國,有人叫它“孫子定理”,因為它最早出自《孫子算經》,或者“秦九韶定理”,因為給出解法的人是秦九韶。但是放眼全世界,它的名字只叫“Chinese remainder theorem”,(中國剩餘定理),它永遠是最閃亮的一顆星,在數學界閃閃發光!


【參考文獻】

1楊國選.秦九韶生年及任西安尉考[J].中國科技史雜誌,2008,29( 4):371~375.

2秦九韶.數書九章[M].北京中國國家圖書館藏明萬曆四十四年趙琦美鈔本.

3秦九韶. 數書九章[M].∥四庫提要著錄叢書.子部020.北京:北京出版社,2011.96~325.

4秦九韶.數書九章[M].∥郭書春.中國科學技術典籍通匯·數學卷.第 1 冊.鄭州: 河南教育出版社,1993.439~724.

5 Libbrecht U.Chinese Mathematics in Thirteenth Century:The Shu-shu chiu-chang of Ch'in Chiu-shao[M].New York: Dover Publications,2005.372.

6吳文俊.秦九韶與《數書九章》[C].北京:北京師範大學出版社,1987.

7 Needham J,Wang L.Science and Civilisation in China.Volume 3: Mathematics and the Sciences of the Heavens and the Earth[M].Cambridge: Cambridge University Press,1959.119~122.

8錢寶琮.中國數學史[M].北京:科學出版社,1964.78~79.


分享到:


相關文章: