Problem: Show $(P\to Q)\land (Q\to R)\equiv (P\to R)\land[(P\leftrightarrow Q)\lor (R\leftrightarrow Q)]$
Source: As was noted in the original post, this problem is from Daniel J. Velleman's book How to Prove It. The exercise may be found as problem 7 (a) on page 54 (second edition). I got a copy of this book, and I saw that some exercises have solutions in the book. The exercise directly before this one had the solution, "Either make a truth table or reason as follows: [...]". This makes me think the author had a truth table solution in mind for this exercise, as a purely direct proof by using a chain of logical equivalences has proven to be exceedingly difficult. I am very interested in obtaining a solution that uses a chain of logical equivalences similar to my answer to this problem. I have spent several hours working on this problem now, but I have not succeeded at all--I cannot seem to "pull the right-hand side out of the left-hand side", as this seems the most natural approach. For anyone interested, I have presented a truth table without the fluff below.
Truth table solution:
$$ \boxed{ \begin{array}{c|c|c|c} P & Q & R & (P\to Q)\land (Q\to R) & (P\to R)\land[(P\leftrightarrow Q)\lor (R\leftrightarrow Q)] \\ \hline T & T & T & T & T \\ T & T & F & F & F \\ T & F & T & F & F \\ T & F & F & F & F \\ F & T & T & T & T \\ F & T & F & F & F \\ F & F & T & T & T \\ F & F & F & T & T \end{array}} $$
Chain of equivalences proof: It seems that the main issue is "coaxing" the right-hand side out of the left-hand side. For instance, by using distributivity, I can see that somehow $(P\to Q)\land(Q\to R)$ is equivalent to $$ [(P\to R)\land(P\to Q)\land(Q\to P)]\lor[(P\to R)\land(R\to Q)\land(Q\to R)].\tag{1} $$ I have tried numerous times trying to manipulate the left-hand side into the expression given in $(1)$, but I have not succeeded so far--everything is such an enormous mess. Perhaps there is some strategy involved in using equivalences (in terms of ease of manipulation); for example, should one use $$ P\leftrightarrow Q\equiv (P\land Q)\lor(\neg P\land\neg Q) $$ or $$ P\leftrightarrow Q\equiv (P\to Q)\land (Q\to P) $$