為什麼都是稠密的,有理數可數,而無理數不可數呢?
我來殺雞用牛刀、降維打擊了:稠密線性序是一個一階公理化理論,根據勒文海姆–斯科倫定理顯然可有不同大小的無限模型。同時,稠密線性序是一個 範疇的理論,即其所有可數模型都是同構的,但是 和 顯然因為完備性而不同構,所以 不能可數,也即無理數集 不能可數。
好,我們現在嘗試大致解釋、論證一下這堆看上去很高級的結論(註:下述部分定義/解釋參考牛津大學本科四年級模型論課程講義):
首先,題中所說的「稠密性」,我們將其抽象為模型論中的(無端點)稠密線性序理論(theory of dense linear order with no end elements),符號表示為
這裡的前三條公理保證了 在論域上是一個全序關係,即滿足三分律和傳遞性,第四條公理要求「任意兩值之間必還有一個值」,即稠密性,而第五條公理要求「任意值之前、之後都還有值」,也即不存在最大、最小值,即「無端點」的要求。
易於驗證,在 和 上的自然全序都平凡地滿足上述公理。同理,無理數集也滿足稠密線性序理論。
關於稠密線性序,我們的第一個關注點是它是一個一階理論。這裡的一階指的是「所有量詞都作用於論域上的元素」,也就是比如當我們考慮數集 時,上述所有的公理限制的都是「對於 上的任意一數 ,......」或者「 上存在一數 滿足......」。可以比較一個非一階的公理,比如實數集的完備性公理:(注意到其中使用了量詞「對於 的任意子集」)
的任意有上界的子集必有上確界,寫作
(此處用模型論記法, 表示 在 所表示的子集中; 為 的縮寫)一階理論和更高階理論最大的不同在於它是一個完備的理論(注意這裡的完備性和實數的完備性沒有關係,而是指模型論中的哥德爾完備性):若一個一階理論(即一組公理的集合) 蘊含命題 ,即每一個滿足該公理的數學結構都滿足命題 ,那麼存在一個有限長度的 的證明。
更廣為人知的是,在更高階的邏輯語言中,包括了一定算數符號的理論能夠產生確實被其模型所滿足、但是不存在有限長度證明的命題,也即哥德爾第一不完備性定理。但是稠密線性序是一個一階的邏輯理論,也就是說我們可以自由的使用證明的存在性來輔助我們推理,其一直接推論就是一階邏輯的緊緻性定理:任意(可能包含無限條公理的)理論 可被一個模型所滿足,當且僅當 的任意有限子集都可被滿足。
證明:假定 不可被任何模型滿足,根據語義蘊含的定義和假推出真的法則,我們說 蘊含一個矛盾,即 。又根據一階邏輯的完備性,存在一個有限長度的證明從 推出矛盾。現在,考慮這個證明中所使用的前提,因為證明的長度有限,其必然只使用了 中的有限條前提,因此可令 為這些前提所構成的有限子集,那麼從 即可推出矛盾,也即(根據演繹系統的可靠性) 是不被任何模型滿足的,因此若 的任意有限子集都可被滿足,則 也必可被滿足。原定理的另一方向是平凡的。
而緊緻性定理又有一直接推論為向上勒文海姆–斯科倫定理:對於任意理論 ,若其有一大小為 的模型 ,其中 為一無限基數,那麼對於任意更大的無限基數 , 也有一大小至少為 的模型。
證明:考慮 個額外常數——比如先令 為一大小為 的索引集,然後對於每個 ,令 為一新常數符號。現在,令集合 為一個命題集合,那麼對於 的任意有限子集,其中必然只包括有限個上述新常數。因此,在模型 中為每個出現的新常數符號賦一個不同的值即得到上述有限子集的一個模型。現在,根據緊緻性定理, 也可被某模型 滿足——但是, 滿足 就意味著在 中必然為每一個 都賦予了一個不同的值,也即 的論域大小至少為 。
現在,我們已經知道稠密線性序理論是有一個可數無限模型 的一階理論,因此對於任意大於 的無限基數,勒文海姆–斯科倫定理都保證了稠密線性序有一個至少如此大小的模型——也就是說,不僅僅是存在不可數的無理數集不值得奇怪,我們還可以有大小為 、 等等的稠密線性序集,所謂的「稠密性」看似是將一組值完整地排布在數軸上的性質,但其實對給出的數學結構中對象的具體數量(也即我們直覺理解中的稠密程度)沒有作出任何限定。
(與之對應的還有一條向下勒文海姆–斯科倫定理,說明對於任意無限基數 ,(在有至多 個符號的邏輯語言中)有任意基數大於 的無限模型的一階理論一定也有一個大小為 的模型——將兩個方向結合得到的完整勒文海姆–斯科倫定理便得到更強的「有任一無限模型的一階理論也有任意大小的無限模型」的結論,但是向下部分的證明與向上使用不同方法,因此在此不作敘述)
現在,我們說明瞭稠密線性序理論可以有任意大小的無限模型,我們再從範疇性的角度來說明一下為什麼無理數集不會是可數的。對於任意基數 , 範疇性是一個邏輯理論 可以有的一項性質:我們說理論 是 範疇的,當且僅當 的所有大小為 的模型都同構。
現在,如我們在開頭所說,稠密線性序是 範疇的,這點最早被康託爾證明:
證明:假設 , 是稠密線性序的兩個可數模型,那麼我們可枚舉 中的元素為 、 中的元素為 。現在,我們定義 上的一個新序列 和 上的一個新序列 ,使得它們滿足如下關係:當 為奇數時,令 ,即未在 中出現過的、在原數列中最靠前的 ,然後找到 滿足對於所有 , 當且僅當 (因為兩個序集都稠密、無端點,我們總可以找到這樣的 )。反之,當 為偶數時,令 ,即未在 中出現過的、在原數列中最靠前的 ,然後找到 滿足對於所有 , 當且僅當 。現在,我們可以考慮映射 滿足 ,那麼若序列 和 分別完整地包括了 和 上的所有元素,則顯然 是一個保序的同構映射。
我們現在就用數學歸納法證明 上的每一個元素都出現在序列 中:根據定義,顯然 ;若 出現在上述序列中,即 ,那麼 的出現不會晚於 後的下一個奇數,因此根據數學歸納法任意 都出現在了序列 中。同理,任意 都出現在了序列 中,因此上述映射 確實構造出了 到 的一個同構。現在,我們知道有理數集是可數的,因此若無理數集、實數集也都是可數的稠密線性序,那麼它們必然都同構。然而,有理數集不完備而實數集完備,因此它們明顯不同構:
證明:假設 是兩集合自然全序之間的一個同構,那麼我們考慮 的子集 。 顯然有上界,比如 就是 的一個上界,因此根據實數的完備性 存在一個上確界 。現在, 是同構,因此我們可找到一有理數 ——若 ,則根據稠密性存在有理數 滿足 ,也即 ,與 是 的上確界矛盾;若 ,則根據稠密性存在有理數 滿足 ,也即 ,但 又是 的一個上界,也與 是 的上確界矛盾。因此,我們必有 是有理數,這不可能。所有,上述同構 必然不存在。
因此,根據稠密線性序的 範疇性可知實數集不可能可數,因此其去除可數的有理數集得到的無理數集必然也是不可數的。
因為可數只不過是指的和自然數集存在集合意義上的雙射,所以無理數不可數也沒有什麼可奇怪的。可數沒有任何深層的含義,只不過是集合的一種性質。
因為有理數能寫成p/q形式所以可數,因為有理數的四則運算都是有理數,任意兩個有理數a和b之間都有有理數(a+b)/2是介於a和b之間所以稠密。稠密和可數沒有關係,康託集是稀疏不可數的。
關於這個問題,要注意的是,稠密性和連續性是兩回事。
直觀來看,我們說有理數集是稠密的,是指在數軸上任意取一個區間,不論這個區間多小,都必然包含至少一個有理數。但在數軸上任意取一個點,這個點就不一定是有理數了,但一定是某個實數,因為實數集是連續的,或者說實數集具有完備性,滿足一系列完備性原理/定理。
至於可數和不可數,有理數可數可由有理數集的可列性證明(與自然數集一一映射),而Cantor的對角線則證明瞭實數不可數。
稠密和可數不可數沒關係,,,你這個問題有問題,
稠密是拓撲性質。
可數不可數這個是集合的勢。都不是一個範疇有什麼因果關係?
對於歐幾裏得空間Rn,你可以證明如果一個集合是稠密的,那他至少是無限可數的(一定不是有限的)並且是可以做到取一個稠密子集恰是可數的。
把有理數一個個排列能排列下來;雖然隊列無限長,但無限長的隊列是能排下來的。
而無理數即使是無限長的隊列也排不下來。
有理數無理數稠密指的是二者在實數集上的閉包是全體實數,和可數不可數沒什麼關係吧……
中位線悖論,瞭解一下。
現在的數學,拿到計算機中就不成立了,需要演算法修正,不然沒辦法用,因為數學是無限連續,而計算機中有上下限限制的,不存在無限連續。
本質上講,計算機演算法纔是客觀的數學,是可以客觀試驗的。
而人數的數學公式是一種擬合,是唯心的,如平行公理,二條直線在自然中是不可能一直平行,那樣槓桿力會變得無限大,光都受引力影響會彎曲,根本不有在什麼絕對平行。
無限連續就會導致很多數學悖論,自然界是量子化世界是離散的,兩者有本質區別,計算機的演算法計算也是離散計算,不是無限連續計算。
這兩者差異在連乘,指數增長下,會產生蝴蝶效應,指數鴻溝,如深度學習中梯度演算法中,梯度消失就是這種表現。
數學本質是文科,很多都是人為規定,如無窮大參加運算就人為規定個返回值,計算機中用不常用符號表示,極限在計算機中是無限死循環,一旦打斷取值無限死循環也被打斷變成了具體數,也就不能參加運算了。
所以計算機演算法纔是真正的客觀數學,以客觀計算為中心,是自然科學。
而人類的數學本質是文科,模型是擬合建模語言,建立在各種自然界不存在的假設上面。
因為有理數可用整數比值來表示,而整數是有序的。故可數,否則無序的你怎麼數?
推薦閱讀: