Thought it would be answered by now, but phon and Sanjay are expressing the language issue that I mentioned (the same wording doesn’t always mean the same thing if from different people).
Answer:[tab]D: “If B is telling the truth, then A or C too.”
If that is a lie, then if B is telling the truth, both A and C are lies.
We know that D is true because if it was false (and B was true) D, A, and C would all have to be lying and that makes 3 liars, not 2.
B: “If C is telling the truth, then either A or D is a liar.”
If that is a lie, then if C is telling the truth, both A or D are true.
Since D is true, then IF B is true, either A or C is also true. But then IF B is false and C is true, A and D are true. We already know that D is true, so we need to look at A for the possibility of being true.
A: “B lies if and only if D is telling the truth.”
If that is a lie, all you know is that B is independent of D.
If A is true, since we already know that D is true, B is required to be a lie. So A can be true IF B is a lie.
Again, if B is a lie and C is true, both A and D must also be true. We know D is true and are confirming if A is. But that is only a concern IF C is true. If C is a lie, B requires nothing further.
C: “E lies, and also A or B lie.”
If that is a lie, either E is true or both A or B are true.
C demands that E is a lie as well as either A or B. We need to confirm if that is possibly true which would mean that A, C, and D would be required to be true.
E: “Among the persons A, C and D is at least one liar.”
If that is a lie, A, C, and D are true.
We know that D is true and are suspecting that A and C are also true. If E is a lie then we have two liars and our suspicions are right about A, C, and D.
Thus by B lying and E lying, we can have two liars only.[/tab]