计算复杂度理论基础概述
1. 既不在P中也非NP完全的NP集合
许多NP集合已被证明是NP完全的,如:
- 图的3 - 可着色性
- 子集和问题
- (精确)集合覆盖问题
- 旅行商问题
然而,存在一种错误观点,认为任何NP集合要么是NP完全的,要么属于P。实际上:
定理4 :假设NP ≠ P,则存在既不是NP完全也不在P中的NP集合。
一些自然问题(如因数分解)被推测既不能在多项式时间内解决,也不是NP难的。
证明思路
从NP \ P中的集合L开始,通过迭代修改L得到L′ ⊂ L,使其满足既不在P中也不是NP完全的条件。具体步骤如下:
1. 每次通过从L中删除有限个元素,使L到L′的约简失败。
2. 所有可能的多项式时间决策程序都无法决定L′(L′与L仅在有限个输入上不同)。
3. 交替进行使潜在约简失败(从L的剩余部分删除足够多的字符串)和使潜在决策程序失败(从L的剩余部分包含足够多的字符串)的操作。
最终,L′是L和某个P集合的交集,这意味着L′ ∈ NP \ P。
2. 三个额外主题
2.1 coNP类与NP完全性
通过在复杂度类名称前加上“co”前缀,表示补集类。即coC = { {0, 1}∗ \ L : L ∈ C},特别地,coNP = { {0, 1}∗ \ L : L ∈ NP}。
广泛认为NP在补运算下不封闭(即NP ≠ coNP),这一猜想意味着P ≠ N
超级会员免费看
订阅专栏 解锁全文
1358

被折叠的 条评论
为什么被折叠?



