0

(S or (G and not S)) or not G. 这如何简化?

((S or G) and ( S or not S )) or not G == >( S or not S )是一个重言式,因此可以取消,给我们

(S or G) or not G ==>G or not G又是一个重言式,所以我们只剩下 S?我们做错了什么吗?

4

3 回答 3

2

布尔逻辑两个变量可以取如下可能的值SG输出归结为 value 1

S G
---
0 0
0 1
1 0
1 1

输出:

 (S || (G && !S)) || !G
  0     0     1       1    =  1
  0     1     1       0    =  1
  1     0     0       1    =  1
  1     1     0       0    =  1

解决布尔逻辑

编辑:上面用来导出给定表达式的方法是真值表和卡诺图。请检查两者之间的对应关系以及如何使用布尔简化来解决从 K-Map 生成的输出函数的链接。

于 2013-09-25T09:22:40.053 回答
1

真值表适用于具有少量非逻辑谓词的命题逻辑 (PL)(即没有量词、关系和身份的逻辑)语言。问题在于 n 个非逻辑术语(所有带有 PL 的命题变量),您需要 2^n 次评估。

假设经典逻辑,另一种方法是分配成范式,然后您通常可以“读出”每个估值都是正确的。

(S or (G and ¬S)) or ¬G

((S or G) and (S or ¬S)) or ¬G(按分布)

(((S or G) or ¬G) and ((S or ¬S) or ¬G))(再次通过分配)

T(通过条款的决议 - 认为“阅读”)

为了解释这个“阅读”意味着什么:这个合取范式中的所有子句都评估为真的,因为每个析取都包含至少一对形式phiand ¬phi

于 2013-09-25T09:28:46.530 回答
0

这不只是S或G吗?

假设它们是重叠的,你想要 S,或者 G(没有与 S 的交集)或不是 G。这导致整个 S(包括与 G 的交集)和 G 没有与 S 的交集,这是 S&G 的总和。

如果我错了,请纠正我。

于 2013-09-25T09:04:47.347 回答