Any good boolean expression simplifiers out there?

326,857

Solution 1

You can try Wolfram Alpha as in this example based on your input:

http://www.wolframalpha.com/input/?i=((A%20OR%20B)%20AND%20(NOT%20B%20AND%20C)%20OR%20C)&t=crmtb01&f=rc

Solution 2

Try Logic Friday 1 It includes tools from the Univerity of California (Espresso and misII) and makes them usable with a GUI. You can enter boolean equations and truth tables as desired. It also features a graphical gate diagram input and output.

The minimization can be carried out two-level or multi-level. The two-level form yields a minimized sum of products. The multi-level form creates a circuit composed out of logical gates. The types of gates can be restricted by the user.

Your expression simplifies to C.

Solution 3

I found that The Boolean Expression Reducer is much easier to use than Logic Friday. Plus it doesn't require installation and is multi-platform (Java).

Also in Logic Friday the expression A | B just returns 3 entries in truth table; I expected 4.

Share:
326,857
mojarras
Author by

mojarras

Updated on March 26, 2020

Comments

  • mojarras
    mojarras about 4 years

    I was refactoring old code and encountered several IF conditions that were way too complex and long and I'm certain they can be simplified. My guess is that those conditions grew so much because of later modifications.

    Anyway, I was wondering if any of you know of a good online simplifier I can use. I'm not interested in any specific language, just a simplifier that would take in for example:

    ((A OR B) AND (!B AND C) OR C)

    And give me a simplified version of the expression, if any.

    I've looked at the other similar questions but none point me to a good simplifier.

    Thanks.

  • Axel Kemper
    Axel Kemper over 10 years
    Activate option "Truthtable/Show all Rows" in Logic Friday 1. Otherwise, you only get all rows with output value 1.
  • Axel Kemper
    Axel Kemper over 8 years
    Internally, bexpred is using simple algorithms to merge minterms. It might be helpful for small expressions but is definitely not state-of-the-art.
  • Albert Hendriks
    Albert Hendriks about 8 years
    The website doesn't seem that good for simplifying boolean formula's when they get a bit more complex. Try this one: (((NOT C) AND (NOT A)) OR ((NOT B) AND (NOT C) AND (NOT D) AND (NOT A)) OR ((NOT B) AND (NOT C) AND D AND A) OR (B AND C AND (NOT D) AND (NOT A)) OR (B AND C AND D AND A))
  • 500 - Internal Server Error
    500 - Internal Server Error about 8 years
    Indeed. Strange. It even barfs at the simplified version NOT C AND NOT A OR NOT B AND NOT C AND NOT D AND NOT A OR NOT B AND NOT C AND D AND A OR B AND C AND NOT D AND NOT A OR B AND C AND D AND A.
  • Evil
    Evil over 7 years
    For "A*B*(!A*B+!A*!B)" input this jar returns SOP False but POS True. Not exactly reliable script...
  • Lenar Hoyt
    Lenar Hoyt about 7 years
    For a quick online tool this is really helpful: tma.main.jp/logic/index_en.html
  • Belgi
    Belgi almost 7 years
    Note that if you want the truth table, which is not always outputed for some expressions, then start the query with the words "truth table" followed by the expression
  • HJLebbink
    HJLebbink over 6 years
    link is broken, who has a working link?
  • Anderson Green
    Anderson Green over 3 years
    There are some computer algebra systems that can simplify boolean expressions using the Quine-McCluskey algorithm, such as Sympy.
  • Axel Kemper
    Axel Kemper over 3 years
    Quine-McCluskey is the grandfather of two-level minimization.Espresso came 30 years later in 1986. It would be interesting to learn about recent developments in this field.