是否存在可判定的决策问题,但在NP中却没有?

时间:2011-07-15 19:36:24

标签: complexity-theory np

这是我的第一个stackoverflow问题,所以要温柔。如果已经被打死了,我会事先道歉......我在NP上读了一些帖子,但我没有找到一个诱人的答案我的问题(如果有的话,我想出了一些新的)。简言之:

  1. 是否存在可以判定但在NP中没有的决策问题?
  2. 如果是这样,那些要求解决方案的问题是否比同等决策问题更难?
  3. 我怀疑第一个问题的答案是响亮的'是',而第二个问题的答案是响亮的'不'。

    在第一种情况下,示例问题可能是“给定S集合,S的子集T和具有域2 ^ S的函数f,确定T是否最大化f”。对于通用的S,T和f,如果不检查S的所有子集X的f(X),你甚至无法验证这一点,对吗?

    在第二种情况下......好吧,我承认这更像是一种预感。出于某种原因,似乎答案是否应该包含一位(用于决策问题)或任何(有限)位数......或换句话说,为什么你不应该考虑TM停止后留在磁带上的符号作为“回答”的一部分。

    编辑: 实际上,我有一个问题......你的结构如何表明功能问题“比决策问题更难”?如果有的话,你已经表明,回答功能问题并不比决策问题更容易......这是微不足道的。也许这是以粗心的方式提出这个问题的错。

    给定NP中的TM T1解决了问题“X是问题P的解决方案”变量X和(为了论证)固定P,是否保证NP中的TM T2会停止无处不在的T1停止,它停止在“停止接受”状态,并离开,例如磁带上X的二进制表示形式?

1 个答案:

答案 0 :(得分:14)

(1)是的,有决定性问题是可以判定的但不是NP。这是time hierarchy theorem NP NEXP的结果,因此任何NEXP难问题都不在NP中。典型的例子就是这个问题:

  

鉴于用二进制编写的非确定性图灵机 M 和整数 n M 最多接受空字符串< em> n 步骤?

这个问题当然是可判定的(只是模拟长度为 n M 的所有计算路径,如果看到任何接受的话)。

有关更多NEXP完整问题,请参阅cstheory.stackexchange.com上的this question。当然,在NEXP之外还有一些决策问题:实际上,它们中有exponential hierarchy个......

(2)你的第二个问题的答案是否定的:功能问题并不比决策问题困难。 (在特定技术意义上的“不比硬”。)假设我们有一个函数问题,要求输出 N 。然后是一个决策问题,它接受输入 k 并询问 N k 位是否为1.解决每个位的决策问题在答案中,你已经完成了!

例如,FSAT(找到令人满意的布尔公式赋值的问题)可以是polynomial-time reduced到SAT(确定是否 a的问题布尔公式具有令人满意的赋值)。假设您可以解决SAT问题,并且要求您为公式φ找到令人满意的分配。考虑公式φ中的第一个变量 x ,并询问SAT是否满足 x ∧φ。如果是,则 x 为真的φ必须有令人满意的分配;如果不是,并且φ是可满足的,则对于φ x 为假的φ必须有令人满意的分配。继续第二个变量 y ,询问 x y ∧φ(或¬ x y ∧φ,根据你的第一个问题的答案)是可以满足的。等等公式中的每个变量。

[我应该对这个例子添加一个重要的警告。在这里,SAT和FSAT是“自然”相关的:他们都关注同一类事物,即满足公式的赋值。但在我的观点中,搜索一般可以简化为决策,我使用了关于输出的 k 位的高度人为的决策问题。因此,虽然搜索减少到决策,但它不一定会减少到自然对应的决策问题。特别是,Bellare和Goldwasser表明有时搜索不能如此减少。]