1919年,英國數學家羅素提出了一個有趣的問題:村裡有一個理髮師,他為自己定了一條店規-他只給村裡不給自己刮臉的人刮臉,那麼按照這個規矩理髮師該不該給他自己刮臉呢?
如果他不給自己刮臉,那麼他就屬於「不給自己刮臉」的那一類村民,按規定,他應該給自己刮臉;但是,如果他給自己刮臉,他就屬於「給自己刮臉」的那一類村民,按規定他就不能給自己刮臉。
很明顯這是一個悖論,理髮師的位置非常尷尬,兩類群體他都不屬於,那麼他的歸屬在哪兒?
按理說,如果對於兩個分類標準明確而且對立的群體而言,某個人歸屬肯定是非此即彼。比如,我們定義此時此刻有北京戶口的人是北京人,那麼所有人一下子就被分成了兩類-北京人和非北京人。
羅素的這個「理髮師悖論」挑戰了康託爾構造集合的基本原則-概括原則:具有某種特質的元素可以構成一個集合。
簡單理解就是我們學過的集合的確定性,一個元素是否屬於給定集合是明確的而不是模稜兩可的。
「理髮師悖論」的學術版是1901的「羅素悖論」,原文我們就不說了,非常抽象。
通俗來說,所有的集合分成兩類,一類為非常集,這種集合的本身也是該集合的一個元素。例如,「一切集合組成的集合」當然是自身的一個元素,因為它也是一個集合。再簡單一點,「王中王」是不是王,肯定也是王。
另一類是正常集,即其本身不是它的一個元素。例如「有理數集」,它本身不是有理數(是個集合),所以不屬於有理數集。由此,任意集合不是正常集就是非正常集,不應該有例外。
但是,如果S是一切正常集的集合,那麼S屬於哪一類?
集合論是一切數學的基礎,羅素悖論的提出說明了集合論本身是包含矛盾的,是不嚴密的。它使得那個年代的整個數學界和邏輯學界同時感到了問題的嚴重性,並由此引發了數學史上第三次數學危機。