Thank you very much for such a detailed response.
Depends on what a "gate" is and what you're trying to minimize. For instance, the minimum implementation of a half adder is an Xor and an And. Using 2 of these and an Or to combine the carries would get you a 5 gate solution.
I guess my main issue here is I haven't yet fully grasped exactly what I can do with Boolean algebra and the best way to simply an expression. I had no problem reaching the two HalfAdders + one Or solution as I had been following the book linearly (Which has proved to be fantastic thus far). Then, when going for the more direct approach, I arrived to a 5 gate implementation such as you say but I would say it was purely chance and fooling around in whatever direction seemed right, with no certainty.
I can do the algebra individually for both the sum and carry bits, but that yields me a 7 gate implementation since I cannot combine the AB+BC+AC result for the carry function with the sum's, or can I?
I've been going through this book step by step but beyond that I've got zero knowledge of what the appropriate way to express these questions is, so I apologize in advance if what I say isn't too clear. Also in regards to the rest of your post, it is very informative! For now though, the only thing I want to optimize is my comprehension, haha. Thanks again