Boolean Algebra

This is a discussion on Boolean Algebra within the A Brief History of Cprogramming.com forums, part of the Community Boards category; Hey guys, During an assignment for my Digital Electronics class, I started trying to simplify a few expressions...well...let me write ...

  1. #1
    Epo
    Epo is offline
    Registered User
    Join Date
    Jun 2003
    Posts
    361

    Boolean Algebra

    Hey guys,

    During an assignment for my Digital Electronics class, I started trying to simplify a few expressions...well...let me write it out for you.

    Given inputs: A, B, C, D
    Where, b = (not)B

    Here is the starting equation:
    AB + AbCD + CD

    Now, basic rules state that I can eliminate the AbCD. Which makes sense, because:
    If CD is 0, then AbCD is 0
    If CD is 1, then AbCD doesn't matter

    So the initial equation simplifies to:
    AB + CD

    Then I started thinking...

    Again, back to the original equation:
    AB + AbCD + CD

    If B is 0, AB is eliminated, and AbCD relies solely on ACD
    if B is 1, AB relies solely on A, and AbCD is eliminated

    Therefore, does that not simplify to:
    A + ACD + CD
    Which further simplifies to:
    A + CD (Same thought process as the first outcome)

    However, these two conclusions imply that:
    AB + CD = A + CD

    Which just makes my mind want to implode. Did I do an error in my thought process? Does B ACtually not matter? Are they actually equal?

    This assignment's already been submitted, and I stuck with the first simplification (including the B). Can anyone tell me where I went wrong in that second simplification though?

    I would just like to know if I'm rationalizing everything incorrectly, or else this may come back to bite me on an exam (and the prof isn't what you could really call easily accessible). I posted it here because I figure most college/university programmers have gone through an introductory Digital Electronics course.

    If anybody can shed some light, it would be much appreciated.

    Thanks.
    Pentium 4 - 2.0GHz, 512MB RAM
    NVIDIA GeForce4 MX 440
    WinXP
    Visual Studio .Net 2003
    DX9 October 2004 Update (R.I.P. VC++ 6.0 Compatability)

  2. #2
    Cheesy Poofs! PJYelton's Avatar
    Join Date
    Sep 2002
    Location
    Boulder
    Posts
    1,728
    I don't have time to look at your calculations, but there has to be an error in this reasoning:
    If B is 0, AB is eliminated, and AbCD relies solely on ACD
    if B is 1, AB relies solely on A, and AbCD is eliminated
    since for A=1, B=0, C=0, D=0 the statement AB + AbCD + CD is false yet the statement A + ACD + CD is true.

  3. #3
    Cheesy Poofs! PJYelton's Avatar
    Join Date
    Sep 2002
    Location
    Boulder
    Posts
    1,728
    I think your error in logic comes from the thought process of "if B is false then the equation relies on XXX, if B is true then the equation relies on YYY, therefore B must be irrelevant and can be taken out".

    Take this simple example: AB + bC. If B is true then the equation relies solely on A, if B is false then the equation relies solely on C. But that does NOT mean the equation simplifies to A + C since you need B to tell you which variable the equation needs to rely on.

  4. #4
    Anti-Poster
    Join Date
    Feb 2002
    Posts
    1,399
    It's simple to check. Consider the inputs A=1, B=0, C=0, and D=0. A + CD = 1, while AB + AbCD + CD = 0.
    If I did your homework for you, then you might pass your class without learning how to write a program like this. Then you might graduate and get your degree without learning how to write a program like this. You might become a professional programmer without knowing how to write a program like this. Someday you might work on a project with me without knowing how to write a program like this. Then I would have to do you serious bodily harm. - Jack Klein

  5. #5
    Epo
    Epo is offline
    Registered User
    Join Date
    Jun 2003
    Posts
    361
    Okay, thanks for the help guys. I was having trouble seeing the difference between the two cases.

    But I see now, with the actual rule, I am completely eliminating the term in both cases.

    However, in my mixed up logic, I'm only leaving what is relied upon, even if both aren't getting eliminated (hard to put into words)....Another try, I'm not using the whole term, and then, as mentioned (and proven with the examples), "you need B to tell you which variable the equation needs to rely on."

    I believe I'm seeing my mistakes now. Thanks for the help guys.
    Pentium 4 - 2.0GHz, 512MB RAM
    NVIDIA GeForce4 MX 440
    WinXP
    Visual Studio .Net 2003
    DX9 October 2004 Update (R.I.P. VC++ 6.0 Compatability)

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Boolean Algebra
    By Cyris in forum C++ Programming
    Replies: 12
    Last Post: 12-03-2010, 12:49 AM
  2. boolean algebra....urgent help needed!
    By Saimadhav in forum C++ Programming
    Replies: 1
    Last Post: 07-28-2008, 08:22 AM
  3. Looking for a Boolean Algebra site
    By Majin_Flack38 in forum A Brief History of Cprogramming.com
    Replies: 1
    Last Post: 11-21-2002, 12:03 PM
  4. Replies: 4
    Last Post: 05-03-2002, 10:40 PM
  5. pop quiz on boolean algebra
    By DavidP in forum A Brief History of Cprogramming.com
    Replies: 6
    Last Post: 09-27-2001, 08:11 AM

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21