Boolean Algebra
ACSL Boolean Algebra problems ask you to simplify expressions or find which input combinations make an expression true. This is one of the more rule-heavy topics, but the rules are consistent and learnable. Once you internalize them, simplification becomes almost mechanical.
The operators
| Operator | Notation in ACSL | Meaning |
|---|---|---|
| NOT | overbar () or or | Inverts: becomes , becomes |
| AND | or | True only when both are true |
| OR | True when either (or both) is true | |
| XOR | True when inputs differ | |
| XNOR | True when inputs are the same |
Precedence (highest first): NOT, then AND, then XOR/XNOR, then OR
This means is read as , not .
The laws you need to memorize
These are your tools for simplification. Every step in an ACSL simplification problem uses one of these.
Identity and annihilator
Complement
Idempotent
Double negation
Commutative
Associative
Distributive
Absorption
This is the one students forget most often. It says: if is true, the whole expression is true regardless of ; if is false, is false anyway.
DeMorgan’s Laws
These are the most important laws for ACSL problems. They let you push a NOT inside parentheses by flipping the operator and negating each term.
Simplification strategy
Here’s a systematic approach that works for most ACSL problems:
- Apply DeMorgan’s to eliminate NOTs over groups
- Expand using the distributive law
- Look for complements () and identities ()
- Apply absorption ()
- Simplify remaining terms
Worked example
Simplify:
Step 1 - Absorption inside the NOT:
Step 2 - Distribute:
Step 3 - Absorption:
Answer: (or NOT A)
Worked example 2
Find all ordered pairs that make this true:
Simplify first:
This is ! It’s true when and are different.
True pairs: and
Worked example 3 (3 variables)
Find all ordered triples that make this true:
This has 3 variables, so simplification is worth trying before resorting to an 8-row truth table. But this expression doesn’t simplify further - no terms share enough to combine. So use a truth table:
| A | B | C | Result | |||
|---|---|---|---|---|---|---|
True for: (0,0,1), (0,1,0), (0,1,1), (1,1,0), (1,1,1) - 5 out of 8 combinations.
Tip: When you can’t simplify, don’t waste time trying. Go straight to the truth table.
Truth table approach
When simplification feels hard, or to verify your answer, use a truth table.
For 2 variables (A, B), there are 4 rows. For 3 variables, 8 rows.
Example: Verify that
| A | B | ||||||
|---|---|---|---|---|---|---|---|
Columns match. Verified.
When to use truth tables vs algebraic simplification:
- 2 variables (4 rows): truth table is fast, use it to verify
- 3 variables (8 rows): either approach works
- 4+ variables: algebraic is usually faster
Common mistakes
- Wrong precedence. is NOT . AND binds tighter than OR.
- DeMorgan’s applied incorrectly. , not . You must flip the operator.
- Forgetting absorption. If you end up with , simplify to . Don’t stop too early.
- Distributing NOT incorrectly. . You need DeMorgan’s, not just distributing the NOT.
Contest strategy
- If the problem says “simplify,” use algebraic laws
- If it says “find all values,” simplify first, then evaluate (or use truth table directly)
- With 2 variables, truth tables take ~30 seconds and are foolproof
- Always write which law you’re applying at each step - this prevents errors
- Typical time: 60-90 seconds