Calculator
Example data table
This example uses variables A, B, and C with minterms 1, 3, 5, and 7.
| A | B | C | Index | Output | Canonical term |
|---|---|---|---|---|---|
| 0 | 0 | 1 | 1 | 1 | A'B'C |
| 0 | 1 | 1 | 3 | 1 | A'BC |
| 1 | 0 | 1 | 5 | 1 | AB'C |
| 1 | 1 | 1 | 7 | 1 | ABC |
The canonical SOP is A'B'C + A'BC + AB'C + ABC. The minimized SOP is C.
Formula used
Canonical SOP: F(X1, X2, ... Xn) = Σm(selected indexes).
Product term rule: use X when its bit is 1. Use X' when its bit is 0.
Example: with A, B, C, index 5 is 101. Its product term is AB'C.
Minimized SOP: adjacent product terms are grouped. Changing bits become dashes. Fixed bits remain as literals.
Don't care rule: X rows may help grouping. They are not required true outputs.
How to use this calculator
Choose the input method first. Enter variables in the order used by your table.
Use minterm indexes when you already know the true output rows. Use maxterms when you know the false output rows.
For a truth table, enter one row per line. Use formats like 010=1, 010:1, or 0 1 0 1.
For expressions, use ! for NOT, & for AND, | for OR, and ^ for XOR. Parentheses are supported.
Press calculate to view the answer. Use the CSV or PDF button to save the same result.
Article: Convert to SOP Form
What is SOP form?
SOP means sum of products. It writes a Boolean function as OR groups of AND terms. Each product term contains variables, complements, or both. This calculator converts supplied output rows into a canonical SOP and a shorter minimized SOP. It is useful for logic design, switching circuits, digital lessons, and truth table checking.
Why this calculator helps
Manual conversion can be slow when variables increase. A small table can create many minterms. A larger table can hide duplicate patterns. This tool accepts minterms, maxterms, truth table rows, or a direct expression. It also accepts don't care rows for simplification. These rows may be used for grouping, but they are not listed as required true outputs.
How the conversion works
First, the tool builds every binary row from the selected variables. A true output becomes a minterm. A false output is ignored for SOP. When maxterms are entered, the calculator treats them as false rows and converts every remaining row into a true row. A truth table entry is read as a binary input pattern and an output value. An expression is evaluated for every possible input combination.
Canonical and minimized results
The canonical SOP includes one full product term for every true row. For example, row 5 with variables A, B, and C is 101. Its product term is AB'C. A minimized SOP removes unnecessary literals when adjacent rows share the same output. The calculator uses prime implicant grouping. It then chooses essential groups and a compact cover.
Using the result
Use the canonical result when you need a strict row by row form. Use the minimized result when you want fewer gates and simpler wiring. Always review don't care choices before building hardware. Different minimized forms can be equally valid. This calculator selects one compact answer using the available groups.
Good input practices
Keep variable names short. Use comma separated minterm lists like 1,3,7. Use ranges like 4-6 for quick entry. For truth rows, write values such as 000=1 on separate lines. For expressions, use operators such as !, &, |, ^, and parentheses. Check the example table before entering large data sets.
Save CSV or PDF copies for reports, audits, lessons, homework, and reuse.
FAQs
What does SOP mean?
SOP means sum of products. It is a Boolean form where product terms are joined by OR operations.
What is a minterm?
A minterm is one input row where the output is true. It contains every variable once, either normal or complemented.
Can I enter maxterms?
Yes. The calculator treats maxterms as false rows, then converts every remaining allowed row into SOP minterms.
What are don't care rows?
Don't care rows may be true or false during simplification. They help make shorter expressions without changing required outputs.
Which operators work in expressions?
Use ! or NOT for complement, & or AND for product, | or OR for sum, and ^ for XOR.
Why can two minimized answers differ?
Boolean functions can have more than one equally short cover. Different valid group choices may create different final SOP forms.
How many variables are supported?
The calculator supports up to eight variables. This keeps the truth table and grouping process practical for web use.
What is the CSV file for?
The CSV file stores variables, minterms, don't care rows, formulas, and truth rows for later checking or reporting.