張躍
【摘 要】根據計算機的整數取值有限,本文提出了一個基本假設。在此假設的基礎上,利用C語言編程,證明了:對應于無窮多個素數p,存在無窮多個p+2的素數;即孿生素數猜想。
【關鍵詞】孿生素數;假設;C語言程序
【Abstract】In accord with the limitation of the integer taken by a computer, an assumption is suggested, and on the basis of it, using the program of C language, the paper proves that corresponding to infinite primes p, there are infinite p+2 being primes; namely, the conjecture of pair primes.
【Key words】Pair primes; Assumption; Program of C language
0 引言
目前,數論中尚未解決的難題有兩個,一個是偶數情形的哥德巴赫猜想,另一個是孿生素數的哥德巴赫猜想(孿生素數猜想)[1]。從一些有關數學的期刊上可以發現, 關于孿生素數的猜想,一直是國內外數學界關注和研究的一個重要課題。迄今為止,數學家陳景潤已經證明:存在無窮多個素數p,使p+2為不超過兩個素數的乘積[2]。國內外還沒有人能夠做到利用純粹的數學理論方法證明這一猜想。本文將設計C語言的程序證明孿生素數的猜想。如果用Q(p)表示無窮多個素數p組成的集合,Q(p+2)是相應的無窮多個p+2的素數組成的集合,并且假設計算機二進制的數碼的位數沒有限制,則通過C程序的運算可以由Q(p)的所有元素得到Q(p+2)的所有元素。從數學的觀點看,可以將C程序的運算視為由Q(p)到Q(p+2)的一個映射M(mapping)[3], 表示為M: Q(p)→Q(p+2)。
1 假設
計算機將整數轉換為二進制數碼表示,假設數碼的位數不受限制,則任意大的整數k可以無限地轉換成二進制數碼。但由于機器的規模限制,機器的二進制數碼的位數是有限的。例如,對于浮點機表示的數碼,若數碼的階數的位數是k位,尾數的位數是m位,則整數N的取值范圍為:如果不考慮數碼的位數,計算機運算時會出現“機器零”或者“溢出”的情況。證明孿生素數的猜想,需要考慮的素數p有無窮多個,不能利用“窮舉法”對所有的p+2的數字一一列舉進行判斷。如果應用數學歸納法的思想,則必須作某些假設。
由于計算機的二進制運算僅與邏輯電路或者布爾代數有關系,其運算規則和結果不因計算機的二進制數碼的位數多少而引起變化。因此,可以作以下假設。
假設:已知計算機限制的整數的最大取值為n,p為無窮多個素數p1 在假設中,顯然,R(k+1)?勱R(k),R(k+1)-R(k)=k+1,僅僅多一個k+1的數字。如果計算機對整數的取值范圍沒有限制,可以設k為任意大的整數,但是不會當k大到某一整數之后,j≡i,因為素數p有無窮多個,可能成為素數的k+1的數也有無窮多個,故j≥i的情形有無窮多。 2 證明猜想 在所有的素數中,如果p是素數,且p+2也是素數,則稱(p,p+2)為一對孿生素數。因而數論中孿生素數的哥德巴赫猜想,可以用下面的定理表述:[1] 定理:有無窮多個素數p使得p+2也是素數。 根據定理編寫程序,首先假設p是任意的素數,然后從所有p+2的數中篩選出全部素數,并證明其數目有無窮多個。用C語言編寫的源程序代碼如下: 可以任意舉一個計算機取值范圍內的正整數,例如,取max=k=100,利用C-Free 5 CJY版運行程序prime.c的結果顯示,若p為素數,則不大于100的p+2的素數是: 7,13,19,31,43,61,73。 實際上5和3也構成一對孿生素數,相對于3,5也是一個p+2的素數,在運算結果中沒有顯示,原因是相對于運算結果中的p+2的素數7,5又是一個p的素數,不能同時出現在p+2的素數中。類似的情況在后面的p+2的素數里可能還會有很多,但是這些情況不影響證明p+2的素數有無窮多個。 那么,當max=k+1=101時,利用C-Free 5 CJY版運行程序prime.c的結果顯示,若p為素數,則不大過101的p+2的素數也是: 7,13,19,31,43,61,73, 這相當于假設中的j=i的情況。如果取max=k=102,prime.c運算的結果仍然和上述p+2的素數一樣,但是當max=k+1=103時,利用C - Free 5CJY版運行prime.c,得到p+2的素數為:7, 13, 19, 31, 43, 61, 73, 103, 這相應于假設中j >i的情況。如果計算機的整數取值范圍沒有限制,則可以取任意大的k以及k+1進行驗證。 因而,根據假設,利用C- Free 5 CJY版運行程序prime.c的數字結果表明:可以找到無窮多個素數p,相應的p+2亦為素數。定理得以證明。 【參考文獻】 [1]陳景潤.陳景潤文集[M].江西教育出版社,1998:346-347. [2]王元.解析數論在中國[J].自然雜志,1980,3(8):568-570,592. [3]日本數學會編.數學百科辭典(中譯本)[M].科學出版社,1984:42-45. [責任編輯:湯靜]