我正在阅读来自here的NP硬度(第8,9页),并且在笔记中,作者将3-SAT形式的问题简化为可用于解决最大独立集问题的图。
在该示例中,作者将以下3-SAT问题转换为图形。 3-SAT问题是:
(a ∨ b ∨ c) ∧ (b ∨ ~c ∨ ~d) ∧ (~a ∨ c ∨ d) ∧ (a ∨ ~b ∨ ~d)
生成的等效图表是:
作者指出,如果出现以下情况,则两个节点通过边连接:
我无法理解作者是如何制定这些规则的。
答案 0 :(得分:3)
我认为可以解决问题的是reduction概念。假设你熟悉问题X(即3-SAT)[它意味着什么?你知道解决X 的难度。此外,您目前正在分析另一个新问题,如Y(即独立集)......
关于X的知识怎样才能帮助你想出Y?如果你能找到它们之间的关系(即减少),那么你可以使用关于X到Y的知识。像“Y比X更难”或“Y就像X“。那么解决方案想要做的就是找到两个问题之间的关系。
在可计算性理论和计算复杂性理论中,简化是一种将一个问题转化为另一个问题的算法。可以使用从一个问题到另一个问题的减少来表明第二个问题至少与第一个问题一样困难。
你在这里提到的两条规则就是所有这些规则(即关系)。
这显示了这些规则的来源。
PS:此处提到的是不准确作为解决3-SAT到独立集问题的证明。这个解释只是为了让您更深入地了解证明想要做什么程序。证据留给学术笔记。
减少的另一个重要因素是它自己的时间。另一方面,缩短时间(即将X实例转换为Y实例所需的时间)必须小于X问题时间(o.w它主导X解决方案时间)。
此外,还有一些表示法将X < Y
与其他时间顺序一起显示为<
的索引。此外,如果您显示X < Y
和Y < X
。这意味着这些问题具有相同的硬度。
在最后一点注意到引用说明的内容是关于减少 ...减少是算法 ...... 。