使用布尔代数简化逻辑函数

时间:2014-09-07 19:44:01

标签: boolean-logic boolean-expression

我参加数学逻辑课程,我很难使用布尔代数并用它简化逻辑功能。我已经尝试过多次回答这个问题而且我一直在回答#34; 1",我认为这是完全错误的。

问题是

  

考虑逻辑函数 f(a,b,c)= abc + ab' c + a' bc + a' b' c + ab' c&#39 ; 。尽可能使用布尔代数简化f。

我尝试使用我的教科书和讲座中给出的布尔标识以几种方式解决它,但是我继续使用类似于 1 c + 1 >,考虑到问题中的下一个问题,我觉得这是不正确的答案。

这是我的最后一次尝试:

 f(a,b,c) = abc + ab'c + a'bc + a'b'c + ab'c'
          = a(bc + b'c + b'c') + a'(bc + b'c)        # Distributive, took out the a and the a' separately.
          = (a + a')((bc + b'c + b'c') + (bc + b'c)) # Distributive(?), took out the a and a' together (This is probably where I screwed up).
          = (1)((c + b'c') + c)                      # a + a' = 1; bc + b'c = c (Combining).
          = c + b'c' + c                             # cleaned up a little.
          = c + b'c'                                 # c + c = c.
          = c + (b' + c')                            # b'c' = b' + c' (DeMorgan's Theorem).
          = 1 + b'                                   # c + c' = 1.
          = 1                                        # 1 + b' = 1

这对我来说是完全错误的,下一个问题要求我为它制作逻辑电路,我认为这是不可能的。

任何人都可以帮助/告诉我我做错了什么吗?我真的很感激。 :(

(P.S。我使用了代码格式化,如果这对某些人来说很烦,我道歉。)

1 个答案:

答案 0 :(得分:1)

通过此表:

A 1 1 1 1 0 0 0 0
B 1 1 0 0 1 1 0 0
C 1 0 1 0 1 0 1 0
Y 1 0 1 1 1 0 1 0

Y = AB'+ C

我知道了:D

f(a,b,c) = abc + ab'c + a'bc + a'b'c + ab'c'
         = a(bc + b'c + b'c') + a'(bc + b'c)
         = a(c(b + b') + b'c') + a'(c(b + b'))
         = a(c * 1 + b'c') + a'(c * 1)
         = a(c + b'c') + a'c
         = a(c'(b'c')')' + a'c
         = a(c'(b + c))' + a'c
         = a(c'b +cc')' + a'c
         = a(c'b)' + a'c
         = a(c+b') + a'c
         = ac + ab' + a'c
         = c(a + a') + ab'
         = ab' + c