這篇文章把約數(shù)、素數(shù)、孿生素數(shù)猜想、歌德巴赫猜想用一種“可視化”的辦法,把它們“變”成了一個可以看見的填字涂色游戲。而這種轉(zhuǎn)化為“變戲法”的過程所涉及的知識,只涉及初等數(shù)論的知識,如果有興趣的讀者不嫌麻煩,可以耐心地把其中的轉(zhuǎn)化過程一一驗證,如果沒時間驗證也沒關(guān)系,那就跳過一些繁瑣的證明過程,帶著娛樂的心情,一起領(lǐng)略另外一種“數(shù)形結(jié)合”的妙趣。
首先聲明,我們的目的是把一些數(shù)論問題變得“好看”、“好玩”。即便把這些問題變成了小游戲一樣的東西,問題的難度可能依然沒有得到任何程度的降低(有可能變得更難)。如果你覺得真的變好玩了,不妨讓更多的人看到這些玩法并一起玩,這會是件非常有趣的事情。
我們按下面的步驟,來做一張表格:
第1行,依次從左到右寫出所有正整數(shù)1、2、3、……
第2行,還是依次從左到右寫出所有正整數(shù)1、2、3,、……,不過每兩個數(shù)字之間要間隔1個空格。
第3行,還是依次從左到右寫出所有正整數(shù)1、2、3,、……,不過每兩個數(shù)字之間要間隔2個空格。
……
第i行,依次從左到右寫出所有正整數(shù)1、2、3,、……,不過每兩個數(shù)字之間要間隔i-1個空格。
……
理論上,這是一個有無窮行和無窮列且大部分地方都是空格的大表格(無窮矩陣),不過我們可以截取它的一部分來說明一些問題。
據(jù)說,幾百年前的歐拉已經(jīng)用過這樣表格研究數(shù)學(xué)問題了。如果真是這樣,歐拉真是一位十分有耐心的數(shù)學(xué)家。用“人肉”繪圖的方式,哪怕只有幾百行幾百列,也是一件耗時耗力的工作。因為一會兒我們要在這個表格上做一種類似“跳格子”游戲的操作,我們把這個表就叫做“跳格子表”吧。不過現(xiàn)在有了計算機,我們可以輕易的做到這樣的事情。下面是我們用Excel軟件做的17行50列的表格(點擊圖片放大觀看):
我們稍微地歸納一下這個表格的填字規(guī)律,第i行第j列,即位置( i , j )的“填字”N( i , j )將是(0在表格中就用空格表示了)
事實: 位置( i , j )的填字不是空格的充要條件是,j-1 是 i 的倍數(shù),即i是j-1的約數(shù)。
我們知道,對于兩個正整數(shù)來說,如果a是b的倍數(shù),b就是a的約數(shù)。如果一個大于1正整數(shù)的約數(shù)只有1和它本身,我們就說這個數(shù)是素數(shù),也叫質(zhì)數(shù)。
然而,我們這里既然做了表格,目的就是要重新利用表格上語言來說,到底什么是約數(shù)。
觀察下面表格的紅色路徑,它們都是從第1行的某個數(shù)字開始,向左下方一路斜著拉了條斜線拉到最左側(cè)的那一列的1。比如我們圖中的6, 11, 18。從6拉的路徑里,除了空格,經(jīng)過的數(shù)字有6,3,2,1,而從18開始的,經(jīng)過的有18,9,6,3,2,1。 恩,你發(fā)現(xiàn)了嗎,經(jīng)過的數(shù)字,正好是起始數(shù)字的約數(shù)。于是,我們說,在這樣的表格里,約數(shù)可以這樣表述:
約數(shù)的“跳格子”定義: 正整數(shù)n的約數(shù)就是“跳格子表”中,從第1行的n出發(fā)(即(1,n)位置出發(fā)),向左下行走到第1列的“1”的路徑中經(jīng)過的數(shù)字。
對于觀察到的這個結(jié)果,我們給出一個簡單的證明。我們來看,從(1,n)出發(fā)所經(jīng)過的格子( 1 i , n-i ) , i = 0,1,2,3,…,n-1。根據(jù)前面的事實1,N( 1 i , n-i ) 是一個數(shù)字,當且僅當 n-i-1 = n-(1 i) 是 1 i的倍數(shù),就是說n是1 i的倍數(shù)。而當n是1 i的倍數(shù)時,格子中的數(shù)字是N( 1 i , n-i ) = 1 (n-i-1)/(1 i) = n/(1 i) 。這個是一個正整數(shù)且是n的約數(shù)。而i從0到n-1遍歷的時候,1 i遍歷了n所有可能的約數(shù),而且每個約數(shù)恰好出現(xiàn)一次。
有了這個結(jié)果,我們還可以“重新定義”素數(shù):
素數(shù)的“跳格子”定義: 正整數(shù)n的約數(shù)就是“跳格子表”中,從第1行的n出發(fā)(即(1,n)位置出發(fā)),向左下行走到第1列的“1”路徑中,除了路徑的起點與終點,經(jīng)過的全是空格。
上面圖中的11便是其中的一個例子。
如果兩個(奇)素數(shù)之差是2,我們就說這兩個素數(shù)是一對孿生素數(shù)。比如3和5、11和13,、17和19等等。直到2016年9月,發(fā)現(xiàn)的已知的最大的一對孿生素數(shù)是下面兩個數(shù),展開后,這兩個數(shù)都有388342位,這里一定是寫不下了的。
孿生素數(shù)猜想是說,有無窮多對孿生素數(shù)。那么在我們的表格中會怎么表述這個猜想呢?
我們從第一排的某個數(shù)字出發(fā)(即(1,n)位置出發(fā)),如果往右下一路斜走,踩過一路空格后,踩到3,而從左下一路斜走,一路空格走到1,那么這個n以及n-2都是素數(shù)。下圖中的13就是這個情況。
證明這個的思路,也和前面一樣,是一些簡單的倍數(shù)、約數(shù)驗證。從(1,n)位置向右下斜走n-3格,踩中的位置為N(1 n-3,n n-3) = N(n-2,2n-3) = 1 (2n -3 -1)/(n-2) = 3 。就是說從任何(1,n)出發(fā),n-3格的時候踩中3是必然的 。 另外,因為是一路空格踩過來,所以 i = 1,2,...,n-4的時候,N(1 i,n i)都是空格,也就是說n i-1= (n-2) (1 i)不是1 i的倍數(shù),即n-2不是1 i的倍數(shù)。就是說2,3,...,n-3,都不是n-2的約數(shù),從而n-2是素數(shù)。而n本身是素數(shù)是從(1,n)出發(fā)的左下斜線路徑?jīng)Q定的。
于是我們有了,孿生素數(shù)猜想的“跳格子”表述:
孿生素數(shù)猜想的“跳格子”表述: 存在無窮多個n,使得從“跳格子表”中第一排的n位置出發(fā),往右下一路斜走,踩過一路空格后,踩到3,而從左下一路斜走,踩過一路空格走到1。
你下過中國象棋、國際象棋嗎?如果下過,就會知道象棋中馬的走法。俗話說“馬走日”,意思馬會形狀如“日”字的一個角跳到對角線上的另外一個角。當然如果你不知道象棋而知道圍棋,那么圍棋中“小飛”的走下法和“馬走日”的走法差不多都是我要表達的意思。
馬跳可以橫著跳,也可以豎著跳。橫著跳的相當于跳了一個平躺的“日”的對角線,而豎著跳就是一個站立“日”。
下面我直接給出兩個結(jié)論,然后簡單的驗證了其中一個。另外一個讀者可以自己驗證,都是簡單的約數(shù)驗證。
2n-1是素數(shù),當且僅當,從第一排的n位置出發(fā),往左下豎馬跳,踩過一路空格,踩到1
2n-3是素數(shù),當且僅當,從第一排的n位置出發(fā),往右下豎馬跳,踩過一路空格,踩到2。
當從(1,n)位置出發(fā)的時候,往左下豎馬跳n-1步后踩到1是非常容易判定的。 由于一路踩過的都是空格,所以(1 2i, n-i )位置在1< i <n-1上都是空格,就是說n-i-1 不都不會是1 2i的倍數(shù)。因為1 2i是奇數(shù),所以相當于是說 2(n - i - 1) = (2n-1)-(1 2i) 也不是1 2i的倍數(shù),即2n-1不是不會是1 2i的倍數(shù)。這時1< 1 2i <2n-1 ,就是說奇數(shù)2n-1沒有奇素因子。2n-1為素數(shù)。
2n-3的素數(shù)條件驗證是相似的。
下圖從10出發(fā)的兩個方向的馬跳,說明了19、17是一對孿生素數(shù)。
于是,我們有了第二種表述:
孿生素數(shù)猜想的“跳格子”第二表述: 存在無窮多個n,使得從“跳格子表”中第一排的n位置出發(fā),往左下一路馬跳,踩過一路空格后,踩到1,而從往右下一路馬跳,踩過一路空格后,踩到2。
這一部分,我們就會來實現(xiàn)這個猜想。玩之前我們會介紹一種“跳格子表”上的新走法——k級馬跳,以及我們會換一個更大的棋盤來玩。
前面介紹的馬跳的位置,其實是向橫(豎)著移動一格,然后朝另外一個方向豎(橫)著移動2格所得到的位置。如果我們把第二次的2格換成其他數(shù)字k,然后將這個新的走法稱為k級馬跳。
那么,前面的走法就成了k級馬跳的特例。最早棋盤上的斜著走,就是1級馬跳,而上一部分的默認馬跳其實是2級馬跳。
另外還有一種特殊情況,0級馬跳,橫著的0級馬跳豎著直走,豎著的0級馬跳是橫著直走。
為了玩得開心,我們引入0和負數(shù),把之前的表格向左邊無限擴展,得到下面樣子的表格。我們省略負號,把0和負數(shù)涂上綠色。這個表格是之前的升級版,我們叫做“跳格子表2”。
“跳格子表2”保留所有之前未升級版本表格的性質(zhì),比如N(i,j)的值,我們可以計算N(2,-1)=1 (-1-1)/2 = 0, N(8,-63) = 1 (-63-1)/8 = -7 , 以及 N(3, -6) = 空格。 因為-6-1 = -7 不是3的倍數(shù)。
現(xiàn)在我們的準備工作完畢,開始要說歌德巴赫猜想的玩法了。
歌德巴赫猜想是說,每個不小于6的偶數(shù)可以寫成兩個奇素數(shù)之和。
我們說一個不小于6的偶數(shù)2n,如果存在一個非負整數(shù)k,使得從第一行的n 1位置出發(fā),向往右邊一路橫著進行k級馬跳,踩過一路空格,最后踩到k 2,往左邊一路進行k級馬跳踩過一路空格,最后踩到2-k。 那么2n能寫成兩個素數(shù)的和。
我們來看看為什么。
從(1,n 1)往右橫著k級馬跳,跳n-k-1步踩到的點的值N(1 (n-k-1),n 1 k(n-k-1)) = N(n-k,1 (1 k)(n-k)) = 1 (1 (1 k)(n-k)-1)/(n-k) = k 2 ,就是說n-k-1步后必然踩到k 2, 由于是一路空格踩過來,說明當1≤i≤n-k-2 的時候, 1 i都不是n-k的約數(shù)。即2,3,4,...,n-k-1 都不是n-k的約數(shù)。于是n-k是素數(shù)。
利用相同的辦法可以驗證,n k也是素數(shù)。只需要驗證向左邊移動n k-1步的情況。
相反,如果一個不小于6的偶數(shù)2n = p q,其中p≤q是奇素數(shù)。那么我們令k = n-p = q-n。那么這個k對應(yīng)的k級馬跳就是符合游戲設(shè)定k級馬跳。
那么這個時候,我們可以表述歌德巴赫猜想了。
歌德巴赫猜想的“跳格子2”表述: 對每個不小于4的正整數(shù)n,存在一個非負整數(shù)k,使得從“跳格子表2”中第一排的n位置出發(fā),往右橫著進行k級馬跳,踩過一路空格后,踩到k 2,而往左橫著進行k級馬跳,踩過一路空格后,踩到2-k。
下面的例子是對從16可寫成兩素數(shù)之和的驗證。這個時候n=8,n 1 = 9, 所以從第一行的9開始跳,k的取值是3,所有最終右邊跳到k 2=5,左邊跳到2-k = -1 ,于是n k = 8 3 = 11, n-k = 8-3 = 5, 16 = 11 5 ,16寫成了5和11兩個素數(shù)和。
注意,k=0 的特殊情況是這樣的: 從n 1一直直線往下走,踩過一路空格踩到2。比如上面圖從4出發(fā)向下走的黃色部分,說明了6滿足哥德巴赫猜想。
好的,我們把孿生素數(shù)猜想和歌德巴赫猜想都在一個有趣的表格上重新實現(xiàn)了。那么這個游戲是誰發(fā)明的呢。
發(fā)明這個游戲的人叫Cloitre,是一位法國的數(shù)學(xué)的業(yè)余愛好者。他把他的這個發(fā)現(xiàn)寫成的論文,可以在http://www./articles/Chemins.pdf 看到。我們把他的玩法優(yōu)化,并處理完幾個小錯誤之后呈現(xiàn)給了大家。這個游戲不是他在數(shù)學(xué)上唯一的發(fā)現(xiàn)。Cloitre的很多發(fā)現(xiàn)并不遜色于在大學(xué)任教的數(shù)學(xué)專業(yè)人士,。比如2004年,他發(fā)現(xiàn)了ζ(2) = 1 1/4 1/9 ... 1/n2 ... =π2/6 的一個極其簡單,但之前無人發(fā)現(xiàn)的公式,這個公式被收錄在WolframMathWorld的詞條中。
一些專業(yè)的數(shù)學(xué)教授也樂意和Cloitre合作,Cloitre也樂于在網(wǎng)上分享他的數(shù)學(xué)上點點滴滴。著名數(shù)列百科網(wǎng)站OEIS有Cloitre的4000多條貢獻,一些數(shù)列中隱含的問題也激發(fā)了一些專業(yè)人士的研究興趣。
所以,業(yè)余人士做的數(shù)學(xué),也會被人叫好,也是會被人們承認的。這個時候,專業(yè)人士也不會叫你“民科”,當然——前提是你的研究是對的。 來源:哆嗒數(shù)學(xué)網(wǎng) |
|