Detecting Cheaters
schneier.com
schneier.com
We therefore need to think of a 'real life' rules that's equivalent but does not involve cheating... like
If you became a lawyer, you went to law school.
If you didn't go to law school, you're not a lawyer.
Test:
[Is a lawyer] [Is a doctor] [Went to medical school] [Went to law school]
Actually, looking at it, there seems to be something counter-intuitive about the phrasing anyway. We usually would clarify by saying something like 'all lawyers started in law school, but not all law students managed to become practicing lawyers.' All calls to the subclass were dispatched from the parent, but the parent could have dispatched the call to a different subclass as it is polymorphic.This is not in the article (I'm just familiar with the exercise), but people are also much better at dealing with logic when the questions are about legal drinking age.