gpt4 book ai didi

algorithm - 如何最小化这个逻辑(或门 CNF)?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:23:44 24 4
gpt4 key购买 nike

我正在写下电路可满足性问题中或门的真值表(这与减少 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,但它没有输出正确的答案,所以如果有人有时间帮忙,那就太棒了

最佳答案

很容易看出,除了最后两行外,最后一列几乎与 c 列相同。对于最后两行,它交换了列 c 中的值。所以我们可以写成:

if (a ∨ b) then c else ¬c

if c then t else f 可以表示为 CNF (c ∨ t) ∧ (¬c ∨ f) 所以上面的公式看起来像:

(a ∨ b ∨ ¬c) ∧ (¬(a ∨ b) ∨ c)
= (a ∨ b ∨ ¬c) ∧ ((¬a ∧ ¬b) ∨ c)
= (a ∨ b ∨ ¬c) ∧ (¬a ∨ c) ∧ (¬b ∨ c)

最后一个正是你想要的。

关于algorithm - 如何最小化这个逻辑(或门 CNF)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22817174/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com