6的所有滿足“=+”(,均為質(zhì)數(shù))的形式分解,以及所有的孿生素?cái)?shù),從而實(shí)現(xiàn)計(jì)算機(jī)在Matlab軟件所允許的數(shù)值范圍內(nèi)驗(yàn)證哥德巴赫猜想和孿生素?cái)?shù)猜想。關(guān)鍵詞Matlab驗(yàn)證偶數(shù)質(zhì)數(shù)孿生素?cái)?shù)中圖分類號(hào):TP317?文獻(xiàn)標(biāo)識(shí)碼:ADOI:10.16400/"/>
羅亮冰
摘 要 運(yùn)用Matlab軟件的循環(huán)結(jié)構(gòu)和“isprime”函數(shù)找出>6的所有滿足“ = +”(,均為質(zhì)數(shù))的形式分解,以及所有的孿生素?cái)?shù),從而實(shí)現(xiàn)計(jì)算機(jī)在Matlab軟件所允許的數(shù)值范圍內(nèi)驗(yàn)證哥德巴赫猜想和孿生素?cái)?shù)猜想。
關(guān)鍵詞 Matlab 驗(yàn)證 偶數(shù) 質(zhì)數(shù) 孿生素?cái)?shù)
中圖分類號(hào):TP317 ? 文獻(xiàn)標(biāo)識(shí)碼:A DOI:10.16400/j.cnki.kjdkz.2015.09.037
Application of Matlab in Number Theory Research
——Use Matlab to Verify the Goldbach Conjecture and the Twin Prime Conjecture
LUO Liangbing
(School of Mathematics and Statistics, Wuhan University, Wuhan, Hubei 430072)
Abstract Revolving structure Matlab software and "isprime" function to find> 6 all meet the "= +" (, are prime numbers) in the form of decomposition, as well as all twin primes, in order to achieve value within the scope of computer software in Matlab allowed verify Goldbach conjecture and the twin prime conjecture.
Key words Matlab; verification; even; prime number; twin primes
1 問(wèn)題概述
1.1 哥德巴赫猜想
哥德巴赫猜想源自1742年德國(guó)數(shù)學(xué)家哥德巴赫給瑞士數(shù)學(xué)家歐拉的信中所提出的猜想,歐拉在回信中也提出另一等價(jià)版本。而今日數(shù)學(xué)界公認(rèn)的猜想則為歐拉版本的陳述,即任一大于2的偶數(shù)都可寫成兩個(gè)素?cái)?shù)之和,亦稱為“強(qiáng)哥德巴赫猜想”或“關(guān)于偶數(shù)的哥德巴赫猜想”。從關(guān)于偶數(shù)的哥德巴赫猜想,可推出:任一大于7的奇數(shù)都可寫成三個(gè)質(zhì)數(shù)之和的猜想。后者稱為“弱哥德巴赫猜想”或“關(guān)于奇數(shù)的哥德巴赫猜想”。若關(guān)于偶數(shù)的哥德巴赫猜想成立,則關(guān)于奇數(shù)的哥德巴赫猜想也成立。本文僅討論“強(qiáng)哥德巴赫猜想”。
1.2 孿生素?cái)?shù)猜想
孿生素?cái)?shù)就是指相差2的素?cái)?shù)對(duì),例如3和5,5和7,11和13……孿生素?cái)?shù)猜想正式由希爾伯特在1900年國(guó)際數(shù)學(xué)家大會(huì)的報(bào)告中提出:存在無(wú)窮多個(gè)素?cái)?shù),使得 + 2是素?cái)?shù)。早在1849年,阿爾方·德·波利尼亞克就已提出了一般的猜想:對(duì)所有自然數(shù)k,存在無(wú)窮多個(gè)素?cái)?shù)對(duì)(, + 2),而 = 1的情況就是孿生素?cái)?shù)猜想。
1.3 研究意義
我是數(shù)學(xué)專業(yè)的學(xué)生,數(shù)論是我的專業(yè)課之一,我知道哥德巴赫猜想和孿生素?cái)?shù)猜想是數(shù)論研究中二個(gè)古老而著名的未解決問(wèn)題,歷代數(shù)學(xué)家前赴后繼、耗盡心力,至今仍沒(méi)有用純數(shù)學(xué)理論的方法證明。而在數(shù)論研究中,常常涉及大整數(shù)的運(yùn)算,也通常需要調(diào)用一些相關(guān)的結(jié)果,過(guò)去這是相當(dāng)麻煩的事情。而利用同一思想方法,運(yùn)用Matlab(在其所允許的數(shù)值范圍內(nèi))驗(yàn)證哥德巴赫猜想,以及驗(yàn)證孿生素?cái)?shù)猜想并找出所有的孿生素?cái)?shù)對(duì),根據(jù)研究需要制定出偶數(shù)分解為兩質(zhì)數(shù)之和形式的列表和孿生素?cái)?shù)表,可方便數(shù)論的研究。
2問(wèn)題分析
2.1 驗(yàn)證哥德巴赫猜想的分析
在Matlab軟件所允許的數(shù)值范圍內(nèi),對(duì)于任意指定范圍內(nèi)或者任一組數(shù)中的任一大于6 的偶數(shù),可利用Matlab軟件的循環(huán)結(jié)構(gòu),找出的所有滿足“ n=m+p”(其中,mp”(其中,,均為大于1的正整數(shù))的形式的分解,再利用Matlab軟件的“isprime”函數(shù)判斷、篩選中,所有滿足m、p均為質(zhì)數(shù)的m=P
的形式分解,從而可用計(jì)算機(jī)在任意指定范圍內(nèi)驗(yàn)證哥德巴赫猜想。由于現(xiàn)今數(shù)學(xué)界已不使用“1也是素?cái)?shù)”這個(gè)約定,所以本文討論大于6的偶數(shù)。
2.2 找出所有孿生素?cái)?shù)的分析
在Matlab軟件所允許的數(shù)值范圍內(nèi),對(duì)于任意指定范圍內(nèi),可利用Matlab軟件的循環(huán)結(jié)構(gòu)和“isprime”函數(shù)找出所有的孿生素?cái)?shù)。
3問(wèn)題解決
3.1 驗(yàn)證哥德巴赫猜想
3.1.1 基本思路
建立一個(gè)M函數(shù)文件,在此文件中編寫任一指定條件下驗(yàn)證哥德巴赫猜想的程序。先利用Matlab軟件的“input”函數(shù)將控制權(quán)交給鍵盤,確定我們想要在何種條件下驗(yàn)證哥德巴赫猜想(在一定范圍內(nèi)驗(yàn)證按“1”,對(duì)一組數(shù)驗(yàn)證則按“0”即可),再利用if-else-end雙分支條件語(yǔ)句分別對(duì)在一定范圍內(nèi)(鍵盤輸入為“1”)以及一組數(shù)驗(yàn)證(鍵盤輸入為“0”)的情況進(jìn)行處理。
當(dāng)我們已選定對(duì)一組數(shù)驗(yàn)證時(shí),再次利用Matlab軟件的“input”函數(shù)將控制權(quán)交給鍵盤,以類似[abcd]的向量形式輸入一組我們想要驗(yàn)證的數(shù)。利用if-else-end雙分支條件語(yǔ)句和邏輯運(yùn)算符“&&”判斷輸入的每個(gè)數(shù)是否合理。對(duì)于該組數(shù)中范圍不合理的數(shù)(表示為這組數(shù)中的第個(gè)),如不為偶數(shù),或不大于6,使用“fprintf”指令顯示“不合條件”。對(duì)于這組數(shù)中的每一個(gè)范圍合理的數(shù),可利用Matlab軟件的for循環(huán)結(jié)構(gòu),找出的所有滿足“x(j)=m+p”(其中,, 均為大于1的正整數(shù)m,p均為大于1 的正整數(shù),p=x(j)-m)的形式的分解,再利用Matlab 軟件的“isprime”函數(shù)判斷每個(gè)所求得的, 是否為質(zhì)數(shù),從而找出的所有滿足“x(j)=m+p””(其中,mp均為質(zhì)數(shù))的形式的分解,利用“fprintf”指令將其輸出并顯示在顯示屏上,從而實(shí)現(xiàn)計(jì)算機(jī)對(duì)一組數(shù)驗(yàn)證哥德巴赫猜想。
而當(dāng)我們選定在一定范圍內(nèi)驗(yàn)證時(shí),再次利用Matlab軟件的“input”函數(shù)將控制權(quán)交給鍵盤,以[]形式輸入想驗(yàn)證哥德巴赫猜想的范圍。利用if-else-end雙分支條件語(yǔ)句和邏輯運(yùn)算符“&&”判斷輸入范圍是否合理。若設(shè)置的范圍不合理,如不大于6等情況,使用“fprintf”指令顯示“不合條件”。若輸入范圍合理(如當(dāng)>,則自動(dòng)交換、位置),那么,對(duì)于該指定范圍內(nèi)的任一大于6 的偶數(shù),可利用Matlab軟件的for循環(huán)結(jié)構(gòu),找出的所有滿足“x(j)=m+p”(其中,,均為大于1的正整數(shù),p=n-m)的形式的分解,再利用Matlab軟件的“isprime”函數(shù)判斷每個(gè)所求得的,是否為質(zhì)數(shù),從而找出的所有滿足“n=m+p”(其中,mp,均為質(zhì)數(shù))的形式的分解,利用“fprintf”指令將其輸出并顯示在顯示屏上,從而實(shí)現(xiàn)計(jì)算機(jī)在任意指定范圍內(nèi)驗(yàn)證哥德巴赫猜想。
3.1.2 驗(yàn)證程序
3.2 找出所有孿生素?cái)?shù)
3.2.1 基本思路
建立一個(gè)M函數(shù)文件,在此文件中編寫尋找任意指定范圍內(nèi)的孿生素?cái)?shù)的程序。先利用Matlab軟件的“input”函數(shù)將控制權(quán)交給鍵盤,以[]的形式輸入尋找孿生素?cái)?shù)的范圍(如當(dāng)>,則自動(dòng)交換、位置)。在該指定范圍內(nèi),可利用Matlab軟件的for循環(huán)結(jié)構(gòu)對(duì)該指定范圍內(nèi)的每一個(gè)正整數(shù),進(jìn)行討論。先利用Matlab軟件的“isprime”函數(shù)判斷j是否為素?cái)?shù),若為素?cái)?shù),則再次利用Matlab軟件的“isprime”函數(shù)判斷(+2)是否為素?cái)?shù),若(+2)也為素?cái)?shù),則(, +2)為一組孿生素?cái)?shù),并利用“fprintf”指令將這一組孿生素?cái)?shù)輸出顯示在顯示屏上。從而,可以求出在任意指定范圍內(nèi)的所有孿生素?cái)?shù)。
3.2.2 程序
4程序運(yùn)行結(jié)果
4.1 驗(yàn)證哥德巴赫猜想的運(yùn)行結(jié)果
4.1.1 在指定范圍內(nèi)驗(yàn)證時(shí),運(yùn)行結(jié)果如下:
4.1.2 對(duì)一組數(shù)進(jìn)行驗(yàn)證時(shí),運(yùn)行結(jié)果如下:
4.2 任意指定范圍內(nèi)找出所有孿生素?cái)?shù)的運(yùn)行結(jié)果
參考文獻(xiàn)
[1]張志涌,楊祖櫻等.MATLAB教程R2012a.北京航空航天大學(xué)出版社,2010.
[2]U.杜德利.基礎(chǔ)數(shù)論.上??茖W(xué)技術(shù)出版社,1986.
[3]司釗,司琳.哥德巴赫猜想與孿生素?cái)?shù)猜想.西北工業(yè)大學(xué)出版社,2002.