構造性數學
正文
現代數學研究的一個重要領域。在數學的討論中,常把能具體地給出某一對象或者能給出某一對象的計算方法者稱之為可構造的。類似地,把能證實“存在一個x滿足性質A”的證明稱為構造的是指能從這個證明中具體地給出滿足性質A的一個x;或者能從此證明中,得到一個機械的方法,使其經有限步驟後,即能確定滿足性質A的這個x來。反之,也常把數學中的純存在性證明(見構造邏輯)稱之為非構造的。非構造性的證明,是套用反證法來證明,即通過證明如果否定一命題A則將導至矛盾,從而肯定原命題A。這種通過矛盾進行證明是以亞里士多德邏輯的排中律為基礎的。這種方法在近代數學中是常見的。人們把堅持主張:“要證明一個數學對象存在,必須指出這個對象是怎么構造出來的”這種數學研究稱之為構造性數學。“構造性”一詞迄今尚無完全的嚴格定義(見遞歸論),各個學派之間對這一概念的理解亦有所不同。但是,總的傾向是明確的,如:主張自然數及其某些性質(特別是數學歸納法)是數學最根本和直觀上最可靠的出發點,其他一切數學對象則必須是能從自然數構造出來的,等等。例如,
命題存在無窮多個素數。
證明1:(歐幾里得的證明)
① 設{p1,p2,…,pn}為任一有窮的素數集合。
② 考慮一個顯然不能被諸素數p1,p2,…,pn中之任何一個整除的數:p1×p2×…×pn+1。這個數或者本身就是素數,或者可以被另一異於p1,p2,…,pn的素數p所整除。
③ 不論是那一種情況,都必定存在一個不屬於 p1,p2,…,pn中之一的素數。因此,素數集合不是有窮的。
證明2:(現代證明)
① 假設命題不成立,亦即只存在有窮多個素數 p1,p2,…,pn。
② 考慮一個顯然不能被素數p1,p2,…,pn中任何一個整除的數p1×p2×…×pn+1。這個數或者本身是素數或者可被另一異於p1,p2,…,pn的素數p整除。
③無論那種情況,必定存在不是集合{p1,p2,…,pn}的一部分的一個素數。這與假設矛盾。因而假設不成立。所以,根據排中律這個素數集合是無窮的。
在上述命題的兩證明中,證明1是構造性證明,它表明對任一素數的有窮集都存在著更大的一群素數。而證明2則是非構造性證明,它基於排中律證明了存在真正的無窮多個素數的集合。類似地,諸如命題“對於任意給定的二整數必存在最大公因數”的歐幾里得證明就是構造的,而對命題“存在不可數個超越數”的康托爾證明就是非構造的。
構造性數學的理論研究可以溯源到康德時期。康德認為:數學的最終真理性在於數學概念,可以通過人的智慧構造出來。而在歷史上第一指出實無窮與潛無窮的原則區別的則是C.F.高斯。他不主張採用實無窮。L.克羅內克則進一步提出:“上帝創造了整數,其餘都是人的工作。”他與其後的(J.-)H.龐加萊、L.E.J.布勞威爾都是否定實無窮,主張潛無窮,都提倡構造性的數學研究,其中尤以布勞威爾持論最為極端。迄今,在構造性數學的研究領域裡,由於宗旨、觀點和方法的不同,隨著歷史的發展,已經形成了一些不同的學派。
①最著名的構造性數學研究應推布勞威爾、A.海丁等的直覺主義數學。布勞威爾的直覺主義數學觀是與其直覺主義的哲學觀密切相關的(見數學基礎)。直覺主義者基於它的可信性標準:“存在即被構造”,故必然堅持構造性的數學研究。他們的研究起點是自然數論而非集合論,對直覺主義數學而言,自然數是基於“原始直覺”用構造性方法產生的。為了克服由於悖論而引起的數學基礎危機(見悖論)而提出了直覺主義數學的主張;他們認為:悖論的出現不是偶然事件,數學基礎危機,不能通過技術性修補或限制得到解決;他們極端地排斥實無窮,否認傳統邏輯(尤其是排中律)的普遍有效性,因而古典數學中一切據以為前提的非構造性定義和論證(如許多純存在性證明)都是不能接受的,應予排除;他們主張徹底的潛無窮,重建直覺主義邏輯;他們要求全面批判古典數學,否定其中大量的非構造性成果(如ω0以上的超窮集;連續函式的中間值定理),重建直覺主義的構造性數學。為此,他們曾就直覺主義集合論、直覺主義分析學進行了不少的工作,但由於限制過大,只承認一部分最保險的數學,過多地否定了非構造性成果從而過多地拋棄了合理因素,又無從解釋它們在套用上的有效性,因此,直覺主義的排除悖論,重建數學的主張遭到了相當多的批評(包括其他的、亦是從事構造性數學研究的數學家如希爾伯特等人的批評)。但是,由於構造性的研究是很引人注目的方向,而布勞威爾本人是一位拓撲學家,又是歷史上第一個完全而又徹底地從數學和哲學兩個方面貫徹和發展了“存在即被構造”的直覺主義口號的代表人物,故曾經吸引不少的追隨者例如外爾等。他所開創的直覺主義邏輯和直覺主義數學迄今亦不失為20世紀的一種新見解和新方法,他們的活動也確實推動了一些新課題的研究和新知識的出現,故而影響較大,在構造性數學諸分支中最為著名。
②希爾伯特的元數學亦是一種構造性數學(見希爾伯特計畫)。D.希爾伯特與布勞威爾不同,他是承認實無窮的,並且他的證明論計畫是旨在保衛古典數學成果,排除悖論,重建數學基礎。根據希爾伯特的數學可信性標準,古典數學的可信性就在於它的協調性。因此,他首創元數學(即證明論),想從而建立古典數學協調性的絕對證明。雖則由於K.哥德爾的不完備性定理指明這個計畫是不能實現的。但是,他在計畫中所創立的元數學方法卻有重要的方法論意義。也就是說,希爾伯特企圖把有窮主義觀點下的構造性與涉及實無窮的“理想元素”在套用上的有效性統一起來,這一願望雖然不能實現,但是,他所倡導的以有窮主義為特徵的構造方法仍然是一種重要的構造性數學研究,並為他的弟子P.貝爾奈斯和其後的G.克賴澤爾所繼續和發展。
③另一種幾乎同直覺主義數學齊名的構造性數學則是近年來E.畢曉普、J.邁希爾、J.德克爾和A.尼羅德所代表的新方向,他們的構造性數學研究是在數學領域中,用普通邏輯於可編碼的對象和遞歸函式。他們所關心的,不是去解決數學奠基問題,而是要用構造性方法來研究數學。他們把構造性數學看成古典數學的一個分支,在這個分支中所討論的對象(個體或映射)都要求是可計算的。以畢曉普的工作為例:他認為只證明一個數學對象在邏輯上必然存在是不夠的,還必須擬定一種有限而機械的辦法把這個對象構造出來。他不用非直觀的概念來重建數學,而是從標準的算術規則和有理數出發,通過避開“理想”觀念並不斷地檢驗從直觀生成的對象和定理,逐步地進行構造,以求得數學的可信性。他與布勞威爾不同,他不去全盤地否定康托爾的集合論,而是把它加以改造,使之具有構造的合理性。例如:確定一個集合,原來康托爾的樸素定義只要求給出一個判別集合中元素的規則即可。而畢曉普認為還應要求擬定出一個辦法來真正構造集合的一個元素並證明集合中兩個元素是不同的。這樣,則可使康托爾集合論中的一條最有爭議的公理──選擇公理成為完全可以接受的了,如此等等。他們把古典數學的基本概念算法化,並從而考慮哪些定理在構造意義下仍然成立,哪些定理不能成立以及如何改造等,由此發展出相當大的一部分有價值的數學。例如構造分析即為一例。
④蘇聯的 Α.Α.馬爾可夫與 N.A.沙寧的構造性數學的研究則是以算法概念為基礎的。他們完全排除實無窮,採用構造邏輯系統地重建數學。他們對構造分析學作了相當深入的研究。對於許多數學分支的算法化以及制定構造邏輯的語義學都作了很可觀的工作。尤其是馬爾科夫的正規算法給直觀的算法概念提供了一個精確的數學描述。它是現有的少數幾種算法概念精確化的方案之一。
直覺主義的數學觀必然要求堅持構造主義的數學研究。反之則不然。一般的構造性數學研究者(包括布勞威爾的一些追隨者)並不一定贊同布勞威爾的哲學思想和數學觀。而且恰好相反,常常是有所批評的。尤其是對布勞威爾的“原始直覺”批評較多。但是,包括希爾伯特在內的構造數學研究者也都從布勞威爾那裡吸收了不少構造論的思想。一般的構造性數學研究者(除了布勞威爾等少數的直覺主義數學研究者以外)都不否定非構造的數學成果。
近年來構造性數學的研究甚為引人注目,構造性成果不斷湧現,這就說明在某些情況下用這種觀點來研究問題常常是大有裨益的。在許多情況下,構造性的方法與存在性的方法常常是同樣地有效。構造性的研究不僅可以得出較為新穎、較為深刻的見解,而且構造性的成果更便於套用。眾所周知,提供解答畢竟比純存在性地證明有解要有意義得多。當一個數的存在能構造地證明時,那么這個數不僅在理論上,而且實際上就可以計算出來。聯繫到計算機科學已經蓬勃發展,這種構造性數學的研究更有其深遠意義。
由於構造性數學要求遠較非構造性數學嚴格,所以對於構造性數學成立的每一定理對於非構造性數學也成立,因而構造性數學可以簡單地看成非構造性數學的一個分支。一般都認為直觀和邏輯是數學能力的兩大來源。而直觀尤為重要。如能充分注意構造性數學的學習和研究會有助於數學教育並有助於推動這兩者之間的較為合理的平衡,更有助於理性思維的開發。