# Solve this logical puzzle only using logical equivalencies. Is there a shorter way to do it?

Here's a puzzle:

Four friends have been identified as suspects for an authorized access into a computer system. They have made statements to the investigating authorities. Alice said "Carlos did it." John said "I did not do it." Carlos said "Diana did it." Diana said "Carlos lied when he said I did it."

(a) If the authorities also know that exactly one of the four suspects is telling the truth, who did it? Explain your reasoning. (b) If the authorities also know that exactly one of them is lying, who did it? Explain your reasoning.

We can list the propositions as follows:

$p$: "Carlos did it"

$q$: "I did not do it"

$r$: "Diana did it"

$s$: "Carlos lied when he said Diana did it"

It becomes reasonable to assume, then, that $p \rightarrow \neg r$, $p \rightarrow q$, and $r \oplus s$.

Now, I'm interested in whether there is a more elegant way to come to the conclusion of parts a) and b), using only logical equivalencies, rather than adding a conjunction between all the assumptions above and the four possible arrangements:

a) $(p \vee \neg q \vee \neg r \vee \neg s) \vee (\neg p \vee q \vee \neg r \vee \neg s) \vee...$

b) Inverse of a).

and simplifying until you get down to the four letters themselves (in which their truth values will become apparent).

If we follow this method the solution is long and error-prone, but ultimately works. Any other ideas on how to accomplish this only using logical equivalencies?

Thanks.

-