为什么决定NP确定性指数时间

时间:2014-03-09 22:49:15

标签: time-complexity exponential deterministic np

从教科书中说:

  

目前在NP中决定语言的最佳确定性方法使用指数时间。换句话说,我们可以证明这一点   
  ......

为什么这是真的?我似乎无法找到这种直觉。

1 个答案:

答案 0 :(得分:3)

NP属于EXPTIME(虽然我们不确定它是否是一个合适的子集),因为直观地说,你可以在指数时间内追踪多项式时间NTM的所有可能路径。

更具体地说,考虑NP中的任何语言L.必须有一个多项式时间NTM;让我们称之为M,并说它在非确定性时间O(n k )中运行。为简单起见,我们假设NTM仅使用二进制非确定性(即在每一步,它最多有两个选择)。这意味着非确定性的不同分支的最大可能数量由2 O(n k 给出,并且每个分支都可以通过模拟多项式时间来模拟在该分支上执行NTM。这意味着总时间为poly(n)·2 O(n k = O(2 O(n k ),因此这种确定性算法以指数时间运行。

现在,这并不意味着你花费确定的指数时间来解决NP问题。它只是说如果你想使用确定性算法,你需要最多指数时间。整个P与NP问题是关于你是否能做得更好。

希望这有帮助!