是否存在(最好是自然的)NP完全语言,这样对于每 成立?换句话说,恰好包含所有位实例的一半。 Ñ ≥ 1 | 大号∩ { 0 ,1 } Ñ | = 2 n - 1 L n
是否存在(最好是自然的)NP完全语言,这样对于每 成立?换句话说,恰好包含所有位实例的一半。 Ñ ≥ 1 | 大号∩ { 0 ,1 } Ñ | = 2 n - 1 L n
Answers:
几年前我问了这个问题,巴拉兹(Boaz Barak)肯定地回答了。
该语句等效于存在NP完全语言,其中是多项式时间可计算的。
考虑布尔公式和SAT。使用填充并稍微修改公式的编码,我们可以确保 和具有相同的长度。
令为编码
考虑
容易看出是NP完全的。
如果,满足 值分配数量等于满足真值的数量作业。添加它本身加起来满足对真理的任务数量。
有真值分配。每个都可以满足或(并且不能同时满足)。对于每个公式,请考虑字符串, , 和 为。恰好这些的字符串是在。这意味着长度为 in 的字符串数是编码长度为的公式乘以的数量,该数量可以多项式时间计算。
这是一个建议,说明为什么很难举一个这样的例子,尽管我同意卡夫的评论,即如果不存在它会令人惊讶。[不是答案,但评论太久。]
假设某人,说我,想出了这样的语言。我自然可以证明是要在和之间建立一个双射。由于我个人无法确定困难问题的实例,因此,我将要提出的大多数“简单”双射都将采用“是一个长度保持双射,以及当且仅当 “。此外,我很可能想出可以在多项式时间内计算的。但是之后˚F Ñ P = C ^ ö Ñ P ˚F Ñ P c ^ ö Ñ P,因为是从到。
当然,可以通过“简单地”使双目数比之更难计算来解决此异议。如果您的双射需要指数时间-说出来它的倒数可能都是 -hard-那么我认为您很安全。但是,如果仅花费了拟多项式时间,那么请注意,您仍然会得到,从中可以得出一个简单的带有填充参数的归纳。现在,如果您认为前面的限制完全是错误的,那么没有任何准准时间可计算双射可以拯救您。但是,即使您相信这可能是对的,但通过提出这样一个双射,您将证明c ^ ö Ñ P ⊆ Ñ Ť 我中号ë(2 (日志Ñ )Ô (1 ))= :Ñ Q P P ħ ⊆ Ñ Q P P ħ ⊆ Ñ Q P,这似乎超出了当前的知识...
也可以通过简单地不具有这样的双射来解决该异议,但是首先似乎很难看清如何证明具有所需的属性...实际上,即使您的证明不是双射,您需要的情况是甚至不存在这种容易计算的双射。
当然,这也是有人会举一个例子的事情的类型,我们将很容易看到它如何解决这个异议,但是我只是想把它扔在那里,说出只要有足够简单的双射就可以做什么不起作用(除非普遍持有的信念是错误的)。
(相关问题:是否有一个与之相对的甲骨文,没有这样的?)