SOP to POS Converter
Convert a sum of products (SOP) or minterm list to product of sums (POS). Get the canonical POS with ΠM maxterms, the minimal POS, the worked steps and a truth table.
Privacy: worked out in your browser; nothing is sent or stored.
Variables are a letter with optional digits (A, b, x1). NOT: A' !A ¬A ~A · AND: AB A·B A*B A&B A∧B · OR: A+B A|B A∨B · XOR: A^B A⊕B · implies: -> → · if and only if: <-> ↔ · constants 0 and 1. You can also enter a list such as Σm(1, 3, 5) + d(7), ΠM(0, 2) or F(A, B, C) = Σm(1, 3).
How to convert SOP to POS
- Enter the sum of products, for example
AB + A'C, or a minterm list such asF(A, B, C) = Σm(1, 3, 6, 7). - Press Convert to POS. Results also update as you type.
- Copy the minimal POS, or use the canonical POS and the ΠM maxterm list for homework that asks for the standard form.
The method, step by step
The tool follows the textbook method and shows each step for your function:
- Find the minterms: evaluate F on every row of the truth table and list the rows where F = 1 (Σm).
- The other rows are the maxterms: the rows where F = 0 (ΠM). Don't-care rows belong to neither.
- Write the canonical POS: one sum term per maxterm. A variable that is 0 in that row appears as itself, a variable that is 1 appears complemented. Row 5 of A, B, C (101) gives
(A' + B + C'). - Minimise: group adjacent 0s, as on a Karnaugh map, to get the shortest POS. The tool does this exactly with the Quine–McCluskey method and a complete search of the prime implicant chart.
Worked example
F = AB + A'C is 1 on rows 1, 3, 6 and 7 (F = Σm(1, 3, 6, 7)), so it is 0 on rows 0, 2, 4 and 5 (F = ΠM(0, 2, 4, 5)). The canonical POS is (A + B + C)(A + B' + C)(A' + B + C)(A' + B + C'), and grouping the 0s gives the minimal POS (A + C)(A' + B).
Frequently asked questions
Is SOP to POS the same as CNF?
Yes. A product of sums is conjunctive normal form written with electronics notation. For implications, ↔ and step-by-step algebra, use the Boolean to CNF converter.
What if my input is not in SOP form?
It is still converted: the tool works from the truth table, so any expression with AND, OR, NOT, XOR, implication or ↔ is accepted. A note tells you when the input was not a pure sum of products.
How do I include don't-care conditions?
Use a minterm list with a d(…) part, for example Σm(1, 3, 7) + d(5, 6). Don't-care rows can be grouped with either the 1s or the 0s, whichever gives the shorter answer.
Why is there more than one minimal POS?
Some functions have several answers with the same number of terms and literals. All of them are listed (up to 12), so you can match the one in your textbook.
Which notation is accepted?
NOT as A', !A, ¬A or ~A; AND by writing variables together or with · * &; OR with + | ∨. Variables are one letter with optional digits (A, x1); up to 10 variables.
Related tools
- POS to SOP converter
- Karnaugh map solver to see the groups on a map
- Boolean to CNF converter