Answers:
正如NP减少的情况一样,寻找类似的问题是有意义的。特别是,很难对全局条件进行编码,例如已经“看到了一些节点”到PCP中(带有许多瓦片),这禁忌图形问题,打包问题将要求我们在PCP中编码一元数(创建指数级大实例),并且以此类推。因此,只有局部限制的字符串问题可以预期效果最好。
考虑最短公共超序列问题的决策版本:
给定两个串带和和,决定是否有一个字符串与使得和是亚。
这个想法是让PCP从左到右建立和超序列,在我们分别位于和位置的图块重叠中进行编码。它将使用每个符号一个平铺在,所以对应于BPCP的约束:如果我们能够解决这个PCP与反之亦然瓷砖,就可以读出长度相等的普通超层和副。
瓷砖的建造有点乏味,但很清楚。请注意,我们不会创建不转发或b的图块;这样永远不能成为最短的公共超序列的一部分,因此它们是多余的。可以轻松添加它们,而不会破坏还原的性质。
重叠中的数字以二进制编码,但使用以外的符号并将其填充到公共长度log max (m ,n )。因此,我们确保将图块用作图形建议(俄罗斯方块),也就是说,字符和索引编码的重叠部分不会混合在一起(PCP本身不会阻止这种情况)。我们需要:
这些是磁贴示意图。请注意,必须为所有对实例化中间瓦片。如上所述,仅当和中的各个字符匹配时,才创建不带的图块。
[ 来源 ]
在是象征性的“不关心”; 在实际磁贴中,必须将另一个符号复制到此处。注意,瓦片的数目是在Θ (米Ñ ),并且每个片具有长度4 日志最大值(米,Ñ )+ 1,所以构造BPCP实例(在字母表Σ ∪ { 0 ,1 }加上分隔符号)具有多项式大小。此外,显然可以在多项式时间内构造每个图块。因此,提出的归约确实是一个有效的多项式变换,它将NP完全最短公共超序列问题简化为BPCP。
我认为您可以通过使用类似于证明其不确定性的方法来证明BPCP是NP完全的。通过展示如何在多项式时间内将NP中的任何问题减少到BPCP,我们将直接证明BPCP是NP完全的。
用于证明PCP不可确定(在此处勾勒出)的标准简化方法是通过构建一系列磁贴来实现的,只要存在对字符串w进行给定TM 的可接受计算,就可以找到PCP解决方案。在这种减少中创建的图块数量是多项式的-具体来说,所构造的多米诺骨牌数量是磁带字母大小和TM中状态数量的函数。唯一骨牌,其大小可以是大是初始骨牌,其具有瓦特写在上面。如果我们将这种减少从对确定性TM进行研究到对非确定性TM进行归纳推广,那么这将引入至多一定数量的多米诺骨牌,因为转移的数量是有限的。因此,我们可以构造用于正常多项式时间的不确定性减少的标准多米诺骨牌。
鉴于此,我们可以减少任何NP问题BPCP如下-给出任何NP问题,它有一些多项式时间NTM ,在时间用完p (ñ )。然后,我们可以按如下所示在多项式时间内将此问题简化为BPCP -从M构造标准的多米诺集,然后询问是否存在使用f (p (n ))多米诺的解决方案,其中f是表示多项式的多项式函数。解决方案必须存在的多米诺骨牌数量(这可能类似于n 2,并且肯定不是指数)。然后,使用您使用表明,PCP是不可判定相同的证明,可以证明有这种BPCP情况下的解决方案,在大多数应用中砖当且仅当原来的NTM 中号接受米内的p (ñ )步骤。因此,我们从NP中的每个问题到BPCP都有多项式时间的减少,因此BPCP是NP难的。
(我们还应该证明BPCP位于NP中,但这很容易;只需不确定地猜测要排列的多米诺骨牌,然后确定性地对其进行验证)。
希望这可以帮助!