Postulate is the best way to take and share notes for classes, research, and other learning.
I didn't consider that CS is not just about dev when I signed up for courses. But nevertheless, now that I'm here with boolean algebra stuffs that don't have much connection to the software world, I might as well learn it.
Although we use booleans in if statements alongside keywords like and
and or
in code, CS teaches boolean algebra not just represented by logic gates but also by funicky symbols like this (below) and boolean values represented by variable names like A and B.
Boolean algebra is about manipulating boolean expressions and equations, because, you know, regular algebra is about manipulating expressions and equations with X's and Y's. Here's my 2-step framework for how to simplify any multi-term boolean algebra expression:
Fully expand. (The distributive property works the same way in booleans as in other places)
Use the absorption law (A + AB = A) to get rid of as many terms as you can like a wildfire spree - cross out as much as you can. In this step, you can sometimes cross out > 50% of the terms!
Done! 🎉
Easy 2 step process. There is no way that any sane curriculum would implement a 3 hour class explaining this, right?
Note on the absorption law: why is A + AB = A? If you don't know, think about the logic yourself. "A and A or B" - what is that equal to? ...
On the worksheet I got from the class, this was question #4 - the 2nd last question, so one of the supposedly hardest ones. Which means if I know how to do this I'm good.
Now les solve this problem
Explanation of each step:
That's basically all you need to know for boolean algebra. There are also some other identities like A + A = A
and the commutative/associative laws of and/or that are basically common sense that I don't feel a need to write about.
Toodles.
Builders gonna build baby