如題。我最近在自學數理邏輯,用的教材是陳慕澤、餘俊偉的《數理邏輯基礎——一階邏輯與一階理論》。其中一些定理(尤其是元定理)的證明需要用到集合論,甚至數學歸納法。但根據我粗淺的瞭解,集合論也是在數理邏輯的公理系統中添加實質公理(比如ZFC公理體系)而建立起來的 ;數學歸納法依賴於自然數系的性質,而自然數系又是在集合論基礎上添加皮亞諾公理建立起來的。(如有誤,請指正。)現在問題來了:集合的性質、以及數學歸納法,在數理邏輯定理的證明中的使用似乎是不可避免的,那麼為何不算循環論證?


澄清一個誤解,數理邏輯不是「數學用的邏輯」。而是「用數學研究數學形式系統的數學分支」(當然也在數學中研究數學用的邏輯)所以當然是集合論更基礎。但是我們時常會看到用數理邏輯證明ZFC,PA,Q,NBG等等系統有什麼什麼性質,那是因為,這裡的所謂ZFC等等是在「實質數學」中被模仿的「形式數學」,所謂實質數學就是數學,它不是作為對象被研究,所謂形式數學可以理解為我們在數學中為數學建立一個「數學模型」。這個模型首先是「一階邏輯」的模型,當然一階邏輯是數學基礎,當數學被建立起來,我們在數學內部又給一階邏輯建立一個數學模型我們稱作一階邏輯語義學。所以,數理邏輯對形式數學系統性質的判斷,是不是關於實質數學體系的真理,這已經不是數理邏輯的問題,而是一個哲學問題。


知乎上程序員比較多,那就這麼說吧:

假設我現在想要整一個酷炫的程序語言,就叫它Gou語言吧,那我勢必要給它做一個編譯器。但是在有Gou的編譯器之前我不可能用Gou來寫Gou的編譯器,從而我必須先用別的語言來寫一個編譯器。然後我肝了一個月用c++寫了個GouLang1.0編譯器,而有了這個之後我就可以愉快地用Gou來寫GouLang2.0了。這也就是程序語言的自舉

回到集合論和形式語言這裡。為了研究形式語言,就必須有一個環境,而對於人類來說幾乎唯一能夠使用的環境就是集合論。邏輯關係是這樣的:先用自然語言整了一個集合論出來,然後用集合論來建立形式語言的理論,然後創造了一種形式語言叫做 [公式][公式] 的公理和推論模式都是我們能夠接受的,再加上ZF公理之後就得到了形式化的集合論。接下來的不是數學問題了,因為自然語言描述的集合論不是數學研究的對象。集合論的內涵在由自然語言的集合論向形式化的集合論過渡的過程中被保留下來了,哲學上說它們能夠證明的結論是互相對應的,因此我們認為這兩種集合論是同一個理論,集合論就此進行了一次自舉。我們認為兩個GouLang具有相同的功能不是因為它們的實現是一樣的,而是因為它們都是Gou的實現。我們認為兩種集合論具有相同功能的依據與此類似,不是因為它們是同一個東西,而是因為它們都實現了我們關於「集合的理論」的想法。當然這兩種集合論顯然不是同一個東西,而是GouLang1.0和GouLang2.0的關係。這兩個版本有不同的實現,當然不一樣,比如說可能有不一樣的fea(b)tu(u)re(g). 兩個集合論在這個過程中都沒有推出過自己。當然無聊的話也可以拿 [公式] 再去自舉...

當然有的時候如果遇到「xx是什麼」的問題,搞一個infinite hierarchy也是極好的(逃


數學語言與自然語言:

語言的完備性與一致性不可兼得。數學語言是一致而不完備的,自然語言是完備而不一致的。這就產生了兩個問題:

一、數學語言的不完備,數學語言總存在「不能在本語言中,用更基礎概念定義或說明的概念」——比如集合、命題。

集合的概念、元素的概念、都不能用集合論中更精確的語言定義;

命題的邏輯關係,比如「若A則B」(簡寫做A→B)不能用命題邏輯中更精確的語言定義;

舉兩個更具體了例子:

1、集合X包含元素x,包含元素的集合不是空集,所以集合X不是空集。這是集合論中必然使用的演繹,然而這個論斷實際上使用了形式邏輯。

2、若存在滿足A而不滿足B的的情況,則「若A則B」是錯的。——這裡的情況是模糊的概念

需要說明的是,數學語言的不完備性應區別於哥德爾不完備定理,但是兩者存在一定的聯繫。

二、自然語言的不一致性

自然語言存在「使用更模糊的意義描述更具體的意義」的過程。

比如我們學習集合論,就必須依賴自然語言:蘋果是一種集合、整數是一種集合,如此等等。

反過來,我們定義整數,又說整數集是一個「滿足××條件的集合」,蘋果是「某綱某目植物的果實」「綱、目等又是集合上的概念」。

自然語言的這種「循環定義」的過程,導致其意義必然存在歧義。這也是我們討論問題常說的「雞同鴨講」。因為我們用的是自然語言。

看起來,張三說的蘋果與李四說的蘋果都是一種東西。但是更抽象的概念——比如「概率」「事件」「若A則B」「證偽」這些概念一些文科生就不能精確理解。

「集合」「邏輯」這些概念,在不同的人理解下,意義是十分接近的,但是不是嚴格一致的。

我們之所以能夠通過自然語言交流,本身就是一種「求同存異」的過程。我們學習自然語言的過程,也是根據外界環境「猜測」詞義的過程。

更多關於自然科學底層哲學基礎的內容,請關注我的專欄,也歡迎投稿和指正。

複雜系統的科學處理與自然科學總論?

zhuanlan.zhihu.com圖標
突然想到了,不知道對不對。哥德爾第二不完備性定理是這樣的:如果一個(強度足以證明基本算術公理的)公理系統可以用來證明它自身的相容性,那麼它是不相容的。於是,為了確立系統S的相容性,就要構建另一個系統T,但是T中的證明並不是完全可信的,除非不使用S就能確立T的相容性。也就是說,要證明S系統是相容的,必須另外構造一個T系統才能證明這一點。那麼,可以猜想,如果想要通過定義構造一個S系統,也必須首先有一個T系統?但是,又注意到,集合論中使用的系統貼近自然語言,應該要比數理邏輯中的命題推演系統、一階邏輯系統以及高階邏輯系統這些可以由圖靈講檢驗的系統更高級。也就是說集合論系統不能直接直接由命題推演系統、一階邏輯系統以及高階邏輯系統等定義構造。所以,雖然我們希望數理邏輯中的系統可以更基本,可以用來定義集合論中的系統,實際上卻做不到這一點。

集合論屬於數理邏輯。


用一種反數學的方式來描述:

集合論是肉體,而數理邏輯是靈魂。


數理邏輯與集合論是數學分支體系的粒度,

循環論證是數學命題的粒度,

不能混為一談。

你覺得哪裡有問題,可以把構成循環論證的那些命題拿出來問。

這些成熟的體系都經過嚴格證明,不會出現循環證明這種低級錯誤。

兩個形式體系存在交叉關係很正常,一來一往就可以構成迴路,但是體系是概念性的名稱而已,真正有用的數學實體是一個一個的命題。


中文的書還是少看的好,數理邏輯和公理集合論要清清楚楚地講明白不是一件很容易的事情。你要想了解的話,可以看GTM 系列的第一本Axiomatic Set Theory,在這本書裏除了原概念,和基本的邏輯公理,其他都是嚴格推導得到的。
樓主現在搞懂沒有
推薦閱讀:
相關文章