最佳NP解算器


12

修复 NP完全搜索问题,例如SAT的搜索表单。莱文搜索提供了用于求解X的算法L,该算法在某种意义上是最优的。具体来说,算法是“ 一旦输入x吻合,在输入x上执行所有可能的程序P,一旦某些P返回答案y,则测试它是否正确”。从给定一个程序P来解决X且时间复杂度t P的意义上讲,这是最佳的X{0,1}×{0,1}LXPxPyPX,时间复杂度大号Ñ 大号满足tP(n)tL(n)L

tL(n)<2|P|p(tP(n))

其中是取决于精确计算模型的固定多项式p

的最优性可以用某种更强的方式来表述。即,对于每一个中号{ 0 1 } * Q的程序解决 X与承诺中号在时间中号QÑ 中,时间复杂性中号大号Ñ 大号在限制于输入中号满足LM{0,1}QXMtQM(n)tLM(n)LM

tLM(n)<2|Q|q(n,tQM(n))

其中是固定多项式。关键的区别在于,即使P N Pt M Qn 也可以是多项式qtQM(n)PNP

的明显“弱点” 是较大的因素2 | | 在这个范围内。很容易看出,是否有一个算法满足相同形式的2 | | |中的多项式代替 | 然后P = Ñ P。这是因为我们可以将Q用作通过对答案进行硬编码来解决X的某些给定实例的程序。同样,如果2 | | 可以用|的次指数函数代替 |L2|Q|2|Q||Q|P=NPQX2|Q||Q|则违反了指数时间假设。但是,以下问题的答案(对我而言)不太明显:

假设指数时间假设和其他公知的猜测(多项式层级的例如非简并性,单向函数存在)如果必要的话,有一个算法求解X ST为每个中号{ 0 1 } *Q的程序解决X与承诺中号在时间中号Qñ 中,时间复杂性中号ñ 限制在输入中号满足AXM{0,1}QXMtQM(n)tAM(n)AM

tAM(n)<f(|Q|)q(n,tQM(n))+g(|Q|)

其中是多项式,f是次指数,g是任意的qfg

如果答案是肯定的,则是否可以是多项式?g的增长率是多少(显然在ETH下至少是指数级的)?如果答案是否定的,如果ETH错误但P N P,多项式f是否存在?fgfPNP

Answers:


12

考虑以下算法(Levin算法的一种变体):

并行运行前算法。此外,并行运行蛮力算法,逐个尝试所有可能的解决方案。(以相同的速度运行所有算法。)n

当其中一种算法找到解决方案时停止。

考虑两种情况(假设输入的长度为n):xn

  • 是前 n种算法之一。然后,运行时间为 ø Ñ 中号QÑ p Ô ýÑ QnO(ntQM(n))poly(n)

  • Qnn<2|Q|2nO(1)=22O(|Q|)

tAM(n)poly(n)tQM(n)+22O(|Q|).

f(n)g(n)ng(n)nf(n)n


2|Q|tQM(2|Q|)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.