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