從空集可以構造出所有的數學對象嗎?

在集合論中,數學研究的對象是集合,空集是不是可以構造出所有的數學對象(集合)呢?

在範疇論和類型論中,有沒有類似的操作?比如有某個基本對象可以構造出這個理論體系下的所有數學對象?


一個形式系統的推理能力本身由兩部分東西決定,一部分是公理性質的東西,另一部分是推理規則性質的東西。

常見的集合論這個系統作為一階語言的一個擴張,本身已經默認一些點:

  • 所有被談論的對象都是集合(否則你需要一個 many-sorted first order language 來區分 sets 和 elements (urelements) 甚至進一步 classes (proper classes),比如說所有集合構成的東西就是一個 class 而不是一個 set,在一般的公理集合論裡面,所有集合構成的那個東西是無法在對象語言層面上談論的,只能在元語言的層面上作為論域本身來談論,當然 many-sorted FOL 本身並不是一個特別的東西,它的表達力並不強於 FOL 的表達力);
  • 一階邏輯的公理,當然一階邏輯的公理本身就包括了命題邏輯的公理;
  • 一階邏輯的推理規則,這個地方有一個很小的問題:如果你認為一階邏輯的公理是簡簡單單的那麼幾條,那麼你就需要一個替換規則,如果你覺得這些東西都是公理模式,那麼替換規則就是不必要的

集合論並沒有增加推理規則,集合論的語言只增加了一個二元關係符號(屬於符號),以及一系列的關於屬於符號的規則。(關於等詞的規則和基於等詞的替換規則默認在一階系統裡面)

然後集合論的公理分為三類:

  • 無條件的存在公理:(斷定某類集合存在)
    • 空集存在公理 axiom of empty set
    • 無窮集存在公理 axiom of infinity (這條實際上可以被視作是有條件的存在公理,因為其中涉及到了空集,因此整個命題在不對空集的存在性作出本體論承諾的時候可以讀作「如果空集存在,那麼存在一個 X,使得……」,但是如果我們不懷疑空集的存在性,那麼這條公理則是無條件的)
  • 有條件的存在公理:(斷定「如果某些東西是集合,那麼另一些東西也是集合」)
    • 正則公理 axiom of regularity (axiom of foundation)

      如果一個集合非空,那麼存在特定性質的元素(此處的元素也是集合)
    • 分離公理(公理模式) axiom schema of specification (axiom schema of separation)

      從一個大集合出發,我們可以根據一些性質選出(也即分離出)其中的一些元素構成一個集合
    • 配對公理 axiom of pairing

      從兩個集合 a,b 出發我們可以得到一個新的集合 {a,b}
    • 並集公理 axiom of union

      從一族集合出發我們可以得到一個新的集合,當這一族集合只有兩個元素的時候也就是把兩個集合併起來
    • 冪集公理 axiom of power set

      從一個集合出發我們可以得到一個新的集合(它的冪集)
    • 選擇公理 axiom of choice

      給定一個集合,另一個集合(選擇函數)存在。(集合論裡面函數也是集合)
    • 替換公理(公理模式) axiom schema of replacement

      給定一個集合,另一個集合存在。(具體太長了懶得寫)
  • 限定性公理:(所有集合都滿足某些性質,但是這並沒有斷言任何集合存在)
    • 外延公理

只從空集出發,如果允許限定性公理和有條件的存在公理,那麼你得不到無窮集。如果你只從空集出發連有條件的存在公理都不給,那麼你什麼都得不到。

另外,空集公理其實可以去掉,原因之前說過了:如何證明自然數的存在?

刪除空集公理只不過會使得一些命題從直言的(斷定空集具有某些性質)變成假言的(如果空集存在,那麼空集具有某些性質)。

數學中的某種樸素的柏拉圖主義傾向的問題在於容易使人過於看中對象本身,然而實際上對象本身是不重要的,對象的結構才是重要的。任何一個數學對象,就其自身而言,都不重要。空集是對象,它在不在都無所謂,這裡重要的是推理關係,即整個集合論理論的結構。當然你可以強行說這個地方的結構才是『真正的對象』,但是在能作出區分的情況下把水攪渾只不過是在模糊人們的理解罷了。


xy. 樸素集合論下的觀點樓上說過了,扯一點別的。

用簡單的對象構造複雜的對象,這種事情在大規模的數學裡面都存在著。說點不嚴格的:數學裡面所研究的對象無非是兩類,一類是在大的簡單的對象裡面,用某個性質分離出來的;另一類是用許多簡單的對象,通過若干操作拼在一起得到的。而後一種觀點是更加現代的,因為前一種構造不是內蘊的,依賴於背景的選取。

簡單舉幾個例子。拓撲裡面用歐式空間的開集作為building block,通過不同範疇裡面的映射來粘,可以得到拓撲/光滑/仿射/解析流形;然後在這上面可以用類似的辦法造向量叢或者纖維叢。運算元理論裡面利用有限維的矩陣代數作為building block,可以得到所謂的AF代數;相應的還有AT代數和AI代數。還有微分幾何裡面的foliation,每個leaf通常也都是平凡的。還有單純復形,CW復形,abstract variety,層。。

