检查公式有两个量词(


15

SAT求解器提供了一种强大的方法,可以使用一个量词来检查布尔公式的有效性。

例如,要检查的有效性,我们可以使用SAT解算器来确定φ x 是否可满足。要检查的有效性X φ X ,我们可以使用一个SAT解算器,以确定是否¬ φ X 是可满足的。(这里x = x 1x n是布尔变量的n-向量,并且φx.φ(x)φ(x)x.φ(x)¬φ(x)x=(x1,,xn)nφ 是一个布尔公式。)

QBF求解器设计为使用任意数量的量词检查布尔公式的有效性。

如果我们有一个带有两个量词的公式怎么办?它们是否是用于检验有效性的有效算法:比仅对QBF使用通用算法更好的算法?更具体我有如下形式的公式(或X Ÿ ψ X Y ^ ),并要检查它的有效性。有什么好的算法吗? 编辑4/8:我了解到这类公式有时也称为2QBF,所以我正在寻找2QBF的良好算法。x.y.ψ(x,y)x.y.ψ(x,y)

进一步专长:在我的特殊情况下,我有一个形式为我要检查其有效性,其中f g是产生k位输出的函数。是否有任何算法可以比常规QBF算法更有效地检查这种特殊公式的有效性?x.y.f(x)=g(y)f,gk

PS:在复杂性理论上,我并不是在问最坏情况的硬度。我问的是实用的算法(就像现代SAT求解器在许多问题上实际上都是有用的,即使SAT是NP完全的)。


4
不是本质上等价于X Ý ψ X ÿ xy ψ(x,y)xy ψ(x,y)
哈克贝内特

2
我认为OP的非正式含义是,这对于SAT求解器来说都是困难的,并且解决这两个问题都将很有趣
Suresh Venkat 2012年

1
@HuckBennett,我认为两者具有相同的硬度。(证明:是有效的当且仅当¬ X Ÿ ¬ ψ X Y ^ 因此,如果我们有办法形式的公式测试的有效性。X Ÿ ψ X Y ^ ,我们也能公式的正确性测试X ÿx.y.ψ(x,y)¬x.y.¬ψ(x,y)x.y.ψ(x,y) 通过使 ψ 'X ÿ = ¬ ψ X ÿ 和测试的有效性X ÿ ψ 'x y 。)但是无论如何,我对这两种情况的算法都感兴趣。x.y.ψ(x,y)ψ(x,y)=¬ψ(x,y)x.y.ψ(x,y)
DW 2012年

6
@DW,不一定,例如,SAT和TAUT不被认为具有相同的复杂性。
卡夫

4
@chazisop:我觉得OP是要求 -SAT算法/解算器,不是一般的QBF求解。但是,确实存在大量QBF求解器。请参阅qbflib.org上的“求解器”选项卡Π2/Σ2
Huck Bennett

Answers:


22

如果我可以公然宣传自己,我们就去年发表了一篇有关 2QBF的基于抽象的算法的文章。我有一个qdimacs的实现,如果您愿意的话,我可以提供,但是根据我的经验,可以通过专门针对特定问题的算法极大地受益。还有较早的论文《 2QBF算法的比较研究》,也提出了相当容易实现的算法。


太棒了!谢谢,米科拉斯,这只是我所希望的那种事情。
2012年

2
嗨@DW很高兴能为您提供帮助。希望您会发现其中一些有用的东西。QBF与SAT是完全不同的野兽,因此必须小心一点,因为事情很容易炸开:-)。如果您对我们的工作有任何更详细的问题,请随时给我写电子邮件。
Mikolas 2012年

7

我已经阅读了两篇与此相关的论文,其中一篇与2QBF特别相关。论文如下:

增量确定,Markus N.Rabe和Sanjit Seshia,满意度测试的理论和应用(SAT 2016)。

他们已经在名为CADET的工具中实现了自己的算法。基本思想是向公式中逐步添加新约束,直到约束描述了唯一的Skolem函数或直到确认不存在。

第二个是增量QBF解决,Florian Lonsing和Uwe Egly。

在名为DepQBF的工具中实现。它对量词替换的数量没有任何限制。首先假设我们有一个密切相关的qbf公式。它基于增量求解,并且不会抛出在上次求解中学到的子句。它将子句和多维数据集添加到当前公式,并在子句或多维数据集为空(表示未饱和或饱和)时停止。

编辑:只是一个角度,这些方法对于2QBF基准的效果如何。请查看QBFEVal-2018的结果以获取年度QBF竞赛QBFEVAL的结果。在2019年,没有2QBF轨道。

2QBF轨道 QBFEVAL-2018 DepQBF 是赢家CADET第二次在比赛中。

因此,这两种方法实际上在实践中效果很好(至少在QBFEVAL基准上)。


4

xyϕDaD¬ϕ[a/x]bBaϕ[b/y]ϕ


2
ϕϕ

很好,如果您斜视就可以与对抗机器学习进行类比,并且它确实适用于您拥有各种求解器的任何互补晶格
Samuel Schlesinger
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.