Proving $[(p\leftrightarrow q)\land(q\leftrightarrow r)]\to(p\leftrightarrow r)$ is a tautology without a truth table I came across the following problem in a book:

Show that if $p, q$, and $r$ are compound propositions such that $p$ and $q$ are logically equivalent and $q$ and $r$ are logically equivalent, then $p$ and $r$ are logically equivalent. 

The book's solution certainly makes sense:

To say that $p$ and $q$ are logically equivalent is to say that the truth tables for $p$ and $q$ are identical; similarly, to say that $q$ and $r$ are logically equivalent is to say that the truth tables for $q$ and $r$ are identical. Clearly if the truth tables for $p$ and $q$ are identical, and the truth tables for $q$ and $r$ are identical, then the truth tables for $p$ and $r$ are identical. Therefore $p$ and $r$ are logically equivalent. 

I decided to "symbolically translate" the problem in the book:

Show that $[(p\leftrightarrow q)\land(q\leftrightarrow r)]\to(p\leftrightarrow r)$ is a tautology.

I wrote out a truth table and everything checks out, as expected (and as mentioned in the book's solution). My question is whether or not there is a more "algebraic" solution using equivalences (not resorting to CNF or DNF).
Any ideas?

I assume you accept that $a\Rightarrow b$ is equivalent to $\tilde{} a \vee b$
and that $c \Leftrightarrow d$ is equivalent to $(c\Rightarrow d) \wedge (d\Rightarrow c)$.
Then $x \Leftrightarrow y$ is equivalent to $(\tilde{} x \vee y) \wedge (\tilde{} y\vee x )$.
AND is distributive over OR, so $x \Leftrightarrow y$ is equivalent to $((\tilde{} x \vee y) \wedge \tilde{} y) \vee ((\tilde{} x \vee y) \wedge x )$.
Thus $x \Leftrightarrow y$ is equivalent to $(((\tilde{} x \wedge \tilde{} y)\vee(y \wedge \tilde{}y)) \vee ((\tilde{} x \wedge x)\vee(y \wedge x)))$.
This gives us $(((\tilde{} x \wedge \tilde{} y)\vee 0) \vee (0\vee(y \wedge x)))$.
This gives us $((\tilde{} x \wedge \tilde{} y) \vee (y \wedge x))$.
Try using this as a starting pointy for your $p$, $q$ and $r$ statement.
