理发师悖论
理发师悖论(英语:Barber paradox)是用来比喻罗素悖论的一个通俗说法,由伯特兰·罗素在1901年提出。罗素悖论的出现是由于朴素集合论对于集合的不加限制的定义。由于当时集合论已成为数学理论的基础,这一悖论的出现直接导致了一场数学危机,也引发了众多的数学家对这一问题的补救,最终形成了现在的公理化集合论。同时,罗素悖论的出现促使数学家认识到将数学基础公理化的必要性。
内容
小城里的理发师放出豪言:他要为城里人刮胡子,而且一定只要为城里所有“不为自己刮胡子的人”刮胡子。
但问题是:理发师该为自己刮胡子吗?如果他为自己刮胡子,那么按照他的豪言“只为城里所有不为自己刮胡子的人刮胡子”他不应该为自己刮胡子;但如果他不为自己刮胡子,同样按照他的豪言“一定要为城里所有不为自己刮胡子的人刮胡子”他又应该为自己刮胡子。
用集合论的语言来描述理发师悖论是这样的:小城里的人构成集合 ,对于每个小城里的人 可以构造一个 的子集 ,即 给属于 的人刮胡子。那么,如果城里人 给自己刮胡子,则 ,如果 不给自己刮胡子,则 ,如果 不给任何人刮胡子,则 为空,即 。设理发师为 ,则理发师的豪言就是: 。问题是:如果 ,这将与 的定义矛盾,但如果 ,根据 的定义,又应该有 。理发师悖论是个逻辑悖论。用集合论语言来描述并不是必需的,只是为了将来更容易说明它与罗素悖论不是一回事。
历史故事
德国数理逻辑大师戈特洛布·弗雷格曾研究用集合论去描述数理逻辑,为此他还写了一本书。他在给罗素的信中提到他的工作时说他为此构造了一个特殊的集合( ),这个集合由所有不包含自己的集合构成。也就是说,集合 的元素 是一个集合, 自己不是自己的元素,即 。罗素在回信中讲述了前面的理发师的故事。聪明的弗雷格看出了这实际上是指出了他所构造的集合 的问题:如果 ,那么根据定义 应该包含 ,即 ;但是如果 ,那么同样根据定义 又不应该包含 ,即 。可此时弗雷格的书已经付印,修改已经是不可能的了,弗雷格只能在书中加一个后记并写到:在工作结束之后而发现那大厦的基础已经动摇,对于一个科学工作者来说,没有比这更为不幸的了。
虽然罗素没有直接点出那个弗雷格所构造的集合的悖论,但人们还是将那个集合的悖论称作罗素悖论。罗素悖论可以简单描述为:构造一个由所有不包含自己的集合构成的集合A,即 ,但我们无法断定A是否应该包含A,无论包含或者不包含都会导出矛盾。由于罗素悖论只涉及集合的定义和从属关系的判断这些集合论最基础的问题,而集合论又已成为数学理论的基础,因此罗素悖论导致了第三次数学危机。
这一历史故事应该只是一个“故事”,而不完全是历史事实。从看到的一些罗素和弗雷格的通信来看,他们的交流是很学术的。但罗素悖论指出了弗雷格著作中的一个错误,使得他来不及修改他的著作而只能追加一段后记这是一个事实。
理发师悖论与罗素悖论
尽管人们经常把理发师悖论说成是罗素悖论,或认为它们是等价的,但理发师悖论和罗素悖论并没有等价的关系,它只是一个比喻。
理发师悖论中的“不给自己刮胡子”即 和罗素悖论里的 是不一样的。集合以自己为元素( )是一个很抽象的概念,通常需要像“所有集合的集合”这样的表达方式才能做到,一般很难用一个构造的例子来说明。但也见过一个十分有趣的例子:如果定义集合 。则集合 是一个包含自己的集合的例子。
一种新的集合论的观点认为,罗素悖论也不是一个悖论,它也是一个和上述说法类似的逻辑错误,这用到了一个新的经改进的概括公理(comprehension axiom)。但这还有待学术界的认可。