#import "@local/handout:0.1.0": *

= The Absentminded Logician

#problem("Only Three Words?")
We are given three brothers named John, James, and William.
John and James always lie, but William always
tells the truth. The three are indistinguishable in appearance.
You meet one of the three brothers on the street one day and
wish to find out whether he is John (because John owes you
money). You are allowed to ask him one question answerable
by yes or no, but the question may not contain more than
three words! What question would you ask?

#solution[
  The only three-word question I can think of that works
  is: "Are you James?" If you are addressing John, he will answer
  yes, since John lies, whereas both James and William would
  answer no-James because he lies, and William because he tells
  the truth. So a yes answer means that he is John and a no
  answer means that he is not John.
]

#v(1fr)

#problem("A Variant")
Suppose we change the above conditions by making John and
James both truthful and William a liar. Again you meet one
of the three and wish to find out if he is John. Is there now a
three-word yes/no question that can accomplish this?

#solution[
  The very same question---"Are you James?"---works,
  only a yes answer now indicates that he isn't John and a no
  answer indicates that he is John.
]


#v(1fr)
#pagebreak()

#problem("A More Subtle Puzzle")
We now have only two brothers (identical twins). One of them
is named Arthur and the other has a different name. One of
the two always lies and the other always tells the truth, but
we are not told whether Arthur is the liar or the truth-teller.
One day you meet the two brothers together, and you wish
to find out which one is Arthur. Note that you are not inter-
ested in finding out which one lies and which one tells the
truth, but only in finding out which one is Arthur. You are
allowed to ask just one of them a question answerable by yes
or no, and again the question may not contain more than three
words. What question would you ask?

#solution[
  A common wrong guess is: "Are you Arthur?" This question is quite useless here; the answer you get could be the truth
  or a lie, and you would still have no idea which one is really
  Arthur.

  A question that works is: "Is Arthur truthful?" Arthur will
  surely answer yes to this question, because if Arthur is truthful,
  he will truthfully claim that Arthur is truthful, and if Arthur
  is not truthful, then he will falsely claim that Arthur is truthful.
  So regardless of whether Arthur is truthful or whether he lies,
  he will certainly claim that Arthur is truthful.

  On the other hand, Arthur's brother---call him Henry---will claim that Arthur is not truthful, because if Henry is truthful, then Arthur is really not truthful and Henry will truthfully claim that Arthur is not. And if Henry lies, then Arthur really is truthful,inwhich case Henry will falsely claim that Arthur is not truthful. So whether Henry is truthful or not, he will surely claim that Arthur is not truthful.

  In summary, Arthur will claim that
  Arthur is truthful and Arthur's brother will claim that Arthur
  is not truthful. So if you ask one of the brothers whether Arthur is truthful, and if you get yes for an answer, you will
  know that you are speaking to Arthur; if you get no for an
  answer, you will know that you are speaking to Arthur's
  brother.

  Incidentally, there is another three-word question that
  works: "Does Arthur lie?" A yes answer to that question
  would indicate that you are not speaking to Arthur, and a no
  answer would indicate that you are speaking to Arthur. I leave
  the verification of this to the reader.
]

#v(1fr)
#pagebreak()

#problem()
Suppose that instead of wanting to find out which one is Arthur, you want to find out whether Arthur is the liar or the
truth-teller. Again there is a three-word question that will do
this. What three-word question will work? There is a pretty
symmetry between the solutions of this and the last problem!

#solution[
  To find out whether Arthur is truthful, all you need to
  ask is: "Are you Arthur?" Suppose you get the answer yes. If
  it is a truthful answer, then the one addressed really is Arthur,
  in which case Arthur is the truthful brother.

  If the answer is
  a lie, then the answerer is not really Arthur, in which case
  Arthur must be the other one, again the truthful brother. So
  regardless of whether the answer is truthful or a lie, a yes
  answer indicates that Arthur-whichever one he is-must be
  truthful. What if you get no for an answer?

  Well, if it is a
  truthful answer, then the speaker is not Arthur, but since he
  is truthful, Arthur must be the brother who lies. On the other
  hand, if the no answer was a lie, then the speaker really is
  Arthur, in which case Arthur just told a lie. So a no answer,
  whether it is the truth or a lie, indicates that Arthur is the liar.
]

