In a K-Map, SOP and POS use the same Boolean function and the same grid, but they simplify from opposite output values. If you are new to the grid layout, you can first review what a Karnaugh Map is.
SOP groups 1s.
POS groups 0s.
Both methods can represent the same logic function. Understanding which cells to group and how each group becomes a term is the key difference between the two methods.
What Does SOP Mean?
SOP stands for Sum of Products.
A product term is an AND combination of variables, such as:
A'B
or:
BC
Several product terms are joined using OR.
For example:
A'B + BC
When simplifying a K-Map in SOP form:
- group the required 1 cells
- use don't-care X cells when useful
- derive one product term from each group
- combine the terms using OR
What Does POS Mean?
POS stands for Product of Sums.
A sum term is an OR combination such as:
A + B'
or:
B + C
Several sum terms are then combined using AND.
For example:
(A + B')(B + C)
When simplifying in POS form:
- group the required 0 cells
- use don't-care X cells when useful
- derive one sum term from each zero-group
- combine the resulting terms using AND
SOP vs POS at a Glance
| Feature | SOP | POS |
|---|---|---|
| Full name | Sum of Products | Product of Sums |
| Cells grouped | 1s | 0s |
| Canonical terms | Minterms | Maxterms |
| Group output | Product terms (AND) | Sum terms (OR) |
| Final operation | OR between terms | AND between terms |
| Typical notation | Σm(...) | ΠM(...) |
Minterms and Maxterms
Minterms correspond to input combinations where:
F = 1
Canonical SOP notation uses:
Σm(...)
Maxterms correspond to combinations where:
F = 0
Canonical POS notation uses:
ΠM(...)
The same truth table can therefore be described either by its 1 indices or its 0 indices.
When learning to convert a truth table to a Karnaugh Map, this distinction determines whether you are building the function from minterms or maxterms.
How SOP Grouping Works
For SOP, identify the required 1s and build valid power-of-two groups.
Use larger useful groups where possible.
Overlap and wrap-around are allowed.
Don't-care X cells are optional.
Once a group is selected, look at the variables that remain constant.
For SOP:
- constant 0 -> complemented
- constant 1 -> uncomplemented
- changing variable -> removed
For example, if a pair keeps:
A = 0 B = 1
while C changes, the resulting term is:
A'B
How POS Grouping Works
POS follows the same geometric Karnaugh Map grouping rules, but the variable polarity is reversed because you are describing where the function equals zero.
For a POS zero-group:
- constant 0 -> uncomplemented
- constant 1 -> complemented
- changing variable -> removed
For example, a zero-pair where:
A = 1 C = 0
while B changes gives:
(A' + C)
Worked Example: Simplify the Same Function as SOP and POS
Consider:
F(A,B,C) = Σm(1,2,3,5,7)
The required 1 minterms are:
m1
m2
m3
m5
m7
The required 0 positions are:
m0
m4
m6
Using rows for A and Gray-code columns for BC:
00, 01, 11, 10
the K-Map values are:
A = 0:
0 1 1 1
A = 1:
0 1 1 0

The same function can be simplified from its 1s for SOP or from its 0s for POS; m4 and m6 form a valid POS pair through edge wrap-around.
SOP Solution
For SOP, group the 1 cells.
The first group is:
m1,m3,m5,m7
This is a 2×2 quad across BC columns:
01, 11
Across the quad:
C = 1
while A and B change.
The term is:
C
The second group is:
m2,m3
This pair is adjacent across the top row.
Across the pair:
A = 0 B = 1
while C changes.
The term is:
A'B
Therefore:
F = C + A'B
POS Solution
For POS, group the required 0 cells:
m0, m4, m6
The first zero-group is:
m0,m4
This is a vertical pair.
Across the group:
B = 0 C = 0
while A changes.
Using POS polarity, both constant zeros remain uncomplemented.
The resulting sum term is:
(B + C)
The second zero-group is:
m4,m6
These cells are adjacent through horizontal edge wrap-around.
m4 lies in BC column:
00
m6 lies in BC column:
10
Those columns are Gray-code neighbors through the K-Map boundary.
Across the group:
A = 1 C = 0
while B changes.
For POS:
- A = 1 -> A'
- C = 0 -> C
Therefore:
(A' + C)
The final POS form is:
F = (B + C)(A' + C)
The m4,m6 pair works through edge wrap-around, not diagonal adjacency.
Which Is Simpler in This Example?
Compare the two forms.
SOP:
F = C + A'B
Terms: 2 Total literals: 3
POS:
F = (B + C)(A' + C)
Sum factors: 2 Total literals: 4
For this particular function, the SOP form is algebraically shorter.
That does not mean SOP is always better.
The simpler form depends on the specific Boolean function and sometimes on the implementation requirements.
When Is SOP Usually a Good Choice?
SOP can be convenient when:
- the map contains relatively few required 1s
- the 1s form large useful groups
- the question specifically asks for SOP
- an AND-OR style implementation is suitable
A simpler SOP expression does not automatically guarantee the fewest physical gates in every hardware technology.
When Is POS Usually a Good Choice?
POS can be convenient when:
- the map contains relatively few required 0s
- the zeros form large useful groups
- the question asks for POS
- an OR-AND structure is suitable for the implementation
Again, the final hardware cost depends on the actual technology.
Is SOP Always Smaller Than POS?
No.
Some Boolean functions have a shorter SOP form.
Others have a shorter POS form.
Some produce similarly sized results in both forms.
If either form is acceptable, comparing the number of terms and literals is a practical way to decide which expression is simpler algebraically.
How Don’t-Care Values Affect SOP and POS
A don't-care X can help either form.
For SOP:
X may be used to extend a 1-group.
For POS:
X may be used to extend a zero-group.
In both cases, the X remains optional.
If it does not create a better group or reduce the expression, leave it unused.
For a deeper explanation, see the guide on don't-care conditions in Karnaugh Maps.
Common SOP and POS Mistakes
- Grouping 0s when the requested result is SOP.
- Grouping 1s when the requested result is POS.
- Applying SOP variable polarity to a POS zero-group.
- Confusing
Σmnotation withΠMnotation. - Forgetting edge wrap-around.
- Creating groups with invalid non-power-of-two sizes.
- Forcing every don't-care X into a group.
- Comparing only the number of groups while ignoring literal count.
How to Choose Between SOP and POS
- Check whether the problem specifically requests SOP or POS.
- Look at the distribution of 1s and 0s.
- Find the largest useful valid groups for each form.
- Simplify both if either form is acceptable.
- Compare the number of terms and literals.
- Consider the intended logic structure where relevant.
- Verify the chosen expression against the original truth table.
Checking SOP and POS Results
Both forms must describe the same required Boolean function.
For the worked example:
C + A'B
and:
(B + C)(A' + C)
are logically equivalent.
Using the Boolean identity:
X + YZ = (X + Y)(X + Z)
we get:
C + A'B = (C + A')(C + B)
which is the same POS expression with the factors reordered.
You can also compare a manual result with the Karnaugh Map Solver.
Frequently Asked Questions
What is the difference between SOP and POS in K-Maps?
SOP groups required 1 cells to create product terms joined by OR. POS groups required 0 cells to create sum terms joined by AND.
Do you group 1s or 0s for SOP?
Group the required 1s. Each valid 1-group produces a product term.
Do you group 1s or 0s for POS?
Group the required 0s. Each valid zero-group produces a sum term.
What is the difference between minterms and maxterms?
Minterms identify input combinations where the function is 1. Maxterms identify combinations where the function is 0.
Can the same Boolean function have both SOP and POS forms?
Yes. The same Boolean function can be represented in SOP or POS form, and both forms must produce the same required outputs.
Why are variables complemented differently in POS?
A POS term describes when a sum must evaluate to zero. A constant input value of 0 is therefore written uncomplemented, while a constant value of 1 is complemented.
