No, that one is False. This is modus tollens.
If every waiter wore a uniform and Mark didn’t, Mark can’t be a waiter.
If A were true, the arrow would force B to be true. But you know B is false. So A cannot be true, and the claim “Mark was a waiter” is False.
Run the Uncertain test
- A true, B false: breaks A -> B. Not possible.
- A false, B false: A -> B still holds. Possible.
Only one version works, so the answer is forced: False.
Yes, Uncertain. Your reason is exactly right: A is one way to get B, but not necessarily the only way. Concluding A would be affirming the consequent, which is invalid.
“Is B true?” is still True. You were told it, so it is still known.
Yes, Uncertain. A is not the only possible cause of B, so A being false tells you nothing about B. Concluding !B would be denying the antecedent.
Rule: A -> B, plus one fact
Each row is one fact you are told. The columns show what that makes each claim.
| Told | A | !A | B | !B | Rule |
|---|
| A | True | False | True | False | modus ponens |
|---|
| !B | False | True | False | True | modus tollens |
|---|
| B | Uncertain | Uncertain | True | False | affirming the consequent (invalid to conclude A) |
|---|
| !A | False | True | Uncertain | Uncertain | denying the antecedent (invalid to conclude !B) |
|---|
Bold cells are the ones the test actually asks about: the letter you were not told.
Short form
- A -> B, A ⊢ B
- A -> B, !B ⊢ !A
- A -> B, B ⊢ nothing about A
- A -> B, !A ⊢ nothing about B
Related statements
| Statement | Same meaning as A -> B? |
|---|
| !B -> !A (contrapositive) | Yes, always |
| B -> A (converse) | No |
| !A -> !B (inverse) | No |
The converse and inverse are the two traps in rows 3 and 4 of the first table. If you catch yourself using either, the answer is Uncertain.
Memory hook
Forward from a true front (A gives B). Backward from a false back (!B gives !A). Anything else: the other letter is Uncertain. The letter you were told is always still known.