这是一篇关于悖论问题的讨论,并尝试去解决它们。阅读本文可能需要一点点集合论和逻辑学的知识。

一、理发师悖论

小城里有一个理发师放出豪言:他一定要为城里所有 “不为自己刮胡子的人” 刮胡子。

但是问题是:理发师应该为自己刮胡子吗?如果他为自己刮胡子,那么按照他的豪言 “只为城里所有不为自己刮胡子的人刮胡子” 他就不应该为自己刮胡子;但是如果他不为自己刮胡子,同样的按照他的豪言 “一定要为城里所有不为自己刮胡子的人刮胡子” 他有必须为自己刮胡子。

1. 集合论描述

理发师悖论是一个对当时已经成为数学理论基础的集合论的一个重重打击,这一悖论的出现直接导致了一场数学危机。

我们尝试使用集合论来描述理发师悖论:

将小城里的人构成集合 U = { a | a 在小城中生活 }
对于小城中的每一个人都可以构造一个集合 Sa 表示 a 给属于 Sa 集合的人刮胡子
如果 a 为自己刮胡子,则 a ∈ Sa
如果 a 不为自己刮胡子,则 a ∉ Sa
如果 a 不为任何人刮胡子,则 Sa = {}
-------------------------------------------------------
假设 s 为理发师,那么可以得到集合 Ss = { a | a ∉ Sa }
那么理发师悖论可以表示为:s 是否属于 Ss?
如果 s 属于 Ss,则 s 不满足集合 Ss 的性质 a 不属于 Sa,s 应该不属于 Ss
如果 s 不属于 Ss,则 s 满足集合 Ss 的性质 a 不属于 Sa,s 应该属于 Ss

理发师悖论对集合论产生了重大的打击,理发师建立了一个自相矛盾的集合。那么问题究竟出现在哪里?

2. 逻辑命题描述

理发师悖论是一个逻辑悖论,我们尝试使用逻辑学描述理发师悖论:

我们将理发师悖论翻译为一下命题:
a 属于 Ss 当且仅当 a 不属于 Sa 且 Sa 是一个集合
( a ∈ Ss )<->( a ∉ Sa ∧ Set(Sa))
----------------------------------------------------
将理发师 s 带入 a,可以得到:
s 属于 Ss 当且仅当 s 不属于 Ss 且 Ss 是一个集合
( s ∈ Ss )<->( s ∉ Ss ∧ Set(Ss))
根据命题逻辑,我们得到了以上命题。命题并不会导致悖论,只是说明了 Ss 并不是一个集合。

3. 真类与集合

通过逻辑描述,我们发现了 Ss 并不是一个集合。这可能有一些反直觉,数学家为了解决这个问题引入了一个叫 “类” 的概念。类总是具有一定的性质,我们将 P(x) 表示类 x 具有性质 P。这与集合的概念很像,具有某一性质的元素组成一个集合。

其实集合是类的一种,如果存在类 B ,而类 A 满足条件 “A ∈ B”,则称类 A 为一个集合,记作 Set(A)。也就说,集合可以称为其他类的一个元素,这正是集合的 “严格” 定义。

而不是集合的类就是真类,真类是一种能以自身为元素的类。真类不满足 “A ∈ B” 条件,也就是说,真类不能成为其他类的元素。

在理发师悖论中,Ss 是一个不为集合的类,也就是说 Ss 是一个真类。理发师悖论证明了真类的存在。

4. 罗素公理体系

其实理发师悖论是罗素悖论的一种描述,由于集合论对集合的定义不加限制导致了悖论的产生。这一悖论的出现导致的数学危机,引发了众多数学家对这一问题的补救,最终形成了现在公理化集合论。这一类型的悖论都可以使用罗素公理体系解决。

二、克里特人悖论

一位克里特岛的哲学家说了一句话:“所有的克里特人都是说谎者。”

实际上这并不是一个悖论,通过逻辑学可以将这句话翻译为:∀x ( x 是说谎者 ),对于任意的克里特人都符合 “克里特人是说谎者”。这句话的否定形式是:∃x ( x 不是说谎者 ),存在一个克里特人不是说谎者。也就是说,只要存在一个不说慌的克里特人就能证明这句话。这句话不是悖论,只能说明这句话是假的。

1. 说谎者悖论

