这里只考虑“逻辑、哲学和语言上的悖论”,至于其他的比如投票悖论、费米悖论、外祖母悖论等等这里不讨论。因为它们涉及到的东西太多太杂了,而逻辑、哲学和语言上的悖论不需要任何其他的知识背景,属于“纯粹”的悖论,对它们的讨论更能揭示悖论的本质。
本回答分三部分:
明确“悖论”是什么,为后面的讨论做铺垫
对三个因素进行讨论并举例(重点)
奇妙的结尾:)
太长不看版:悖论来源于以下几个因素的一种或多种:
1. 本体论和认识论的分离,也就是人类认知能力的局限性,人类的认知常常达不到世界的本质,人类经常有错误的直观而自己不知道。
2. 逻辑的问题,经典的逻辑可能不适用于悖论产生的那个领域。
3. 自然语言的缺陷性,主要是语义上的缺陷性。
(这里先定义悖论,如果不想看可以直接拉到下一条分割线处)
本着知乎先问是不是再问为什么的原则,先说一下什么是悖论。这里搬运了我另一个回答的部分。请看过这个回答的自行跳过拉到更下面的部分。如何解答堆垛悖论? - LLLBK 的回答 - 知乎
什么是悖论?悖论首先是一个论证。(别跟我扯说谎者悖论就只是一句话,你不论证能知道它有矛盾么?)广义上的悖论指的是,直观上为真的前提,经由有效的论证形式推导,得出了直观上为假的结论。狭义上的悖论指的是推出了矛盾式。
注意,这里说的“为真”、“为假”是直观上的而不是实际上的,看起来为真(假)的命题实际上不一定为真(假)。之所以这样规定,是因为“实际上为真(假)”的命题实在是寥寥可数——数学够真了吧?集合论够真了吧?就连被奉为数学基础的素朴集合论都会出错,更别说日常生活中的命题了。而且,人类的认知能力有限,很多实际上为真的命题人类根本判定不了。因此,这里的“为真”“为假”,只能是“直观上”为真或假,而不能定义为实际上真或假。并且,实际上真的前提,经由有效的论证形式推导,根本不可能出现实际上假的结论,这是由论证形式的有效性决定的。因此需要把真和假定义为“直观上”的。
有人认为不能这样定义,其实是只承认了狭义上的悖论,而不承认如“堆垛悖论”一样的广义悖论。
这里就可以区分三种情况。
1. 前提看起来是真的但实际上是假的。这样的悖论就是大多数人认为的悖论,也就是狭义上的悖论,罗素悖论就是经典类型,罗素悖论表明了看起来完全正确的“概括原则”——任意性质 P 都有一个集合与之对应,此集合由满足 P 的那些元素构成——是错的。(具体请见据说罗素悖论有解,如何解? - LLLBK 的回答)。这类悖论揭示的其实就是直观真的前提其实不真,也就是人类直观的局限性和错误。
2. 结论看起来是假的但实际上是真的,结果推出了一个假结论就不奇怪了。比如巴拿赫 - 塔斯基悖论(一个球分成两个球那个)。再比如当年发现自然数集和有理数集一样大,发现一根实数轴和复平面上的点一样多,都曾被认为是悖论,后来才知道,这些悖论恰好揭示了人类的本能认知在涉及到无穷概念的时候会出错。这种悖论得出的结论实际上并不假,但是我们就觉得很假,很怪,因此对这种悖论的分析有助于澄清我们的一些不易发现的直观错误。
(说到这里其实可以看出,不论 1 还是 2 类型的悖论,最终都揭示了人类认知和语言的局限性和可错性,对一个个悖论的分析最终都是要告诉人类:别被直觉的认知所误导,直觉是需要澄清的;也别太依赖自然语言,自然语言是有缺陷的。因此不要太纠结于狭义和广义的悖论,反正既然最终目标是一样的,为什么不把广义悖论也纳入悖论?)
3. 有效的论证形式是有问题的。长期的实践中发现,经典逻辑里有效的论证形式在现实中并不适用(比如
这个论证形式是有效的,但根本就不符合现实(自己举个例子就能发现了),这正是各种非经典逻辑(多值逻辑、模糊逻辑等)得以发展的起源,尊重直观,认为传统的经典逻辑只适用于数学,至于要用到现实生活中,我们需要更贴近现实的逻辑,需要更符合直观的逻辑,需要能在除了数学领域之外也能应用的逻辑(比如应用在现实中,计算机中,人工智能中,哲学中)。这些就是非经典逻辑。(对应地,经典逻辑一般来说就是数理逻辑)
从“什么是悖论”的角度看,悖论产生的原因就三种,用于论证的前提看起来真其实是假的,结论看起来假实际上真,论证形式不适用于论证的语境。但这还不够,我们还要探究更深层的原因。也就是开头提到的几个原因。
(不用再往下拉了,这里进入正题)
下面针对开头提的几个要素分别举例子说明:
1. 本体论和认识论的分离,也就是人类认知能力的局限性,人类的认知(认识论)常常达不到世界的本质(本体论),因此人类经常有错误的直观而自己不知道。
经典例子是上面提到的罗素悖论和巴拿赫塔斯基悖论。
罗素悖论表明了,用于论证的前提——看起来完全正确的“概括原则”其实是错的。
巴拿赫塔斯基分球悖论的结论是一个球可以如何如何分为两个球,这并不构成逻辑矛盾,只是由于人的直观认为一个球不可能分成两个球,才把它称作悖论,这个悖论恰好揭示了人在这方面的认知局限性,为什么一个球不能分成两个?只是我们直观上想象不到而已。
关于“无穷”:有答主提到,在涉及到“无穷”时,可能会出现悖论。典型的是芝诺悖论,也就是那个追不上乌龟和飞矢不动的。这可以理解为是由于那个时候的人无法很好地理解“无穷”这个概念,也无法理解“连续性”这个概念,认为无穷个时间段加起来就等于无穷的时间了,其实根本就不是。
再举个例子,xx 悖论(我不知道有没有官方名字,但是记得是个 xx 悖论):根据函数“y=2x”发现[0, 1]和[0, 2]两个区间的点的个数一样多。这在当时是十分不可接受的,也是很不直观的。但是这个悖论其实就说明了我们的直观对于“无穷”和“连续”的理解是有问题的。当时发现自然数集和有理数集一样大也一样被认为是悖论,但是正是这个悖论使得人们对于“无穷”的概念认识更正确了。
2. 是用于论证的逻辑的问题,经典的逻辑可能不适用于悖论产生的那个领域。
这个话题就很大了,涉及到全体非经典逻辑。这样说吧,现在越来越多的认为,用来进行论证的论证形式并不是绝对的,经典的数理逻辑仅仅适用于数学方面,相当于对数学推理的建模。但是在实际生活中我们显然不会像数学一样进行论证,不同的领域内有自己不同的论证模式。
举个例子,有一种主流观点认为类似堆垛悖论的连锁悖论就来源于经典逻辑的非真即假的赋值有问题,有些命题既不真也不假,或者是有程度之分,那么这时对命题的赋值就不能只有真或假,而应该还有“不真也不假”,或者直接在[0, 1]的连续区间里赋值。既然赋值不一样了,那么根据原有赋值定义的有效论证就不再有效了。这种观点认为,逻辑改了才能消除这种悖论。
再举个例子,经典逻辑有个无法避免的蕴含怪论:矛盾可以推出一切。如果把这个规则用到现实论证中就会出现各种各样的悖论。比如:
矛盾可以推出一切。
“1+1 同时=2 和 3”是矛盾。
因此,1+1=2 和 3 可以推出天是蓝的”。
这就是一个悖论了,由正确的前提推出了看起来很假的结论。这个悖论的原因在哪?就在于“矛盾可以推出一切”这个前提是依赖于经典逻辑而成立的,而经典逻辑并不适用于现实推理。对此,不同的非经典逻辑有不同的解决方法。
比如相干逻辑认为,这种蕴含怪论的问题在于,经典逻辑是真值函项逻辑,也就是只管命题的真值,不管命题的内容,而现实中的论证通常会要求前提和结论有内容上的相关性,因此经典逻辑因此并不适用于这个论证。我们必须找一个满足前提和结论有相关性的逻辑来进行现实论证。
(很多非经典逻辑最初都是出于解决某种悖论)
3. 自然语言的缺陷性
这是一个很大的话题,很大很大_(:зゝ∠)_
依然针对堆垛悖论这种连锁悖论进行分析。大部分人会认为,这完全就是“谷堆”这个词没有得到精确定义导致的。自然语言存在各种各样这种模糊的谓词,这导致各种各样的推理失效。
再比如这个全能悖论中,自然语言至少导致了三个弊端:
其一,自然语言经常省略和跳步推理,在全能悖论中,甚至连论证的结论——上帝不存在——都给省略了,这就很容易把人看晕。
其二,自然语言难以区分开“在 xxx 假设下”的结果和不依赖于这种假设的结果,在全能悖论中,本来一直是在“存在一个全能的上帝”的条件下进行推理的,但是推到中间由于自然语言不清不楚的就忘了自己是在这个条件内,因此最后才导出了矛盾。
其三,自然语言的模糊性。“全能”这个词的意义很模糊,有人理解为“什么都能做,甚至能不遵守逻辑”,而有人理解为“可以做逻辑上可能的一切”。这就导致了歧义,也就产生了悖论。自然语言有太多这样没有得到良定义的词了。
更一般的,我们知道,在论证中出现的东西只有命题,命题通常来说就是判断某个对象具有某个性质。然而,在自然语言中,“对象”是语义不明确的,“性质”也是语义不明确的。
“性质”的语义不明确,最直接的表现就是像连锁论证中出现的那些模糊性质。
“对象”也是语义不明确的,这可以体现在堆垛悖论的回答 1.4 中的“本体论模糊方案”,这种观点认为,世界本身就是模糊的,或者说是混沌的,很多对象都是不明确的,比如“山脉”“星系”这种,它们的边界在哪里?如果没有明确的边界,我们只能承认他们本身就是模糊的。这种观点也是现代物理学所认可的。既然世界本身都是模糊不明确的,那我们用于描述世界的语言肯定也不明确。
既然对象和性质都是语义不明确的,那么它们组合而成的命题也语义不明确,那么导致悖论也就是正常的了。
更本质的是,自然语言本身是一个模糊了本体论和认识论的东西。语言之所以存在,最初就是在人脑中造出来的而不是现实中存在的,而且人类还要依靠语言来进行复杂的认知。因此,自然语言这种东西在本体论和认识论上是很模糊的,这在堆垛悖论的 1.3 中也有提到。而我们通常认为作为本体论意义上的外部世界和认识论意义上的人类认知、人类语言是有距离的,因此自然语言并不能完美的描述整个世界。正是因为这样,才会导致一个又一个奇怪的悖论。
关于自指:自指就是自己描述自己的性质,自己谈论自己。有答主提到“自指”,尤其是具有否定性的自指。这确实是很大一部分悖论的来源,理发师悖论、说谎者悖论等等都来源于此。罗素悖论也和自指密切相关。
自指,也产生于自然语言的缺陷。比如理发师悖论,根据 据说罗素悖论有解,如何解? - LLLBK 的回答 这个回答里的分析可以知道,这个悖论其实说明了“只给那些不给自己理发的人理发”的理发师不可能存在。但是用自然语言我们确实可以说出“一个只给不给自己理发的人理发的理发师”这样一个词,即使它在现实中不可能存在。这里其实就体现了自然语言的缺陷,它并不能完美的描述现实,它可以以一种看起来很合理的方式,表达出现实中不存在的东西。素朴集合论的“概括公理”就有这种能力,用一种看起来很自然很合理的方式,定义出一种完全不存在的集合,也就是罗素悖论里那个集合。
说谎者悖论的自指和理发师悖论的自指很相似。其实,自指很像是一个递归——一个无限循环调用自身的递归。这里可以产生这种递归的根本在于:自然语言是一个无所不包的语言,它的元语言、元元语言等等都是它自身。自然语言没有像类型论(在据说罗素悖论有解,如何解? - LLLBK 的回答 里有介绍)或者塔斯基的语言一样对语言进行分层,因此它可以在自己内部调用自己,可以在自己内部引用自己。“这句话是谎话”这句话属于自然语言,而指代这句话的“这句话”三个字也属于自然语言,规定“这句话是谎话”的是真还是假的条件还是属于自然语言。这导致了无穷递归。
但是无穷递归本身并不足够导致悖论。注意到,“谎话”是一种否定的性质,也就是一种类似负负得正的,奇数次重复就还是本身,而偶数次重复就为变成自己的对立面的一种性质。无穷递归这种否定性质,就会在“真话”“谎话”之间不停变换,导致了悖论。这也就是为什么同为无穷递归的“这句话是真话”并不导致悖论。
还有一点是“塔斯基不可定义定理”,这个定理我不知道在哲学上的意义有多大,但是个人感觉它暗示了,拥有过于丰富的表达力的自然语言,必然是包含矛盾的。
为了结构的完整性,以及为了避免看到结尾的你忘了前面的东西,把这三条导致悖论的根本因素再列一遍:
1. 本体论和认识论的分离,也就是人类认知能力的局限性,人类的认知常常达不到世界的本质,人类经常有错误的直观而自己不知道。
2. 逻辑有问题,经典的逻辑可能不适用于悖论产生的那个领域。
3. 自然语言的缺陷性。
用一个自指句做结尾吧,分析一下为什么下面这句话有问题:(感觉这个结尾很奇妙 hhh)
这句话不是本回答的结尾。