在這些情況下,局部的性質一般是清楚的。整體的對象往往能繼承一些性質,但這遠遠不夠。正如樓上所言,重要的是由局部出發構造整體對象的過程。這裡就要涉及許多技巧和計算,最典型的莫過於MV序列。

當然也不是在所有情況下building block都是很容易的,例如有限單群分類定理。。。


羅心澄 已經介紹了ZF公理系統,這是一個集合論的公理體系。大多數數學家認為,這個公理系統就是現代數學的基礎。也就是說任何一個數學定理,不斷追述邏輯的前件,那麼應該追述到ZF公理系統中的公理,以及一些「a是A的元素」,「集合」等等這樣的基本概念。

這裡介紹一個從空集 emptyset 開始用集合手段「構造」,構造出所有集合的一個辦法。我默認你知道關於數學裡無限序數(Ordinal Number)的知識。

我們設定 ON 為所有序數組成的類,注意, ON 不是集合,是一個真類(Universe)。

mathcal{P}(A) = {B: ~~Bsubseteq A~~} 表示集合 A 的冪集

超限遞歸定義如下的數學對象,

V_0=emptyset

V_1=mathcal{P}(V_0)=mathcal{P}(emptyset)={emptyset}

......

對於後繼序數,有

V_{alpha+1}=mathcal{P}(V_alpha)

對於極限序數,有

V_{alpha}=igcuplimits_{eta<alpha}V_eta

好,我們讓下標跑遍所有序數,得到

V=igcuplimits_{alphain ON}V_alpha

注意對任意序數 alpha , V_alpha 都是集合,但這裡得到的 V 也不是集合了,叫做馮諾依曼宇宙( Von Neumann universe ),在ZF中 V 就是萬有宇宙。

就是說任意集合 A 都有 A∈V。這個證明的過程需要用到正則公理。

還有一個比較著名「構造」方式是用「定義」的思想。這裡舉一個簡單的例子,比如日常生活中我們要定義饅頭,我們可以這樣說,「用麵粉發酵蒸成的食品」,如果我們事先有了「麵粉」、「蒸」、"食品"等等概念,而這句話本身又符合漢語的描述物件的語法,那麼我們說定義成功。而「麵粉」、「蒸」、"食品"等等這些,又可以被更為前置的概念定義出來,直到觸及到一些不需要定義的基本概念。

上面的的思路可以反過來,現在我們已經有一些基本概念,從這些基本概念向外發散定義新的概念,他能定義出什麼東西呢。

我們現在有了集合 X 出發,按集合論的方式定義一個新的集合,對定義新的集合 A 的方式我們做一下限定。

1、 用到的語言集合論的形式語言中的公式。基本關係是集合的屬於關係( in ),就是說在描述新的集合的需要描述某兩個事物的關係的時候,這個關係都能最終表述成元素與集合的屬於關係。

2、 用到的參數都是 X 中的元素。

3、 量詞能遍歷到的範圍是 X

把所有能按上面方式定義出的集合記為 Def(X)

比如我們從自然數 N 中定義偶數集合 E

E={y:yin N~ wedge~exists xin N(y=2cdot x)}

注意上面用到的相等關係是集合的相等,乘法也是按集合論的方式定義的。所以最終,那些東西都能最後只用屬於關係表述。

好了,我們按照類似構造馮諾依曼宇宙的方式,「構造」可構造性宇宙 L

L_0=emptyset

L_1=Def(L_0)=Def(emptyset)={emptyset}

......

對於後繼序數

L_{alpha+1}=Def(L_alpha)

對於極限序數

L_{alpha}=igcuplimits_{eta<alpha}L_eta

最後,

L=igcuplimits_{alphain ON}L_alpha

這個 L 叫做哥德爾構造性宇宙(G?del"s constructible universe)。

OK,那麼 L 中的東西,是不是就是所有的集合呢。換句話說, V=L 是否成立?

結論是神奇的。

V=LZF 公理體系是獨立的。ZF下無法判斷兩者是否相等。

而哥德爾證明過,在 ZF~~+~~V=L 體系下,選擇公理和連續統假設(實際上是更強的廣義連續統假設)能成為定理,被證明出來。


要構造出所有數學對象至少需要兩個概念,畢竟如果只有一個概念的話,不管自反還是不自反都沒法構造全了。。。

所以。。。單一個空集不可以,但是如果空集加非空集,然後定義一個包含運算什麼的估計就有戲了。。。但是我並不是很會操作。

類似的還有,利用lambda運算元定義一個「真」和一個「假」,然後就可以定義出所有奇怪的東西來,這個因為有實際用途,相關資料會多些。


推薦閱讀:

關於理解自然常數e的困惑?
有哪些數學史上的趣話?
為什麼學數學的人喜歡講數學史?
如果在中國出現像歐拉這樣的人,會不會被埋沒?
數學上有什麼有名的結論是利用另一個數學分支上的知識得到的?

TAG:數學 | 數學史 | 數理邏輯SymbolicLogic | 數學哲學 |