达娜回答了这个问题。但是这里有一些实用方面的评论。
请注意,无法确定在ZFC中是否可以证明给定的句子。对此没有影响。(实际上是)意味着很容易找到命题重言式的证明,而不是像GC这样的一阶句子。P=NPP=NPP=coNP
检查固定理论(例如ZFC)中是否存在给定长度为的给定句子(一元)的证明是。因此,如果,则有一个多重时间算法对此进行检查。将为句子长度中的某个固定多项式将导致多重时间算法。NPlP=NPl
实际上(戈德尔在致冯·诺伊曼的著名信中提到了这一点):如果,则存在一个多项式时间算法,该算法给出一阶句子和(一元),该算法可以找到该句子是否具有ZFC中的大小为证明。Godel的想法是,在这种情况下,如果等价确实可行(即,该算法不仅是而是),则可以采用该算法并运行该算法以检查证明可行,但长度很大,将比任何人都无法想出的任何证明都要长,如果算法找不到答案,那么该句子实际上就是P=NPllP=NPPDTime(n2)无法证明。达娜(Dana)提到的技巧在这里也可以找到证明。
实用方法:
P=NP是不够的,我们需要该算法在实践中可行,的算法将无济于事。DTime(10000n10000)
只有在有一个证据时(即该句子在ZFC中不是不可判定的句子),它才会找到一个证据,而且该证据应尽可能短。
可能是,但是我们仍然可以在算法上找到这些可行的证明,例如。N P = D T i m e (n log ∗ n)P≠NPNP=DTime(nlog∗n)