SOP and POS Canonical Forms Explained: Minterms, Maxterms and Worked Conversions

Learn how canonical SOP and POS encode the same Boolean function. Follow one three-variable truth table through minterms, maxterms, conversions and exam-style checks.

KnowledgeGate Team

Exam prep & CS education

Updated 21 Sep 20265 min read66 views

You may recognise an SOP or POS expression and still reverse the minterm and maxterm literal rules, select the wrong truth-table rows, or call a simplified expression canonical. These errors look small but change the function. Canonical forms follow from a three-variable function's truth-table rows, and missing variables can be introduced to expand a non-canonical expression. Consistent row indices and literal rules let you move among a truth table, binary row numbers, expanded literals, Sigma m notation and Pi M notation without guessing.

Related reading: Ex-OR and Ex-NOR truth tables and K-map minimisation.

SOP and POS canonical forms: what canonical means

A literal is a variable or its complement, such as A or A'. A product term ANDs literals, while a sum term ORs them. An SOP expression ORs product terms. A POS expression ANDs sum terms.

Canonical adds one strict condition. For a function of A, B, C, every canonical term must contain A, B and C exactly once, complemented or uncomplemented.

Form

Example

Canonical?

Reason

SOP

A + B'C

No

Its terms omit variables

POS

(A + B)(B' + C)

No

Its factors omit variables

Canonical SOP

Sum of minterms

Yes

Every minterm contains every variable

Canonical POS

Product of maxterms

Yes

Every maxterm contains every variable

Minterm m_i equals 1 on exactly row i. Maxterm M_i equals 0 on exactly row i. We write a sum of selected minterms as F = Sigma m(...) and a product of selected maxterms as F = Pi M(...). The CS Fundamentals for Exams & Placements route places these ideas within the wider digital-logic sequence.

Minterm and maxterm indices: the literal rule

Fix the variable order as A, B, C, with A as the most significant bit. The row index is i = 4A + 2B + C.

For a minterm, bit 0 gives a complemented literal and bit 1 gives an uncomplemented literal. For a maxterm, reverse the polarity so that the sum becomes 0 on that row.

i

ABC

minterm m_i

maxterm M_i

0

000

A'B'C'

(A + B + C)

1

001

A'B'C

(A + B + C')

2

010

A'BC'

(A + B' + C)

3

011

A'BC

(A + B' + C')

4

100

AB'C'

(A' + B + C)

5

101

AB'C

(A' + B + C')

6

110

ABC'

(A' + B' + C)

7

111

ABC

(A' + B' + C')

Check row 010. Here m_2 = A'BC' = 1·1·1 = 1. The corresponding maxterm is M_2 = (A + B' + C) = 0 + 0 + 0 = 0.

Row ABC=010 shown as minterm m2 = A'BC' equal to 1 and maxterm M2 = (A+B'+C) equal to 0.

Canonical SOP worked example from a truth table

Define F(A,B,C) by this complete truth table:

i

A

B

C

F

0

0

0

0

0

1

0

0

1

1

2

0

1

0

1

3

0

1

1

0

4

1

0

0

0

5

1

0

1

1

6

1

1

0

0

7

1

1

1

1

Select the output-1 rows and translate each binary row:

001 -> A'B'C, 010 -> A'BC', 101 -> AB'C, 111 -> ABC.

Therefore:

F = Sigma m(1,2,5,7) = A'B'C + A'BC' + AB'C + ABC.

At ABC=101, the term AB'C = 1·1·1 = 1, so the OR is 1. At rejected row ABC=100, the four minterms evaluate to 0, 0, 0, 0, so F=0.

Truth table for F(A,B,C) with output rows 1, 2, 5 and 7 mapped to minterms as F = Sigma m(1,2,5,7).

Canonical POS worked example for the same function

Now select the output-0 rows 0, 3, 4, 6. Their maxterms are M_0=(A+B+C), M_3=(A+B'+C'), M_4=(A'+B+C) and M_6=(A'+B'+C).

Thus:

F = Pi M(0,3,4,6) = (A+B+C)(A+B'+C')(A'+B+C)(A'+B'+C).

At ABC=011, factor M_3 becomes 0+0+0=0, so the product is 0. At ABC=101, the four factors evaluate respectively to 1, 1, 1, 1, so the product is 1. Canonical SOP and canonical POS describe the same truth table using complementary row sets.

Converting SOP to POS and expanding an expression

For n variables, the row universe is U={0,...,2^n-1}. If F=Sigma m(S), then F=Pi M(U-S). Here {1,2,5,7} and {0,3,4,6} are complements inside {0,1,2,3,4,5,6,7}.

For a reverse drill, let G(A,B,C)=Pi M(1,2,4,7). Its one-set is the remaining indices, so:

G=Sigma m(0,3,5,6)=A'B'C' + A'BC + AB'C + ABC'.

This converts two representations of the same G. Finding G' would be a different operation.

Now expand H(A,B,C)=A+BC, an SOP that is not canonical:

A=A(B+B')(C+C')=ABC+ABC'+AB'C+AB'C'

BC=(A+A')BC=ABC+A'BC

After removing duplicate ABC and ordering terms by index:

H=Sigma m(3,4,5,6,7).

Its zero rows are 0,1,2, so:

H=Pi M(0,1,2)=(A+B+C)(A+B+C')(A+B'+C).

SOP and POS canonical-form traps

Wrong move

Why it fails

Repair

Write m_2=AB'C for row 010

Minterm polarity is reversed

Use m_2=A'BC'; M_2=(A+B'+C)

Use 1,2,5,7 for both forms of F

SOP selects ones, POS selects zeros

Use Sigma m(1,2,5,7) and Pi M(0,3,4,6)

Change variable order midway

The same bits produce different indices

Declare A,B,C once and keep it

Drop variables but call the result canonical

Canonical terms contain every variable

Expand missing variables with X+X'=1

Call every minimal form canonical

Minimisation combines rows and drops literals

Check variable coverage term by term

For example, B'C + AC + A'BC' is a valid smaller SOP for the main function, but it is not canonical because its first two terms omit a variable. A K-map can merge adjacent rows to minimise the expression, while a canonical form preserves one full term per selected row. Boolean Expressions in Digital Electronics: Laws, Canonical Forms and Worked Simplification carries one function through Boolean laws, truth tables, simplification and gate mapping. Canonical SOP/POS conversion instead stays with row indices, literal polarity and complementary one/zero sets.

How questions test SOP and POS canonical forms

Question tasks include building terms from an index, converting index sets, counting maxterms and recognising the form:

  • Build terms from an index. With order A,B,C, index 5 is 101. Therefore m_5=AB'C, while the reversed maxterm polarity gives M_5=(A'+B+C').

  • Convert the index set. Sigma m(0,3,6,7) uses four of the eight rows. The complementary zero-set is {1,2,4,5}, so the result is Pi M(1,2,4,5).

  • Count maxterms. Four variables give 2^4=16 rows. If six are listed minterms, then 16-6=10 rows output 0, so the canonical POS has ten maxterms.

  • Recognise the form. An expression can be SOP without being canonical. A K-map result can also be correct and minimal without being canonical.

Use Boolean Algebra and K-Map MCQs: 12 Solved (GATE) as a timed self-check. Canonical SOP also maps naturally to an AND-OR structure, while canonical POS maps to an OR-AND structure. Continue that hardware connection with Combinational Circuits: MUX, Decoders, Adders.

SOP and POS canonical forms: the short version and next step

  • Output 1 rows give minterms and canonical SOP.

  • Output 0 rows give maxterms and canonical POS.

  • Binary index order controls the literal pattern.

  • The two index lists for one function are complementary.

Now reproduce the output vector 0,1,1,0,0,1,0,1 without looking. Derive Sigma m(1,2,5,7) and Pi M(0,3,4,6), then check every expanded literal. For a sequenced Digital Logic path, continue with GATE Guidance by Sanchit Sir.