# Full adder carry expression

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

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$$.

• 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? – Abhirup Bakshi Mar 14 '20 at 22:48
• 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. – Steven Mar 14 '20 at 22:56
• Hmmmm understood. Previously I was thinking they used some kind of simplification to derive the second formula. Thanks. – Abhirup Bakshi Mar 14 '20 at 23:01