我在电路可满足性问题中写下OR门的真值表(这与减少3可满足性问题有关)。
我有:
a b c c = (a OR b)
1 1 1 1
1 1 0 0
1 0 1 1
1 0 0 0
0 1 1 1
0 1 0 0
0 0 1 0
0 0 0 1
因此,如果我在列c =(a OR b)中取0的行,并取消a,b,c,那么我得到以下四个子句:
!a AND !b AND c
a AND !b AND !c
a AND !b and c
a AND b AND !c
我正在努力减少这些条款。我知道正确的答案是:
c OR !a
c OR !b
c OR !a or !b
如何最大限度地减少这四个条款?网上有节目吗?我使用了wolfram,但它没有输出正确的答案,所以如果有人有第二个帮助那将是惊人的
答案 0 :(得分:0)
很容易看到最后一列与{{1}}列几乎相同,除了最后两行。
对于最后两行,它具有交换列c
的值。所以我们可以写成:
c
if (a ∨ b) then c else ¬c
可以表示为CNF if c then t else f
,因此上面的公式将如下所示:
(c ∨ t) ∧ (¬c ∨ f)
最后一个正是你想要的。