理发师悖论:他到底给不给自己刮脸

村里理发师只给“不给自己刮胡子的人”刮胡子。那么,他给自己刮吗?罗素用这把剃刀剖开了集合论的裂缝。

分类
逻辑悖论
难度
进阶
标签
罗素、集合论、自指、朴素集合论
理发师悖论:他到底给不给自己刮脸 · 漫画配图
漫画 · 理发师悖论:他到底给不给自己刮脸

题目

某村只有一位理发师,他立下规矩:

他给且只给那些“不给自己刮胡子的人”刮胡子。

问题是:这位理发师,给自己刮胡子吗?

答案与解析

又是一个两难:

  • 如果他给自己刮胡子,那他就属于“给自己刮胡子的人”,按规矩他不该给这类人刮 —— 矛盾。
  • 如果他不给自己刮胡子,那他就属于“不给自己刮胡子的人”,按规矩他应该给自己刮 —— 又矛盾。

无论怎样都说不通。

背后的数学

这是罗素(Bertrand Russell)在 1901 年提出的理发师悖论,用来通俗地呈现他发现的一个严肃漏洞:罗素悖论

朴素集合论允许“由满足某性质的元素构成的集合”。若定义集合 R={xxx}R = \{x \mid x \notin x\}(所有不属于自身的集合),问 RRR \in R 是否成立,会得到和理发师一模一样的矛盾。

为避免这类灾难,数学家发展出公理化集合论(如 ZF),用“分离公理”等限制,禁止这种“包揽一切”的定义。一把剃刀,剃掉了集合论的一块肿瘤。