Boolean Expression Converter

One entry per line - minterm mode: A,B,C; 0,2,5,7 (or 3; 0,2,5,7); expression mode: a SOP such as A'B + AC' or a POS such as (A+B')(A'+C)
Input mode:   Variable order:   Separator:
Calculation Result Download CSV
No. Form Boolean expression Minterms Σm Maxterms ΠM

Introduction to the tool and how to use it

Boolean expression bidirectional converter: one input box handles all three swaps — SOP ⇄ POS, minterms ⇄ maxterms, truth-table row numbers ⇄ canonical form — one entry per line, batch-ready.

Three input modes:
1. Minterm list → expression: write the variable list followed by row numbers, such as A,B,C; 0,2,5,7; or just the variable count, such as 3; 0,2,5,7, and variables are auto-named A, B, C. Prefix row numbers with Σm(...) for minterms or ΠM(...) for maxterms (complement taken automatically).
2. SOP expression → POS: for example A'B + AC'.
3. POS expression → SOP: for example (A+B')(A'+C).

Supported notation: NOT as trailing ' or leading ! / ¬ / NOT; OR as + / | / OR; AND as . / * / AND, or plain juxtaposition (AB means A AND B); variables are a single letter or letter plus digit (A, B1, x2), up to 8 variables; constants 0 / 1 are also supported.

Every line yields four equivalent forms: canonical SOP (Σm), canonical POS (ΠM), minterm numbers, and maxterm numbers. Variable order can be first appearance or alphabetical; it fixes bit order and therefore directly affects row numbers (renumbering syncs automatically on reorder).

Internally it uses neither eval nor new Function: it implements its own lexer → recursive descent → syntax tree → recursive evaluation, enumerates the truth table over at most 2^8 = 256 rows, generates canonical SOP/POS from row numbers by an algebraic method independent of Karnaugh maps, and finally asserts that minterms and maxterms cover every row exactly once without overlap and match row-by-row evaluation of the original expression; any mismatch is reported clearly, keeping results canonical and verifiable. This tool only converts expression forms; it does not output a full truth table (use the truth-table generator for that).

How to use

  1. One entry per line; fill in the minterm list or logic expression according to the chosen input mode.
  2. Choose the input mode and variable order.
  3. Click the Run button.
  4. Copy or export the four equivalent converted forms.

Message board

All messages →
0/200

  • No one has spoken up yet — want to go first?