最短等效CNF公式


18

令为具有变量和子句的可满足 CNF公式。让是解空间。F1个m S F 1 F 1ñ小号F1个F1个

考虑确定的,给出的问题,另一个CNF式与同一组的变量,与(相同的溶液空间),但以尽可能少的条文,可能的(唯一目的是最大程度地减少子句的数量,因此每个子句可能具有多少个文字不相关)。F 2 F 1 S F 2 = S F 1 F 1F1个F2F1个小号F2=小号F1个F1个

有没有人已经调查过这个问题?文献中对此有什么结果吗?

例如,考虑以下CNF公式(每行是一个子句): F1个

X 2X 3X 4 ¬ X 1X 2X 4 ¬ X 1X 2¬ X 3 ¬ X 1X 3X 5 ¬ X 1X 2¬ X 5X1个X2X3
X2X3X4
¬X1个X2X4
¬x1x2¬x3
¬x1x3x5
¬x1x2¬x5

和以下公式: F2

x1x2x3
x2x3x4
¬x1x3x5
¬x1x2

两者都有相同的解决方案空间,但是有子句,而只有子句。 F16F24

最后,考虑以下公式: F3

x2x3
¬x1x3x5
¬x1x2

解决方案空间仍然相同,但只有子句。3


2
@tsuyoshi我想他想得到一个由最小数目的子句组成且具有相同解决方案空间的cnf公式
Tayfun Pay 2012年

1
@TsuyoshiIto:是的,我想最小化子句的数量。我对每个子句可能具有的文字数量没有限制。
Giorgio Camerani 2012年

1
对于“ small”的任何合理定义,问题都是NP难题。CNF公式只有且不等于带有零子句的公式“ False”时才是可满足的。
杰夫

1
citeseerx.ist.psu.edu/viewdoc/…的第6节提到,确定是否存在等效的CNF公式(最多具有给定数量的文字)的问题是。我不确定我理解为什么您的版本将子句数量最小化的原因很有趣,因为这是公式大小的倍之内,其中是变量的数量。Π2pnn
安德拉斯·萨拉蒙

1
此外,最近的另一项结果是相关的:dx.doi.org/10.1016/j.dam.2011.05.013
安德拉斯·萨拉蒙

Answers:


10

确定是否存在最多具有给定数量的文字的等效CNF公式的问题是。最小化子句数量的版本在公式大小的的范围内,其中是变量的数量。请参阅第6节:Π2pññ

  • 克里斯托弗·乌曼斯(Christopher Umans),《最小等效DNF问题和最短含意》,JCSS 63(4),597–611,2001。doi:10.1006 / jcss.2001.1775预印本

最近的结果表明,计算最短等效CNF公式的大小的特定下限(由您指定的子句数来衡量)是NP完整的。本文还指出,最小化从句数量的问题同样是 -complete,引用上面的Umans论文,尽管这对我来说并不立即明白。Π2p

  • OndřejČepek,PetrKučera和PetrSavický,布尔函数,带有简单的CNF复杂性证书,DAM 160(4-5),365-382,2012年。doi:10.1016 / j.dam.2011.05.013

8

电路minization问题是棘手的(见下面的评论)。另外,我想您可能会对某些SAT求解器应用的技术(至少在某种程度上)感兴趣,该技术称为SAT预处理。例如,众所周知的MiniSAT求解器使用CNF最小化器SatELite预处理实例。Google学术搜索也为“卫星预处理”提供了很多结果。


2
我想Buchfuhrer和Umans在2008年解决了电路的最小化问题是 -complete,在图灵的减少?Π2p
安德拉斯·萨拉蒙

1
Umans已经于1998年表明,找到最小等效CNF式是 -hard(dx.doi.org/10.1006/jcss.2001.1775)。András提到的论文将其概括为更大深度的电路。Σ2P
Jan Johannsen 2012年

6

EE中CNF最小化的主要标准/已知解决方案是Quine-McCluskey算法,该算法有许多实现方式,有些是公共领域的。但是,我的理解是(大多数维基百科文章中未提及)大多数恢复为启发式算法和贪婪算法来寻找解决方案,尤其是大型公式的解决方案,也就是说,它们并非必需。找到最佳解决方案,特别是 对于大型输入实例。

Quine-MCluskey是使用Karnough映射的通用方法,该图可在小型实例中成功。

并注意,在等式中,具有相同(最小)子句大小的最优解可能有多个,这将在subj的很好的参考中指出。与原始公式的大小相比,找到最小值显然减少了列出所有可能涉及记忆/“空间”的指数膨胀的所有素数的数量。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.