Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

This is obviously elementary but can't figure it out. I am taking a course named Logic and Introduction to Analysis next semester and wanted to do some reading beforehand but to figure out how deep the course actually is, I looked through a previous exam paper. Everything else is pretty easy - mainly involving basic propositional logic. But this was the first question and I am stumped.

Consider the following conversation of four people:

$A : $ " $B$ always lies"

$B : $ " $C$ is a truth-teller"

$C : $ " $A$ told the truth"

$D : $ " None of $A, B$ and $C$ is a truth-teller"

$B : $ " Both $A$ and $C$ told lies"

How many are speaking truth in the conversation?

The options are None, One, Two, Three and Four.

How would I go about abstracting this?


Apologies everyone edited the last statement by $B$. Horrible mistake by me. Sorry.

share|cite|improve this question
Should the last statement come from E? – Ross Millikan Jul 31 '14 at 3:42
Afraid not.… Very first question. Says explicitly that it is a conversation between 4 people. @Ross Millikan – Ishfaaq Jul 31 '14 at 3:44
From the mixture of answers, this is obviously not "obviously elementary"! Would anyone like to propose an answer to the OP's actual question, which is not "What is the solution?" but "How would I go about abstracting this?" I take that to involve describing some systematic approach to representing and solving this problem and others like it. – MattClarke Jul 31 '14 at 22:31

11 Answers 11

Normally for problems like this you are expected to assume that each person consistently lies or tells the truth. Then you can just assume one is a specific kind and see where that leads. Unfortunately, the first three statements cannot be assigned a consistent set of truth values. If A lies,B is truthful, and so is C, so A must tell the truth, contradicting our assumption. If A tells the truth, B lies, so C lies, so A lies.

share|cite|improve this answer
B statements are contradictory so B must lie on one occasion and tell the truth on the second. – Rene Schipperus Jul 31 '14 at 3:53
So by reductio ad absurdum, we are not "expected to assume that each person consistently lies or tells the truth". Need to examine the truth of each statement and only at the end of that analysis count how many people spoke truly. – MattClarke Jul 31 '14 at 6:00
@ReneSchipperus: You've left out a step in your reasoning. Two contradictory statements cannot both be true, but they can both be false. (As it happens, it's true in this case that B's statements can't both be false, but only because of the content of C's statement.) – ruakh Jul 31 '14 at 6:40
@ruakh Yeah but one can be true and the other false – Rene Schipperus Jul 31 '14 at 13:38

The question is ambiguous because B speaks twice. If one of those statements is true and one is false, are we or are we not supposed to count B as one of those "who is speaking truth"?

It is, for example, clearly possible that D's statement and B's last statement are the only true ones. In that case, the answer is either One or Two, depending on how you count.

share|cite|improve this answer
Thanks. And I think I got it barring the ambiguous language you just highlighted. I would go with the former. If $B$ lies once it cannot be counted as someone "speaking truth" – Ishfaaq Jul 31 '14 at 4:02
My interpretation would be that if B made at least one true statement, that would be "speaking truth". Nevertheless, the problem is ambiguous. – Sahuagin Jul 31 '14 at 11:34

3 cases:

  • truth-teller (always say the truth)

  • always liar (always say a lie)

  • ambiguous (not always say the truth, not always lie)

A says that B is an "always liar", BUT B change opinion on C: First he says that C is a "truth teller", than says tha A and C told lies. So B is not a "always liar", A told a lie.

C says that A says the truth: B is an always liar. But we already know that B don't say always lies. So C told a lie.

B is "ambiguous".

D says that A,B and C are not "truth teller". But this don't means he said that they are "always liar". So D say teh truth. It could be also on state of "ambiguous", like B, but in this conversation tells only the truth.

So only D says the truth. solution: 1.

But the question is:

How many are speaking truth in the conversation? and not How many truth teller are in the conversation? we have to consider B also.

The answer is 2.

share|cite|improve this answer

I considered: truth-teller = person who always tells the truth.

