如何降低一个逻辑语句?
-
21-08-2019 - |
题
我敢肯定我能记得做在我的大学水平的课程之一是这样的,并且有某种公式来,但我的心是没有我不止于此。
鉴于语句:(A或B或d)AND(A或C)
我确信,这可以减少到:(A或B或d或c)
但我不记得我怎么会去证明它。
也许这是一系列逻辑表?
解决方案
可以不降低 “(A或B或d)AND(A或C)” 到 “(A或B或d或c)”,因为前者是不满意“C =真,A,B,d =假”,而后者是。所以,你不能证明的减少正确或者:)
在一般情况下,有很多的方法来减少大小布尔公式,它也是要优化什么问题(总规模?条件评估的平均数?)。卡诺图只工作了少量的变量。减少大布尔formulaes成小的是高级主题,在例如是关键自动逻辑电路设计。
其他提示
卡诺地图?逻辑表达降低?
一个卡诺图是你的朋友在这里:
http://en.wikipedia.org/wiki/Karnaugh_map
您会有种必须建立它从上面的公式相反,但它是一个很好的工具来告诉你,如果可以进一步降低。
卡诺图,关键是“画”的所有可能的输入和指示其输出。然后,你就可以开始过滤掉不有所作为,从而输出降低了地图的输入。一旦它被优化可以再从它产生的逻辑。
(A或B或d)AND(A或C)
这意味着当一个是真的,一切都是真的!
=>一个或{(B OR d)和(c)}
=>一个或(B和C)或(d和C)
我想的结果(A或B或d或c)是错误的,但给我一只手时,其出错。
一个或{(B或d)和C}
推理: 如果“是”,那么说法是正确的。 否则,则需要B或d(满足语句的第一部分),用于箱子和c(满足第二半时!一个
使用卡诺地图:
这是A或B或d:
\ab cd\ 00 01 11 10 ---+-----------+ 00 | | X| X| X| 01 | X| X| X| X| 11 | X| X| X| X| 10 | | X| X| X| +-----------+
这是A或C:
\ab cd\ 00 01 11 10 ---+-----------+ 00 | | | X| X| 01 | | | X| X| 11 | X| X| X| X| 10 | X| X| X| X| +-----------+
相交他们,我们得到:
\ab cd\ 00 01 11 10 ---+-----------+ 00 | | | X| X| 01 | | | X| X| 11 | X| X| X| X| 10 | | X| X| X| +-----------+
显然,这是一个OR(东西),其中,所述(一些)是:
00 01 11 | X| X| 10 | | X|
由于(东西)不是矩形,它需要两个表达式,它可以是任一AND后或进行或运算在一起,这取决于如何,我们希望接近它。我们将在这个例子中使用OR,因为它提供了一个更简单的表达。
在这种情况下,我们可以组的两个X彼此相邻的两个更多的填充整个CD线,因此光盘可以表达式中的一个。我们也可以将2个彼此与两个的顶部,他们的权利,形成一个正方形。这个方块代表表达BC,因为这两种a和d的正方形内变化。
因此,最终表达为<强>一个OR((c和d)或(b和d))下,或一个+ CD + BD 即可。好得多,不是吗?
SOP最小形式:
y = a | b&c | c&d;
POS具有相同的成本(栅极号为执行逻辑图):
y = (a|c)&(a|b|d);
是的,你可以证明这一点。你不能将其降低到(A或B或d或c)
看看下面的第三线。你的降价幅度将无法产生正确的答案。
只需通过运行它:
A B C d,点击 0 0 0 0 = 0,点击 0 0 0 1 = 0,点击 0 0 1 0 = 0,点击 。结果 。结果 。结果 1 0 0 0 = 1,点击 1 0 0 1 = 1,点击
到目前为止我有(A OR(???)):(