在一个100条语句的列表中,其中第n条语句写的是“列表中恰有n条语句为假。”
a)你能从这些语句中得出什么结论
b)如果第n条语句写的是“列表至少有n条语句为假”,回答问题a)
c)假设这个列表包含99条语句,回答问题b)
a)你能从这些语句中得出什么结论
首先应该明白,这100条语句是互相矛盾的,最多只有一条语句是正确的。
先来看第100条语句,假设它是正确的,则所有语句均错误(否定了自己),则它是错误的,则至少有一条语句是正确的。结合一开始得出的结论,可以得出刚好只有一条语句是正确的。
现在来看第99条语句,假设它正确,则其余均错误。经判断,该假设符合逻辑。可得出结论:第99条语句为真,其余语句均为假。
b) 如果第n条语句写的是“列表至少有n条语句为假”,回答问题a)
首先明白一个逻辑,第n条语句为真时,任何小于n的语句均为假。(为方便接下来的描述,我们把该结论记为结论1)
现在我们依然先来看第100条语句,易得该语句为假。
来看第99条语句,当它为真时,其余语句均为假,违反了结论1(即在它之前出现了为假的语句,我们接下来还要用到这一方法),则该语句为假。
接下来看第98条语句,当它为真时,可推得1~97条语句中至少有96条语句为假(因为已验证第99,100条语句为假),再次违反结论1,该语句也为假。
下面我们看第97条语句,与判断第98条语句时相同的方法,当它为真时,可推得1~96条语句至少94条语句为假,违反了结论1,该语句为假。
以此类推,我们可以得到第51~100条语句均为假。在此前提下,可以得到前50条语句为真。
结论:前50条语句为真,后50条语句为假。
c)假设这个列表包含99条语句,回答问题b)
在解决问题b的基础上,这个问题很好解决。
我们能依照问题b的思路得到语句51-99都是假的,然后依据这个结论得出语句1-49都是真的。
现在我们来看语句50。
假设它是真的,由于其余98个语句真假性都是已知的,可以推出它自己是假的,产生矛盾。若假设它是假的,同理也产生矛盾。因此这是个悖论。