Skip to content

Lesson 7: Simplification laws (intermediate, 12 min)

Six laws that make formulas shorter, identity, domination, idempotence, complement, absorption and double negation, applied one at a time with the exact checker confirming each step. Intermediate level, about twelve minutes.

Level: intermediate12 min9 claims in this lesson were confirmed by the exact checker at build time

Use identity, domination, idempotence, complement, absorption, and double negation to shorten formulas, and let the exact checker confirm every step.

The first step handles constants: A AND TRUE is A and A OR TRUE is TRUE, identity and domination. The second handles an input against itself: A OR A is A, A OR NOT A is TRUE and A AND NOT A is FALSE. The third is absorption, member OR (member AND invited) is member, because the second part adds nothing. The fourth removes a double negation, NOT NOT banned is banned, and makes the lesson's central point: Tangibool applies these laws one at a time, shows which law it used, and checks every replacement it offers against the original.

Seven of the lesson's claims are equivalences the engine re-proves at build time. The exercises ask you to simplify A AND (A OR B), (A AND B) OR (A AND NOT B) and (member OR TRUE) AND NOT NOT banned to a single input each, and to classify (A AND NOT A) OR (B AND NOT B), which is a contradiction.

What the lesson does not promise is a shortest form. The simplifier stops when no law applies, and the pitfall page on “simplified is not minimal” shows an expression it leaves alone that the Karnaugh map reduces to A OR B. The laws section has a page per law with its proof, and the simplifier tool shows the step sequence for any expression.

Do this lesson interactively in the app

Steps

1. Identity and domination

Constants either disappear or take over:

- identity: A AND TRUE is A, and A OR FALSE is A; - domination: A AND FALSE is always FALSE, and A OR TRUE is always TRUE.

with_true := A AND TRUE · outputjust_a := A · outputdominated := A OR TRUE · output
Identity and domination
#Awith_truejust_adominated
0FALSEFALSEFALSETRUE
1TRUETRUETRUETRUE

Compare with_true with just_a, then ask whether dominated is always true.

equivalent with_true / just_a · holdstautology dominated · holds

2. Idempotence and complement

Repeating an input changes nothing: A OR A is A (idempotence).

An input together with its negation decides the result on its own (complement): A OR NOT A is always TRUE, and A AND NOT A is always FALSE.

twice := A OR A · outputjust_a := A · outputexcluded := A OR NOT A · outputclash := A AND NOT A · output
Idempotence and complement
#Atwicejust_aexcludedclash
0FALSEFALSEFALSETRUEFALSE
1TRUETRUETRUETRUEFALSE

Ask “Can this be true?” for clash.

equivalent twice / just_a · holdstautology excluded · holdscontradiction clash · holds

3. Absorption

In member OR (member AND invited), the second part adds nothing: whenever it is TRUE, member is already TRUE. The whole formula is just member.

Likewise, member AND (member OR invited) is member. Absorption often removes conditions that were written twice in different words.

absorbed := member OR (member AND invited) · outputsimple := member · output

member: the person is a member; invited: the person has an invitation;

Absorption
#memberinvitedabsorbedsimple
0FALSEFALSEFALSEFALSE
1FALSETRUEFALSEFALSE
2TRUEFALSETRUETRUE
3TRUETRUETRUETRUE

Compare absorbed with simple on the row member=FALSE, invited=TRUE.

equivalent absorbed / simple · holds

4. Double negation, and checking every step

NOT NOT banned is just banned (double negation).

Tangibool applies these laws one at a time, shows which law was used, and checks every offered replacement exactly against the original before you accept it. A shorter result is “simplified”, not necessarily the smallest possible formula.

twice_negated := NOT NOT banned · outputplain := banned · output

banned: the person is banned;

Double negation, and checking every step
#bannedtwice_negatedplain
0FALSEFALSEFALSE
1TRUETRUETRUE

Compare twice_negated with plain.

equivalent twice_negated / plain · holds

Exercises

  1. Simplify A AND (A OR B) to a formula without any operator. (write-equivalent)
  2. Simplify (A AND B) OR (A AND NOT B) to a single input. (write-equivalent)
  3. Simplify (member OR TRUE) AND NOT NOT banned to a single input. (write-equivalent)
  4. Classify (A AND NOT A) OR (B AND NOT B). (classify)

Do this lesson interactively in the app

Questions

Does the simplifier use De Morgan?

Not as a reduction: De Morgan rewrites without shortening, so the simplifier leaves NOT (A AND B) as it is. The normal-form converter applies it when a target form needs it.

How do I know a simplification step is right?

Every step the engine shows is an equivalence it checked exactly; the fourth step of the lesson describes this. For your own steps, the equivalence checker gives the same verdict.

Related

Laws

Tools

Practice

See also

Lessons

Generated from the Tangibool engine, semantics tangibool-semantics/1, engine 1.0.0, build . Every table, map, simplification and verdict on these pages was computed by the Tangibool engine when the site was built, and every claim was re-checked by the same exact checker the app uses. Limits are stated where they apply. © 2026 Foreranger LTD.