Skip to content

Common Boolean logic mistakes and how to catch them

Twenty-five ways a Boolean rule goes wrong, each with the wrong and the right formula side by side, the row where they differ, and the fix.

Most are slips of translation: pushing NOT through AND without flipping it, reading “or” as exclusive, reading “unless” as OR, confusing an implication with its converse, treating “only if” as “if”. Some are slips of notation that the parser catches for you: = and == are not operators, AB is one name and not A AND B, ^ is XOR in most languages, a single & is bitwise. The rest are slips of trust: a vacuous truth that looks like a pass, inconsistent assumptions that make every test pass, a timeout read as success, coverage read as correctness.

Where a pitfall is a pair of formulas, the engine computed both columns and marked the rows where they disagree; the equivalence verdict and the counterexample are the engine's, not a claim. Where a pitfall is a spelling, the page shows exactly what the parser says and the repair it offers.

Each page links to the law that explains the slip and to the lesson that teaches it.

Questions

Which pitfall is the most common?

In rule writing, the De Morgan slip (NOT (A AND B) read as NOT A AND NOT B) and the grouping slip (A OR B AND C read with the wrong grouping). In code, the single ampersand and the caret. The entry-rule example shows a grouping slip that lets a banned member in.

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.