Full adder carry-out from two half adders — circuit to expression

edge casereads back as A·B + C·(A ⊕ B)

Answer

B · C + A · C + A · B (output column 00010111)

Why this example is worth doing

The carry-out of a full adder as it is actually built — from two half adders and an OR — rather than as its minimal SOP. The two forms are equal, and the tool proves it by comparing truth tables, but they are different hardware: the built version shares the XOR that the sum output already needs, so it is cheaper in context even though it has more literals on paper. The page uses this to separate expression cost from circuit cost.

Try your own input in the Logic circuit → expression. Wire up gates and read the Boolean expression and truth table back out.

How the answer is reached

Gate list

Gate list — columns Node, Gate, Inputs
NodeGateInputs
x1xorA, B
a1andA, B
a2andx1, C
o1ora1, a2

Quine–McCluskey

Prime implicants — Quine–McCluskey
#Term
1B · C
2A · C
3A · B
Minimum cover — Quine–McCluskey
#Cover
1B · C + A · C + A · B
Warning:

3 term(s), 6 literal(s); 3 essential prime implicant(s).

Truth table

Truth table — columns #, A, B, C, F
#ABCF
00000
10010
20100
30111
41000
51011
61101
71111

Compare with

Open the Logic circuit → expression

This input is entered in the tool itself — it is too rich for a link to carry.

Note:

Notation this page assumes

  • Symbols: · is AND, + is OR, ⊕ is XOR, a prime or an overline is NOT. The field also takes ∧ ∨ ¬ ~ ! & | and the words.
  • Operator precedence, tightest first: NOT, then AND (including juxtaposition), then XOR/XNOR, then NAND/NOR, then OR, then IMPLIES, then IFF.
  • Gate symbols follow whichever standard the header toggle is set to: ANSI/IEEE Std 91-1984 distinctive shapes, or IEC 60617-12 rectangles.

Sources

  • Shannon, “A Symbolic Analysis of Relay and Switching Circuits” (1938)
  • ANSI/IEEE Std 91-1984, Graphic Symbols for Logic Functions