我最近在考虑矛盾证明的有效性。在过去的几天里,我已经阅读了有关直觉逻辑和戈德尔定理的东西,看它们是否能为我提供我的问题的答案。现在,我仍然有一些疑问仍在徘徊(也许与我阅读的新材料有关),希望能得到一些答案
(警告:您将要开始阅读具有非常混乱的逻辑基础的内容,带着一丁点的知识来接受所有内容,它应该是一个问题而不是一个答案,其中存在许多误解)。
我认为我的主要问题是,一旦我们证明不是A会导致某些矛盾,因此不是A必须为假,那么我们就得出结论,A必须为真。这部分是有道理的(特别是如果我接受排除中间法则是有意义的话),但令我困扰的是那种如何通过矛盾进行证明。首先,我们不以A开头,然后仅应用公理和推理规则(以机械方式说),然后看看将我们带到何处。它通常会产生矛盾(比如说A是正确的,或者和是正确的)。我们得出结论,不是A必须为假,所以A为真。没关系。但是我的问题是,正式系统具有什么样的保证φ如果我使用相同的过程但从A开始,那我也不会在这里遇到矛盾吗?我认为,有一些隐含的假设正在通过矛盾进行证明,即如果类似地在A人中执行相同的流程也不会产生矛盾,那么我们将获得什么样的保证呢?有没有证明是不可能的?换句话说,如果我的车床(TM)(或超级TM)永远消失了,它从假定的真实语句A开始尝试了所有公理的所有逻辑步骤,那么这保证了它不会由于发现矛盾而停止运行?
然后,我用戈德尔的不完全性定理对我过去的问题进行了一些联系,该定理是这样的:
表达算术的形式系统F不能证明其自身的一致性(在F内)。
基本上,这使我很清楚,如果那是真的,那么保持一致性(即保证A而不是A不会发生)是不可能的。因此,似乎矛盾证明只是隐含地假设一致性得到了保证(否则,为什么它会继续前进并通过证明A成立,如果它还不知道一致性的话就不可能证明A是正确的)。和矛盾在哪里好,对于任何一对陈述A而不是A)?这是不正确的还是我错过了什么?
然后我想,好吧,让我们在公理中加入排除中间的规则,然后解决所有问题。但是后来我意识到,等一下,我们只是在定义问题而不是解决问题。如果我只是强行定义我的系统是一致的,那并不一定意味着它实际上是一致的……对吗?我只是想弄清楚这些想法,但我不确定该怎么做,但这是我在几天后从几乎所有这些概念,矛盾,排他的中间,直觉主义逻辑,戈德尔的完备性和不完备性定理…
与此相关的是,如果没有排除中间(或矛盾)的规则,似乎实际上不可能直接直接证明某件事是假的。证明系统似乎擅长证明真实的陈述,但据我所知,它无法直接表明事物是错误的。也许他们做事的方式更间接地与矛盾(当他们表明某事一定是虚假的或坏事发生)或排除在中间(在其中仅知道一个A的真实价值或我们知道另一个A的真实价值)时,提供反例(基本上表明相反的说法是正确的,因此间接使用排除中间律)。我想也许我真的想要一个有建设性的证据,证明什么是假的?
我想,如果我能知道如果我证明A不是错误的话(例如我接受矛盾),那的确可以,并且我不需要对A无限地应用所有推理规则和公理,并且可以保证A赢了没有矛盾。如果那是真的,那么我想我可以更容易接受矛盾证明。这是真的,还是哥德尔的第二次残缺保证我不能拥有这个?如果我不能做到这一点,那么令我困惑的是,这么多年的数学家甚至没有发现不一致的地方,怎么可能做数学呢?我需要依靠一致性的经验证据吗?或者例如,我通过证明superF证明F来证明F是一致的,但是由于我实际上从不需要superF而仅需要F,那么我不能满足于真正起作用吗?
我只是注意到,我的投诉也涉及到直接证据。好吧,如果我做了A的直接证明,那么我知道A是正确的……但是我怎么知道如果我做了非A的直接证明,那么我也不会得到正确的证明?似乎同一问题的重点稍有不同。