The first 3 statements suggest, as you specified, that all 3 (A, B, C) lie, so that means D is telling truth.

So we have a clear truth here.

What makes this a bit confusing, is that last last B statement is also true, and the question is "How many are speaking truth in the conversation?", not specifying "nothing but the truth".

We have D, with a clear truth, but we also have B that once spoke truly. So my answer would be 2, because B also spoke truth in the conversation (last statement), even though he occasionally lied, fitting the question requirements.

Edit: Please read WillOs comments, there is another solution, but with same answer (2).

share|cite|improve this answer

Because there are several partially correct answers above, I thought it would be useful to gather all of the correct answers in one place.

Solution 1: The only true statements are D's and B's second statement. In this case the "number of people speaking truth" is either One or Two, depending on whether you count B, who lies once and tells the truth once, as a "person speaking truth".

Solution 2: The only true statements are A's and C's, in which case the answer is Two.

Solution 3: The only true statements are A's, C's, and D's, in which case the answer is Three.

share|cite|improve this answer

I believe that the question has some mistake. If we represent person X telling the truth with boolean proposition x, then we can convert all five statements to

  1. a = ~ b
  2. b = c
  3. c = a
  4. d = ~a /\ ~b /\ ~c
  5. b = ~c /\ ~a

From 1, 2, and 3. we get

b = ~b

which is a contradiction.

share|cite|improve this answer

I think D is the only person telling the truth. So 1.

share|cite|improve this answer
If $D$ is telling the truth, then $B$'s last statement would be true, a contradiction. – angryavian Jul 31 '14 at 3:46
I agree D is telling the truth, but B second statement is also true. – Rene Schipperus Jul 31 '14 at 3:55

Guys please let me know if I got it right.

Tell me if I'm right. If $A$ is truthful then $B$ always lies, then $C$ lies and hence $A$ cannot have told the truth. Hence $A$ lies.

$B$ cannot be truthful since it makes two contradictory statements.

If $C$ is truthful then $A$ said the truth, then since $B$ always lies $C$ cannot be a truth-teller leading to a contradiction.

So the only one telling the truth is $D$ who is not mentioned by the other three.

I'll ping the responders in the comments. Would be grateful if someone could tell me if I'm right. I've followed Ross Millikan's method.

share|cite|improve this answer
This is one possible solution. The other possible solutions are that only A and C speak truly (in which case the answer is Two) or A, C and D speak truly (in which case the answer is Three). – WillO Jul 31 '14 at 5:41
@WillO A & C can't speak truly, because if B ALWAYS lies, it means C lies also. This is also sustained by the fact that B has contradictory statements, so anything involving B and ALWAYS is a lie. So A can't tell truth. – zozo Jul 31 '14 at 6:08
@zozo -- If A and C speak truly, then B always lies. Therefore we know that B's first and second statements are false. From the falsity of B's first statement, we know that C sometimes lies. It does not follow that C is lying on this occasion, so there is no contradiction. – WillO Jul 31 '14 at 14:29
True, you are right. It was 2 early for me when I first read it :). – zozo Jul 31 '14 at 15:25
You are assuming that each person must either be telling the truth or be lying. That is a mistake. The statements are paradoxically self referential, these statements are construed to make you consider the law of the excluded middle. It's a nice philosophical exercise. – DanielV Aug 21 '14 at 2:50

This is what I get. If I start by assuming A told the truth, then:

A: "B always lies" TRUE (assumption)
B: "C is a truth-teller" FALSE (follows from A)
C: "A told the truth" FALSE (follows from B1) CONTRADICTION
D: "None of A,B and C is a truth-teller"
B: "Both A and C told lies"

A must therefore either be FALSE, or the problem is ambiguous. Evaluating:

A: "B always lies" FALSE (by contradiction from above)
B: "C is a truth-teller" TRUE (assumption)
C: "A told the truth" TRUE (follows from B1) CONTRADICTION
D: "None of A,B and C is a truth-teller"
B: "Both A and C told lies"