克里特人悖论其实是想说明一个说谎者正在说谎。我们来看看说谎者悖论:

1. 这句话为假
如果这句话为真,那么这句话为假,形成矛盾
如果这句话为假,那么这句话为真,形成矛盾
这句话无论是真还是假都会推导出矛盾的结果,我们得到的结论是:说谎者语句是不真不假的
这结论是反直觉的,因为这个结论否定了二值原理(对于任何命题只能是真或假其中之一)
-------------------------------------------------------------------
2. 这句话不为真
根据上面的结论,这句话不真不假
也就是说这句话不为真,但从这句话对自身的陈述,又意味着这句话一定为真,又形成了矛盾
因此,我们的结论变成了:说谎者语句是即真又假的
这结论不仅否定了二值原理,还否定了矛盾律(不存在即真又假的语句)
--------------------------------------------------------------------
3. 这句话只为假
如果这句话即真又假,但这句话只为假,不为真,又形成了矛盾

2. 可能的解答

我们从逻辑学对说谎者悖论进行入手。将说谎者悖论改编为:这个命题为假:

我们将命题设为 p
“这个命题为假” 进一步可以表示为 “这个命题为假当且仅当这个命题为真”:!p <-> p
对这命题进行推导(以下需要逻辑学的知识):
!p <-> p
所以:( !p -> p )∧( p -> !p )
因为:!p -> p := p ∨ p := p
因为:p -> !p := !p ∨ !p := !p
所以:p ∧ !p
-----------------------------------------------------------------------
通过推导,我们将 p 推导为 p ∧ !p,p 为真且为假的矛盾句式
矛盾句在逻辑上必然为假的语句,也就是说说谎者语句与矛盾句等价
说谎者语句自始就隐含矛盾

以上推导说明了说谎者语句本身就是矛盾的,必然为假。所以说谎者悖论并不构成悖论。当然以上都是我自己的推断不保证是正确的。但是我的结论与 Arthur Prior 的结论一致:

根据Arthur Prior的分析,说谎者语句并不存在悖论。他主张任何语句都包含对自己真值的隐含断言。例如,语句“二加二等于四”其实就隐含了“二加二等于四为真”的真值断言,因此,“二加二等于四为真”所含的资讯不多过语句“二加二等于四”,因为后者已经隐含了前者“…为真”的段落。在说谎者语句的自我指涉中,段落“…为真”与“这整个语句为真且…(删节号省略了自我指涉的语句自身)”等价。 因此以下两个语句等价:

  • 这个语句为假
  • 这个语句为真且这个语句为假

第一句是标准的说谎者语句,第二句则是只是单纯的“A且非A”的矛盾句形式,矛盾句是逻辑上必然假的语句。根据Arthur Prior的分析,说谎者语句与矛盾句等价。悖论是指从为真的前提推导出矛盾的结论,然而根据Arthur Prior的分析,说谎者语句自始就隐含矛盾而为假,也就是前提为假。所谓的说谎者悖论其实只是由一个一开始就隐含矛盾的假语句推导出另一个矛盾,并不满足悖论的定义,因此说谎者悖论的存在只是错觉而已,其实悖论并不存在。其他哲学家,例如Eugene Mills与 Neil Lefebvre及 Melissa Schelein,也有类似的答案。

对于说谎者悖论还有许多种解答,读者可以自行了解。

三、纸牌悖论

纸牌的一面写着:”纸牌反面的句子是对的。”而另一面却写着:”纸牌反面的句子是错的。”

纸牌悖论其实说谎者悖论的多语句版本:

下面的话是真的
上面的话是假的

1. 基于说谎者悖论的解答

如果基于考虑上面说谎者悖论的解答,纸牌悖论的解答就显而易见了:

p. 下面的话是真的
q. 上面的话是假的
---------------------------------
我们考虑命题 p
命题 p 可以表示为 “命题 p 为真当且仅当 命题 q为真”:p <-> q
又因为命题 q 是命题 p 的否定,
所以可以表示为 “命题 p 为真当且仅当命题 p 不为真”:p <-> !p
所以命题 p 是一句说谎者语句,同理,命题 q 也是说谎者语句

通过上述简单的推导,可以将纸牌悖论推导为说谎者悖论。那么解答当然与说谎者悖论一样啦。

评论