据说科普/哲普性文章中,每多一个公式就少一万个读者,所以这一篇估计要坐冷板凳了。不过写都写了,就发上来吧。
上一篇我们从说谎者悖论最简单的形式,S1:这个句子是错的(this sentence is false)开始聊起,https://bbs.wenxuecity.com/teatime/746325.html ,并且得到一个结论,S1有语义缺陷,所以不能被赋予对错值。也就是说它不对也不错。
我们还说,不能赋予对错值的语义有缺陷的句子,有一个共性,就是它们无法正确代表外部世界,所以无从判断对错。
那为什么S1有语义缺陷呢?上一篇我们聊了一种解释:因为S1在句子以外没有基础(Ground)。
我们还稍微提及了一下加强版悖论,S2: 这个句子不对(this sentence is not true),我们发现它是“真”矛盾,也就是又真又不真(both true and not true)。
那么S2的矛盾又从何而来呢?
我们下面用Tarski的Level理论来解释一下S1和S2两个句子共有的语义缺陷。
Tarski说我们对Truth有两个假设:
1. 如果一个句子是真的(true),那么它陈述的是事实(things are as it says they are)。
2. 如果被陈述的是事实,那么作此陈述的句子是真的(True)。
我们用L代表句子的名字,q代表句子本身,那么上面两个假设在逻辑上可以写成:L是真的,当且仅当q是真的。(L is true iff q is true.)
我们将加强版说谎者悖论S2(S2 is not true)代入以上公式,则得到S3: S2是真的,当且仅当S2不是真的。
S3是真具有矛盾,不能像S1一样可以用没有真假值来解释。
Tarski对句3的分析是,自然语言中对Truth的应用并不连贯(incoherent). Truth不应被视为一个单一的概念,而是具有层级结构的一个概念群。
比如我们有一个语言系统C0,假设其中包含一个谓语Tr1:”是真的”,这个Tr1应用且只应用在语言系统C0里所有真的句子里。我们再假设语言系统C0中有一个句子L:L不是真的。于是我们有了一个类似说谎者悖论的句子:L不是真的当且仅当Tr1(真的)可以应用在L上。
因为以上应用导致了矛盾,Tarski由此认为,“真的”这个谓语属于语言系统C0的假设不成立。Tr1(真的)应该属于比语言系统C0更高一级的语言系统,我们可以叫它C的原语言(Meta-C)或C1语言系统。
于是说谎者悖论的语义缺陷,在于它越级用了不属于自己语言Level的谓语:是/不是“真的”。
Tarski的结论是,说谎者悖论表明日常语言的不连贯性。我们必须用一系列新概念替换我们现有的、但不连贯的Truth概念,每个概念都固定在层级结构中的一个层级,这样构建的语言,从一开始就不会出现Liar’s Paradox这类语言矛盾。