B1 must therefore either be FALSE, or the problem is ambiguous. Evaluating:

A: "B always lies" FALSE (by first contradiction from above)
B: "C is a truth-teller" FALSE (by second contradiction from above)
C: "A told the truth" FALSE (follows from B1)
D: "None of A,B and C is a truth-teller" TRUE (assumption)
B: "Both A and C told lies" TRUE (follows from A and C) CONTRADICTION

D must therefore either be FALSE, or the problem is ambiguous. Evaluating:

A: "B always lies" FALSE (by first contradiction from above)
B: "C is a truth-teller" FALSE (by second contradiction from above)
C: "A told the truth" FALSE (follows from B1)
D: "None of A, B and C is a truth-teller" FALSE (by 3rd contradiction from above)
B: "Both A and C told lies" TRUE (follows from A and C) CONTRADICTION

The problem is therefore ambiguous.

share|cite|improve this answer

As the question is How many are Speaking truth?? so, if someone just speaks the truth for once he still will be counted as the one speaking truth

My Opinion is that answer is TWO; and those TWO are D and B , yes!both D and B!!!


Note that world always in the statement of A,..... so, we can easily assume that truth-value of B changes with time, and thus due to this reason A used to used world always for B... ---(assumption 1)

About second statement of B, focus on the GRAMMAR of each of these four people, which clearly suggests that these people speak in order they are being mentioned,....

now, in first statement B says that C is a truth teller but in second statement B says that C is a liar, which clarify our first assumption,...and so A is a #confirmed liar,.....

now, A being a liar is lying and B is not always a liar,.....

this puts us into two conditions that:

1) firstly B is speaking truth and then lying,..

or 2) firstly B is lying and then speaking truth,..

but, wait, meanwhile, according to C , A must have told the truth, and so, C is also a liar,

now, last statement of B seems true which satisfy (2) condition , we were put in,....

but, B told truth after D already have spoken and at time when D was about to speak B was a liar so, D is also a truth-teller,.....

at the end of time two people were speaking truth B and D

share|cite|improve this answer

Before you learn any shortcuts for solving this problem, you must learn to solve it the slow way. Write out your constraints and test all of the cases.

$$\begin{align} F(A, B, C, D) & = (A \iff \lnot B) \\ & \land (B \iff C) \\ & \land (C \iff A) \\ & \land (D \iff (\lnot A \land \lnot B \land \lnot C)) \\ & \land (B \iff (\lnot A \land \lnot C)) \end{align}$$ $$\begin{array} {c|c}\text{A B C D} & F(A, B, C, D) \\ \hline \text{F F F F} & \text{F} \\ \hline \text{F F F T} & \text{F} \\ \hline \text{F F T F} & \text{F} \\ \hline \text{F F T T} & \text{F} \\ \hline \text{F T F F} & \text{F} \\ \hline \text{F T F T} & \text{F} \\ \hline \text{F T T F} & \text{F} \\ \hline \text{F T T T} & \text{F} \\ \hline \text{T F F F} & \text{F} \\ \hline \text{T F F T} & \text{F} \\ \hline \text{T F T F} & \text{F} \\ \hline \text{T F T T} & \text{F} \\ \hline \text{T T F F} & \text{F} \\ \hline \text{T T F T} & \text{F} \\ \hline \text{T T T F} & \text{F} \\ \hline \text{T T T T} & \text{F} \\ \hline \end{array}$$

So you can see under no conditions can all constraints be met. The quick way to solve the problem is to look at the first 3 constraints: $$(A \iff \lnot B) \text{ and } (B \iff C) \text{ and } (C \iff A)$$

The last two imply that $A, B, C$ are either all lying or all telling the truth, which contradicts the first constraint. The fourth person is irrelevant.

This brings us to a philosophical problem. Assume "lying" to means that what the opposite of the person says is true. There is no assignment to "lying" or "truth telling" which satisfies the constraints.

So to the question "how many are telling the truth", the answer is none. But the answer to "how many are lying" is also none.

share|cite|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.