#v(1fr)

#problem()
This time, all you are interested in finding out is which of the
two brothers you meet is the liar and which is the truth-teller.
You don't care which one is Arthur, or whether Arthur is the
liar or the truth-teller. What three-word question will accomplish this?

#solution[
  Just ask him: "Do you exist?
]

#v(1fr)

#problem()
Next you are told to ask one of the brothers just one three-
word question. If he answers yes, you will get a prize; if he
answers no, then you get no prize. What question would you
ask?

#solution[
  Just ask: "Are you truthful?" Both constant truth-tellers
  and constant liars will answer yes to that question.
]

#v(1fr)
#pagebreak()


#problem("The Absentminded Logician")
A certain logician, though absolutely brilliant in theoretical
matters, was extremely unobservant and highly absent-
minded. He met two beautiful identical-twin sisters named
Teresa and Lenore. The two were indistinguishable ill ap-
pearance, but Teresa always told the truth and Lenore always
lied. The logician fell in love with one of them and married
her, but unfortunately he forgot to find out her first name!
The other sister didn't get married till a couple of years later.

Quite shortly after the wedding, the logician had to go
away for a logic conference. He returned a few days later. He
then met one of the two sisters at a cocktail party and, of
course, had no idea whether or not it was his wife. "I can find
out in only one question," he thought proudly. "I'll simply
use the Nelson Goodman principle and ask her if she is the
type who could claim that she is my wife!" Then he had an
even better idea: "I don't really have to be that elaborate and
ask such a convoluted question. Why, I can find out if she is
my wife by asking a much simpler question-in fact, one having only three words!"

The logician was right! What three-word question answerable
by yes or no should he ask to find out whether the lady he was addressing was his wife?

#solution[
  We recall that his wife's sister was not married at the time.
  A three-word question that works is: "Is Teresa married?"
  Suppose the lady answers yes. She is either Teresa or Lenore.
  Suppose she is Teresa. Then the answer is truthful, hence Teresa is really married,
  and the lady addressed is married and his
  wife. If she is Lenore, the answer is a lie; Teresa is not really
  married, so Lenore-who is the lady addressed-is married,
  hence again the lady addressed is his wife. So a yes answer
  indicates that he is speaking to his wife, regardless of whether
  the answer is the truth or a lie. I leave it to the reader to verify
  that a no answer indicates that he is speaking to his wife's sister.
]

#v(1fr)


#problem()
A few days later the logician again met one of the two sisters
at another cocktail party. He again didn't know whether it was
his wife or his sister-in-law. "It's high time I find out once
and for all my wife's first name," he thought. "I can ask this
lady just one three-word yes/no question, and then I'll know!"
What three-word question could he ask?

#solution[
  The question to ask now is: "Are you married?" Suppose
  she answers yes. Again, she is either Teresa or Lenore. Suppose
  she is Teresa. Then the answer is truthful, hence the lady ad-
  dressed is married, and since she is Teresa, he is married to
  Teresa. But ,what if the lady addressed is Lenore? Then the
  answer is a lie, hence the lady addressed is not really married,
  and he is married to the other lady, again Teresa. So in either
  case, a yes answer indicates that his wife's name is Teresa.
  I again leave it to the reader to verify that a no answer
  indicates that his wife's name is Lenore.
]

#v(1fr)
#pagebreak()

#problem()
Suppose that in the last problem, the logician had wanted to
know both the identity of the lady he met and the first name
of his wife. He is again restricted to asking only one question
answerable by yes or no, but this time there is no restriction
on the number of words in the question.
Can you find a question that will work?

#solution[
  No, because no such question exists!
  You see, in each of the preceding problems, we were trying
  to find out which of two possibilities holds, but in this problem,
  we are trying to find out which ofJour possibilities holds.

  (The four possibilities are that the lady addressed is Teresa,
  his wife; that she is Lenore, his wife; that she is Teresa, his
  sister-in-law; and that she is Lenore, his sister-in-law.)

  However,
  a yes/no question can elicit only two possible responses,
  and with only two possible responses it is impossible to
  determine which of four possibilities holds.
]

#v(1fr)
