The Truth Teller, The Liar, and The Unreliable Man
Logic puzzles require you to think. You will have to be logical in your reasoning.
There are three men, Alex, Bob and Chuck. One of the men always tells the truth and one always lies. The third man always tells a lie after telling the truth and always tells the truth after telling a lie. The third man can answer the first question truthfully or can lie.
Can you tell who is the truth teller, the liar and the unreliable man by asking just three questions? Each question is directed to a single person.
Answer
First ask Alex, "Does Bob sometimes tell the truth and sometimes lie?"
A "yes" answer means one of the following must be true:
1) Alex is the truth teller and Bob is unreliable;
2) Alex is the liar and Bob is the truth teller;
3) Alex is unreliable and is lying and Bob is the truth teller; or
4) Alex is unreliable and is lying and Bob is the liar.
A "no" answer means one of these must be true:
1) Alex is the truth teller and Bob is the liar;
2) Alex is the liar and Bob is unreliable;
3) Alex is unreliable and is telling the truth and Bob is the truth teller; or
4) Alex is unreliable and is telling the truth and Bob is the liar.
If the answer is "yes", you ask Alex "Is Bob the liar?"; if the answer is "no", you ask Alex "Is Bob the truth teller?"
Depending on the answers to the first two questions, you know one of the following:
A) If the answer to both questions was "yes" then either
1) Alex is the liar and Bob is the truth teller; or
2) Alex is unreliable and lied on the first question and Bob is the liar.
B) If the answer to both questions is "no" then either
1) Alex is the truth teller and Bob is the liar; or
2) Alex is unreliable and Bob is the truth teller.
C) If the answer to the first question was "yes" and the second question was "no" then either
1) Alex is the truth teller and Bob is unreliable; or
2) Alex is unreliable and lied on the first question and Bob is the truth teller.
In either case, Chuck is the liar.
D) If the answer to the first question was "no" and the second question was "yes" then either
1) Alex is the liar and Bob is unreliable; or
2) Alex is unreliable and Bob is the liar.
In either case, Chuck is the truth teller.
In cases A & B you've identified one person as either the liar or the truth teller and you've identified another person as either not the liar or not the truth teller. In these cases you ask the person who is neither the liar or the truth teller a question you know the answer to. In cases C & D you've identified Chuck as either the liar or truth teller. At this point you simply ask Chuck a question to identify either Alex or Bob.
So the final question and results for each case are:
A) You ask Bob "Is Alex the truth teller?"
"yes" means that
Alex is unreliable, Bob is the liar and Chuck is the truth teller;
"no" means that
Alex is the liar, Bob is the truth teller and Chuck is unreliable.
B) You ask Bob "Is Alex the liar?"
"yes" means that
Alex is the truth teller, Bob is the liar and Chuck is unreliable;
"no" means that
Alex is unreliable, Bob is the truth teller and Chuck is the liar.
C) You ask Chuck "Is Alex the truth teller?"
"yes" means that
Alex is unreliable, Bob is the truth teller and Chuck is the liar;
"no" means that
Alex is the truth teller, Bob is unreliable and Chuck is the liar.
D) You ask Chuck "Is Alex the liar?"
"yes" means that
Alex is the liar, Bob is unreliable and Chuck is the truth teller;
"no" means that
Alex is unreliable, Bob is the liar and Chuck is the truth teller.
Hide
Comments
markmonnin
Jan 16, 2009
 Fun and interesting. 
Nerine
Jan 18, 2009
 That's confusing. I've seen other like this but not that long! Very interesting and cool 
cnmne
Jan 18, 2009
 I came up with a different approach, which seems to work and be easier to reason.
