Prof. Dr. Thorsten Jungmann (last updated 2026-10-19)

Relates to DET-03 Representation and minimization of logic functions

Task

A logic function can be written in several equivalent forms: as a truth table, as a minterm list or a maxterm list, and as a canonical disjunctive normal form (DNF) or a canonical conjunctive normal form (CNF). In this exercise, you switch between these forms. In each function, the first variable has the highest weight, as in the truth tables of the lesson.

a) The function has the following truth table. Give its minterm list, its maxterm list, its canonical DNF and its canonical CNF.

Row
0001
1010
2101
3111

b) Set up the truth table of , and give its canonical DNF.

c) Give the minterm list and the canonical CNF of , and draw the two-level circuit of the canonical CNF.

d) The function has the following truth table. Give its minterm list and its maxterm list. Which of the two canonical normal forms needs fewer gates? Write that normal form down.

Row
000001
100010
200101
300111
401001
501011
601100
701111
810001
910011
1010101
1110110
1211000
1311011
1411101
1511111

◀️ Back to the task


Solution

Given

Given explicitly:

  • a) the truth table of
  • b)
  • c)
  • d) the truth table of

Known:

  • Minterms and the canonical DNF (DET-03, DET-03)
  • Maxterms and the canonical CNF (DET-03, DET-03)
  • Minterm and maxterm lists (DET-03)
  • Truth table in the order of a binary count (DET-02)
  • Effort of a circuit: the gates and their inputs (DET-03)

Required

a) the minterm list, the maxterm list, the canonical DNF and the canonical CNF of
b) the truth table and the canonical DNF of
c) the minterm list, the canonical CNF and the two-level circuit of
d) the minterm list and the maxterm list of , and the canonical normal form with fewer gates

a) Two inputs

The minterm list names the rows with , the maxterm list the rows with (DET-03, 2.5). Here, is 0 only in row 1:

For the canonical DNF, you need the minterm of each row with . A variable that is 0 in the row appears negated, a variable that is 1 appears as it is (DET-03, 2.1):

RowMinterm
0001
2101
3111

In row 0, both inputs are 0, so both appear negated; in row 2, only is 0; in row 3, neither. The OR of the three minterms is the canonical DNF (DET-03, 2.2):

For the canonical CNF, you need the maxterm of each row with . Here, the rule is reversed: a variable that is 1 in the row appears negated, a variable that is 0 appears as it is (DET-03, 2.3). The only zero lies in row 1, with and . Its maxterm alone is the canonical CNF (DET-03, 2.4):

With a single zero, the canonical CNF needs only an OR gate with two inputs and an inverter, while the canonical DNF needs three AND gates and an OR gate.

Check in row 1, the only zero of . For and :

In every other row, or , and the sum is 1 ✓

b) From the minterm list to the canonical DNF

The minterm list names the rows in which : rows 1, 4 and 6. In the five other rows, . With three inputs, the truth table has rows, in the order of a binary count (DET-02, 2.2). The last column shows the minterm of each row with (DET-03, 2.1):

RowMinterm
00000
10011
20100
30110
41001
51010
61101
71110

The OR of the three minterms is the canonical DNF (DET-03, 2.2):

Check in row 4, where must be 1. For , and , only the second minterm is 1:

The 1 comes from the minterm of row 4 alone, as the minterm list demands ✓

c) From the maxterm list to the canonical CNF

Every row number appears in exactly one of the two lists (DET-03, 2.5). The maxterm list names rows 0 and 5, so in the six other rows:

In a maxterm, a variable that is 1 in the row appears negated, a variable that is 0 appears as it is (DET-03, 2.3):

RowMaxterm
00000
51010

The AND of the two maxterms is the canonical CNF (DET-03, 2.4):

The circuit has two levels: an OR gate with three inputs for each maxterm and an AND gate with two inputs that combines them (DET-03, 2.4). Two inverters provide and ; only appears as it is (figure).

Two-level circuit of the canonical conjunctive normal form in which inverters provide A bar and C bar, an OR gate forms the maxterm M0 from A, B and C, a second OR gate forms the maxterm M5 from A bar, B and C bar, and an AND gate with the output F3 combines both maxterms
Two-level circuit of the canonical conjunctive normal form in which inverters provide A bar and C bar, an OR gate forms the maxterm M0 from A, B and C, a second OR gate forms the maxterm M5 from A bar, B and C bar, and an AND gate with the output F3 combines both maxterms

Check in the two rows of the maxterm list, where must be 0. For , and , the first maxterm is 0:

For , and , the second maxterm is 0:

In every other row, both maxterms are 1, and so is their AND ✓

d) Four inputs: the shorter canonical normal form

has 12 ones and four zeros, the zeros in rows 1, 6, 11 and 12 (DET-03, 2.5):

The canonical DNF needs a minterm for each of the 12 ones, the canonical CNF a maxterm for each of the four zeros. Counted as in the lesson (DET-03, 3.1), with four inverters in both cases:

Canonical normal formAND gatesOR gatesGate inputs
DNF12160
CNF1420

The canonical CNF needs five gates instead of 13: with few zeros, the CNF is the shorter canonical form, with few ones the DNF (DET-03, 2.5). Its maxterms, one for each zero (DET-03, 2.3):

RowMaxterm
100010
601100
1110110
1211000

Check in row 6, where must be 0. For , , and , the second maxterm is 0:

and so is the whole AND. Together, the two lists contain row numbers, each of them once ✓