解决子句空间复杂度的直接和定理?


10

解决方案是证明CNF不满意的方案。分辨率的证明是CNF中初始子句的空子句的逻辑推论。特别是任何初始子句可以推断,并从两个子句AxB¬x该条AB也可被推导出来。驳斥是一系列推论,以空子句结尾。

如果实现了这种反驳,我们可以考虑将一些子句保留在内存中的过程。如果必须再次使用非初始子句并且该子句不再在内存中,则算法必须从头开始或从内存中的子句再次使用它。

Sp(F)要保留在内存中的子句最少,以达到空子句。这称为F子句空间复杂度。我们说S p F = F是可以满足的。FSp(F)=F

我建议问题是这样的:考虑两个的CNF A=i=1mAiB=j=1nBj,并让CNF

AB=i=1mj=1nAiBj

什么是的关系Sp(AB)Sp(A)Sp(B)

明显的上限是Sp(AB)Sp(A)+Sp(B)1。紧吗


好问题!您知道直接和大小的答案吗?我猜最坏的情况是A和B没有共享变量。一个有趣的情况是,在重命名变量之前,A和B相同。顺便说一句,我不明白你如何达到这个上限,感觉可能会更糟。
卡夫

BAiBj1jnAi1imAm.(Size(B)+O(1))+Size(A)
卡夫

F1F2FkFiF

1
Length(AB)Length(B)|A|+Length(A)

平凡的空间上限实际上需要在内存中少一个子句。我做了相应的编辑。
MassimoLauria 2010年

Answers:


7

我想将此发表为评论,但是由于我无法完全确定这样做的方式,因此我想它必须是一个“答案”。

我同意这个问题很好。当然,也可以问相同的问题,即解决反驳的长度(即,反驳中出现的从句的数量,以重复计数)和反驳的宽度(即,反驳中出现的文字的大小或数量) ,这是反驳中最大的子句)。

在所有这些情况下,都有“明显的”上限,但我不清楚是否应该期望匹配下限。因此,我想添加一个问题和一个评论。

问题关系到反驳的长度。似乎有理由相信,Massimo评论中所述的长度界限很严格,但是我们知道吗?

ABiwABBwBmax(wA,wB)

这当然很容易观察,但重点是它可能表明空间问题可能很棘手。之所以如此,是因为我们知道反驳中几乎所有的空间下限都通过宽度下限。(也就是说,空间下界是独立推导的,但事后看来,它们都是由Atserias和Dalmau撰写的精美论文“分辨率宽度的组合表征”得出的推论。)但是,如果存在分辨率子句的直接和定理空间,它不会跟随宽度的下界,而必须直接争论,至少到目前为止,这似乎要困难得多。但是,当然可能有一些简单的论点我没有得到。


2
欢迎,雅各布!
arnab 2011年

1
不幸的是,评论仅限于声誉至少为50的人-这是该软件的奇特之处,与防止垃圾邮件有关。我相信您会很快超过该阈值。
Suresh Venkat

雅各布,您好,很高兴在这里见到您。(ps:我认为您已经超过了阈值。)
Kaveh

嗨,雅各布,我想知道这种说法是否会对权衡产生一些影响。作为一种下界技术,它不是一个非常强大的工具:公式长度成平方,而空间线性增加。无论如何,此属性可能导致公式具有较小的宽度和较大的空间(请注意,如果执行非恒定的重复次数,则宽度也会增大)。
MassimoLauria 2011年
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.