The first two questions to Alex are the same: "Are you the unreliable man?"
There are four possible outcomes: no and no, yes and yes, yes and no, no and yes.
The truth teller would have answered "no" both times ("No, I am not the unreliable man."). The answer to the third question would be true. The third question is: "Is Bob the unreliable man?" If the answer is "yes", then Bob is the unreliable man and Chuck is the liar. If the answer is "no", then Bob is the liar and Chuck is the unreliable man.
The liar would have answered "yes" both times ("Yes, I am the unreliable man.").
The answer to the third question would be false. The third question is: "Is Bob the unreliable man?" If the answer is "no", then Bob is the unreliable man and Chuck is the truth teller. If the answer is "yes", then Bob is the truth teller and Chuck is the unreliable man.
The unreliable man would have given two different answers to the same question. The truthful answer would have been "yes" ("Yes, I am the unreliable man."). If he answered "yes" to the first question, then the answer to the third question would be true. If he answered "no" to the first question, then the answer to the third question would be false. Between Bob and Chuck, one is the truth teller and the other is the liar. The third question is: "Is Bob the truth teller?" Based on the answer and the expected true/false condition of the answer, Bob and Chuck can be determined. 
javaguru
Jan 18, 2009
 Nice solution. I was pretty sure there was a simpler answer than mine.
I was trying to find a logic puzzle that required essentially a binary search. There are eight possible starting states in this puzzle, so 2^3 binary question are the minimum possible and each question must guarantee an answer that divides the remaining possibilities in half.
I was trying for a teaser that required a different next question for each answer to the previous question (i.e., no unconditional questions after the first question.) I guess I'll have to try again. 
BrainBoggler
Dec 11, 2010
 too bad cu'z i had another answer........... 
walter3x
Oct 18, 2011
 How about this question
Does 1 plus 1 equal 2 yes or no
Ask this of alec
Ask this of alec again
Two yesses acec always tells the truth
Two nos then always a liar
If he changes from yes to no then
he's unrelaible but his next answer
must be truthful
He then asks Alec if Bob always tells the truth.
if Alec is liar and says no Bob
tells truth and chuck in unreliable
And so on 
JimShorts
Feb 06, 2013
 Here's an option that would guarantee a resolution in three questions, with the possibility of a resolution in only two questions! I'm going to put the detailed explanations in footnotes, so that you can just speed through my solution and trust that the logic is sound, or you can check out the reasoning behind each step.
Ask Alex "If the next question I ask you after this one is 'is your name Alex' will you say yes?
The truth teller or the liar would both say yes, and the unreliable man would say no. (1)
If the answer to the first question is no, and Alex is therefore the unreliable man, then ask Bob "If someone asked you if you were the truth teller would you say yes?" If he's the truth teller he'll say yes and if he's the liar he'll say no.(2)
So then you'd know which one Alex is, which one Bob is, and by elimination, which one Chuck is. Problem solved in only two questions!
But if Alex answers yes to the first question, then you only know that he's either the truth teller or the liar, so then for your second question you could ask Alex "If someone asked you if you were the truth teller would you say yes?" If he's the truth teller he'll say yes and if he's the liar he'll say no.(2) Now, knowing whether he's truth teller or the liar, for your third question you ask him if Bob is the unreliable man. You'll know if he's lying or not, so from his answer you'll know which one Bob is and therefore which one Chuck is.
Footnotes:
(1) The liar would say no to the "is your name Alex" question, so he would lie about that answer and say yes. The truth teller would answer both questions with yes. If the unreliable man were in truth mode now, then he would lie on the next question  so he would say no to being Alex, and would therefore truthfully answer no to this question. If he were in lying mode now, then he'd tell the truth on the next question  so he'd say yes to being Alex, and he'd lie in response to this question and say no.
(2) Any time you ask a question about a question then the truth teller would tell the truth about his truthful answer, and the liar would lie about his false answer, either way resulting in the real answer. In other words, the truth teller would say yes if someone asked him if he was the truth teller, so he'd tell the truth about it and say yes to your question. The liar would say yes if someone asked if he was the truth teller, so he'd lie about that and say no to your question. 
javaguru
Mar 09, 2015
 @JimShorts: That's a clever answer, very good! It takes an expected average of 2 2/3 questions.
In my comment above I erroneously said there are 2^3 = 8 possible arrangements, so a minimum of log2( = 3 questions are required. However, there are actually 3! = 6 permutations, which means a minimum of log2(6) = 2.58... questions. So 2.67... questions is pretty close to optimal. 
javaguru
Mar 09, 2015
 log2( 8 ) = 3 (above) 
Back to Top
 
