I'm learning about logic circuits and I've come across full adder. In the book they derived its two carry out expressions -

Cout = x&&y || x&&z || y&&z and Cout = x&&y || (x'&&y || x&&y')&&z

I've tried to get the second equation from the first one but couldn't. Any one knows how to do that?


1 Answer 1


From your question it is unclear what $x$, $y$ and $z$ are. However, the two formulas are equivalent. Let me use products to denote a logical "AND" and additions to denote a logical "OR" so that your first formula becomes $xy + xz + yz$

If you gather $z$ in the last two terms you get: $xy + (x+y)z$.

Notice how the second term $(x+y)z$ is true iff $z$ is true, and at least one of $x$ and $y$ is true. However, if both $x$ and $y$ are true, the whole formula is true regardless of the truth value of the second term (since the first term is $xy$). You can then replace $(x+y)$ with $(x \oplus x)$ (where "$\oplus$" denotes the exclusive OR) to obtain: $xy + (x \oplus y)z$ or, equivalently, $xy + (x'y + xy')z$.

  • $\begingroup$ But how this characteristics that, if both x and y is 1 the total output is 1 independent of z and if one of x or y is 1 and z is 1 then total output is 1, can change the or operation to xor? $\endgroup$ Commented Mar 14, 2020 at 22:48
  • $\begingroup$ Start from $xy + (x+y)z$. We now change the second OR to a XOR. If at most one of $x$ and $y$ is true then $x \oplus y$ is equivalent to $x+y$. If both $x$ and $y$ are true, then the first term is true, and hence both the original and the modified formulas are true. $\endgroup$
    – Steven
    Commented Mar 14, 2020 at 22:56
  • $\begingroup$ Hmmmm understood. Previously I was thinking they used some kind of simplification to derive the second formula. Thanks. $\endgroup$ Commented Mar 14, 2020 at 23:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.