假设P = NP证明是什么样的?

时间:2009-05-22 22:31:58

标签: algorithm math computer-science complexity-theory p-np

它是一个特定NP完全问题的多项式时间算法,还是仅仅展示了解决NP完全问题的解决方案的抽象推理?

似乎特定的算法更有帮助。有了它,我们要多方面地解决NP问题所需要做的就是将它转换成证明具有解决方案的特定NP完全问题,并且我们已经完成了。

15 个答案:

答案 0 :(得分:36)

P = NP:“3SAT问题是一个经典的NP完全问题。在这个证明中,我们演示了一个解算它的算法,它具有渐近界限(n ^ 99 log log n)。首先我们......“

P!= NP:“假设有一个3SAT问题的多项式算法。这意味着..... ......这意味着我们可以做......然后。 ..然后......这是不可能的。这都是基于3SAT的多项式时间算法预测的。因此P!= NP。“

更新:或许类似于this paper(对于P!= NP)。

更新2 Here's a video of Michael Sipser sketching out a proof for P != NP

答案 1 :(得分:16)

叫我悲观,但它会是这样的:

...

∴,P≠NP

QED

答案 2 :(得分:15)

有一些meta-results关于P = NP或P≠NP证明的样子。细节非常技术性,但众所周知,证据不能

  • relativizing,这意味着证明必须使用所使用的图灵机的确切定义,因为有一些修改(“oracles”,就像非常强大的CISC指令添加到指令集)P = NP,并且通过一些其他修改,P≠NP。另请参阅this blog post以获得关于相对化的精彩解释。

  • natural,是多个经典circuit complexity样张的属性,

  • algebrizing,相对论的概括。

答案 3 :(得分:5)

可以采取的形式是假设P≠NP导致矛盾。

答案 4 :(得分:4)

它可能没有以直接的方式连接到P和NP ......许多定理现在基于P!= NP,因此证明一个假定的事实是不真实的将会产生很大的不同。即使证明TS的恒定比率近似值也应该足够IIRC。我认为,NPI(GI)和其他集合的存在也是基于P!= NP,因此使它们中的任何一个等于P或NP可能会完全改变这种情况。

恕我直言现在一切都在非常抽象的层面上发生。如果有人证明有关P = /!= NP的任何内容,则不必提及任何这些集合甚至是特定问题。

答案 5 :(得分:4)

可能是从NP问题减少到P问题的形式。请参阅reductions上的维基百科页面。

OR

像Vinay Deolalikar提出的proof一样。

答案 6 :(得分:3)

将N设置为乘法标识。然后NP = P. QED。 ; - )

答案 7 :(得分:3)

最直接的方法是证明NP-complete类中存在问题的多项式时间解决方案。这些是NP中的问题,并且可以减少到已知的np问题之一。这意味着你可以提供一个更快的算法来证明original problem posed by Stephen Cook或许多其他已被证明是NP-Complete的算法。有关更多有趣的问题,请参阅Richard Karp的seminal paperthis book。已经证明,如果解决其中一个问题,整个复杂性类就会崩溃。编辑:我必须补充一点,我正在和正在研究量子计算的朋友谈话。虽然我不知道这意味着什么,但他说有一定的证明/实验?在量子世界中可以使整个复杂性类,我的意思是整个事情,没有实际意义。如果此处的任何人对此有更多了解,请回复。

在没有给出正式算法的情况下,也有许多尝试解决这个问题。你可以尝试计算一下。罗伯特/赛莫尔证明了这一点。人们也尝试使用久经考验的对角线证明来解决它(也用于表明存在一些你永远无法解决的问题)。拉兹博罗夫还表明,如果有某些单向函数,那么任何证据都无法给出解决方案。这意味着需要新技术来解决这个问题。

自原始论文发表以来已有38年,但仍然没有任何证据可信。不仅如此,数学家在复杂性类概念出现之前提出的许多问题都被证明是NP。因此,许多数学家和计算机科学家认为,一些问题是如此根本,以至于可能需要一种新的数学来解决问题。你必须记住,人类所能提供的最好的头脑已经解决了这个问题而没有任何成功。我认为应该至少几十年才有人破解这个难题。但即使存在多项式时间解,常数或指数也可能很大,以至于在我们的问题中无用。

有一项优秀的调查可以回答您的大部分问题:http://www.scottaaronson.com/papers/pnp.pdf

答案 8 :(得分:2)

当然,描述性证明是最有用的,但还有其他类别的证据:例如,可以提供“存在证据”,证明可能来找到答案没有找到(或者有时甚至建议如何找到)答案。

答案 9 :(得分:2)

它可能看起来几乎就像these

之一

答案 10 :(得分:1)

好问题;它可以采取任何一种形式。显然,具体的算法会更有帮助,是的,但是没有确定这将是理论P = NP证明的发生方式。鉴于NP完全问题的性质以及它们有多普遍,似乎已经付出了更多努力来解决这些问题,而不是解决方程式的理论推理方面,但这只是假设。

答案 11 :(得分:1)

P = NP的任何非建设性证据确实不是。这意味着以下显式3-SAT算法在多项式时间内运行:

  

列举所有程序。在圆形 i 上,运行所有编号的程序   小于 i 一步。如果   程序终止于   满足公式的输入,返回 true 。如果一个程序   以形式证明终止   没有这样的输入,返回   的

如果P = NP,则存在以O(poly(N))运行的程序,并且如果存在这样的公式,则向公式输出令人满意的输入。

如果P = coNP,则存在一个在O(poly(N))中运行的程序,如果不存在公式,则输出不存在公式的形式证据。

如果P = NP,则因为P在补体NP = coNP下关闭。因此,存在一个在O(poly(N))中运行并且两者都执行的程序。该程序是枚举中的 k '程序。 k是O(1)!由于它在O(poly(N))中运行,因此我们的强力模拟仅需要

  

K * O(聚(N))+ O(聚(N))^ 2

一旦到达相关程序就轮回。因此,强力模拟在多项式时间内运行!

(注意k是程序大小的指数;这种方法实际上不可行,但它表明很难做出P = NP的非建设性证据,即使是这种情况。)< / p>

答案 12 :(得分:0)

在某种程度上,证明需要具有的形式取决于你的哲学观点(=你认为是真实的公理) - 例如,作为contructivist你需要构建一个实际的需要多项式时间来解决NP完全问题的算法。这可以通过使用减少来完成,但不能通过间接证明来完成。无论如何,它似乎非常不可能:)

答案 13 :(得分:0)

证据可以推断出与NP的至少一个元素(问题)不是P的元素的假设相矛盾。

答案 14 :(得分:0)