% The block diagram code is probably more verbose than necessary \begin{tikzpicture}[auto, node distance=2cm] \node[problem] (pw) {\problem{PW}}; \node[solution, right of=pw] (r-pw) {T/N}; \node[left of=pw] (i-pw) {$G, n$}; \node[problem, below of=pw] (wpw) {\problem{WPW}}; \node[solution, right of=wpw] (r-wpw) {T/N}; \node[left of=wpw] (i-wpw) {$G_w, p$}; \draw[->, alpha, left] (i-pw) -- node[right] {$f$} (i-wpw); \draw[->] (pw) -- (r-pw); \draw[->] (wpw) -- (r-wpw); \draw[->] (i-pw) -- (pw); \draw[->] (i-wpw) -- (wpw); \draw[Implies-Implies, double distance=2pt] (r-pw) -- (r-wpw); \end{tikzpicture}