兩個集合怎麼相減 集合的勢與可數集

2021-10-13 15:49:55 字數 2463 閱讀 8997

可數集是集合論中的乙個基礎概念,不搞懂它,無法繼續學習實分析、測度論。因為lebesgue測度的性質就有可數可加性!

要了解可數集是什麼首先要搞懂什麼是集合的勢。

對於乙個集合來說,其中的元素有多少是乙個很基本的問題。比如說,對於集合a和b來說,如何判斷a和b哪個的元素多?如果是有限集,倒是可以用自然數數出其中元素的個數,但是如果a和b都是無限集合,應該怎麼判斷呢?

因此就有了勢的定義:

設集合a和b,若存在乙個從a到b上的一一對映,則稱集合a和b對等,記作

顯然,要判斷兩個集合是不是等勢,只需要看這兩個集合之間能不能建立起元素的一一對映,如果可以的話,我們就說這兩個集合的元素是一樣多的。

例如集合

是兩個集合之間的一一對映。不過在這個例子不用等勢的概念也知道它們的元素是3個。

又例如正偶數集合

和自然數集合

等勢,這是因為

所決定的函式

是乙個由

到 e 的一一對映。這是乙個與直覺相悖的的例子。

那麼可數集定義如下:

設自然數集

的基數是

(讀作阿列夫零),如果乙個集合a的勢是

,則稱a是可數集,也叫做可列集。

可數集的英語是countable set,但是我覺得另乙個翻譯——「可列集」比較好,代表集合的元素可以一一列出

注意,可數集依然是無限集合

這裡把幾個容易混淆的概念區分一下:

有限集:是一種具有唯一計數的集合,有限集的勢就是它的計數。

無限集:不是有限集的集合就是無限集。無限集必與其真子集對等。

不可數集:如果乙個集合既是無限集,其基數又不等於

,這個集合就是不可數集。可見不可數集和自然數集之間不存在乙個雙射。

需要用到對角線論證法巧妙證明,這是 cantor 於2023年提出的,該證明是用反證法完成的,步驟如下:

假設區間[0, 1]的全體實數集合是可數的,那麼把所有在這區間內的實數列出為

如果該數列小數形式表現如下:

考慮 小數點後的第k個位,把這些數字加上下劃線:

然後設一實數

,是按照如下的方式定義的:

顯然x是乙個在區間[0, 1]內的實數,按照上圖,可以表示為 0 . 4 5 5 5 5 5 4 ...

由於我們假設

列出了所有區間[0, 1]內的實數,所以必存在乙個

但是由於x的定義使其與

之中所有的實數都不相等(因為 x 和

會在第n個小數字必不同),所以x不在序列

中。導致

並不能列出所有區間[0, 1]內的實數,這發生了矛盾,所以區間[0, 1]內的全體實數集合是不可數集。

這是乙個與可數無限集合有關的數學悖論,由德國數學家大衛·希爾伯特提出。

假設有乙個擁有可數無限多個房間的旅館,且所有的房間均已客滿。

設想此時有乙個客人想要入住該旅館。由於旅館擁有無窮個房間,因而我們可以將原先在1號房間的客人安排到2號房間、2號房間原有的客人安排到3號房間,以此類推,這樣就空出了1號房間留給新的客人。重複這一過程,我們就能夠使任意有限個客人入住到旅館內。

在這種方式下我們可以看出集合

和集合

有相同的勢,因為已知這兩個集合之間存在一一對映。

另外,我們還能把可數無限個新客人安排到旅館中:將1號房間原有的客人安置到2號房間、2號房間原有的客人安置到4號房間、n號房間原有的客人安置到2n號房間,這樣所有的奇數房間就都能夠空出來以容納新的客人。這就是前面的正偶數集合

和自然數集合

等勢的例子。

這一問題雖然被稱作「悖論」,但事實上它並不矛盾,而僅僅是與我們直覺相悖而已。「每個房間都客滿」與「無法入住新的客人」兩者其實並不等價。客滿不代表不能入住客人,而有客人離開卻依然是客滿。

因此無限集合的性質與有限集合的性質並不相同。事實上,乙個無限集合之所以無限的充要條件是它與它的某真子集對等。

實變函式論與泛函分析 夏道行等

wikipedia: countable set

wikipedia: hilbert's paradox of the grand hotel

兩個集合的差

題目出自杭電hdu 集合的差 以屬於a而不屬於b的元素為元素的集合稱為a與b的差集,即找出a中有的,而b中沒的。思路 1.對輸入的a,b集合進行集合內排序.2.a的元素a1依次與b中比a小的元素比較。3.若b中沒有元素與a1相等,則累加標記變數f,並把a1輸出.4.進行a1元素的下乙個元素a2與b中...

計算兩個集合的交集

include include include define number1 7 define number2 5 void createcollect int int void display int int int main printf 集合1 display collection1,numb...

C 合併兩個(多個)集合

合併兩個集合 使用語言 c 環境 net core 2.0 當前使用 支援 net 所有環境,我就不多說了 核心 listlistmerge1 list1.union list2 tolist 不允許有重複項 listmerge1 結果 listlistmerge2 list1.concat lis...