\documentclass{standalone} \usepackage[dvipsnames,svgnames,table]{xcolor} \usepackage{tikz} \usetikzlibrary{automata, positioning, arrows, shapes, shapes.gates.logic, shapes.gates.logic.US} \begin{document} \begin{tikzpicture}[node distance=1.8cm] \tikzstyle{SEQ}=[diamond] \tikzstyle{NULL}=[trapezium, trapezium left angle=120, trapezium right angle=120, minimum size=8mm] \tikzstyle{AND}=[and gate US, rotate=90 ] \tikzstyle{OR}=[or gate US, rotate=90 ] \tikzset{every node/.style={ultra thick, draw=red, minimum size=6mm}} \node[draw=red, SEQ, xshift=0.000000cm ] (a_1) {\ensuremath{\mathtt{a_{1}}}}; \node[draw=red, AND, logic gate inputs=nn, xshift=-0.000000cm , yshift=4mm, below = 1.4cm of a_1.south] (a') {\rotatebox {-90}{\ensuremath{\mathtt{a'}}}}; \draw[solid] (a_1) edge (a'.east); \node[draw=red, SEQ, xshift=-1.250000cm , below of=a'] (b_1) {\ensuremath{\mathtt{b_{1}}}}; \draw[solid] (a'.input 1) edge (b_1); \node[draw=red, SEQ, xshift=1.250000cm , below of=a'] (c_1) {\ensuremath{\mathtt{c_{1}}}}; \draw[solid] (a'.input 2) edge (c_1); \node[draw=red, AND, logic gate inputs=nn, xshift=-0.000000cm , yshift=4mm, below = 1.4cm of c_1.south] (c') {\rotatebox {-90}{\ensuremath{\mathtt{c'}}}}; \draw[solid] (c_1) edge (c'.east); \node[draw=red, SEQ, xshift=-1.250000cm , below of=c'] (f_1) {\ensuremath{\mathtt{f_{1}}}}; \draw[solid] (c'.input 1) edge (f_1); \node[draw=red, SEQ, xshift=1.250000cm , below of=c'] (g_1) {\ensuremath{\mathtt{g_{1}}}}; \draw[solid] (c'.input 2) edge (g_1); \node[draw=red, state, xshift=-0.000000cm , below of=g_1] (g') {\ensuremath{\mathtt{g'}}}; \draw[solid] (g_1) edge (g'); \node[draw=red, state, xshift=-0.000000cm , below of=f_1] (f') {\ensuremath{\mathtt{f'}}}; \draw[solid] (f_1) edge (f'); \node[draw=red, AND, logic gate inputs=nn, xshift=-0.000000cm , yshift=4mm, below = 1.4cm of b_1.south] (b') {\rotatebox {-90}{\ensuremath{\mathtt{b'}}}}; \draw[solid] (b_1) edge (b'.east); \node[draw=red, SEQ, xshift=-1.250000cm , below of=b'] (d_1) {\ensuremath{\mathtt{d_{1}}}}; \draw[solid] (b'.input 1) edge (d_1); \node[draw=red, SEQ, xshift=1.250000cm , below of=b'] (e_3) {\ensuremath{\mathtt{e_{3}}}}; \draw[solid] (b'.input 2) edge (e_3); \node[draw=red, SEQ, xshift=-0.000000cm , below of=e_3] (e_2) {\ensuremath{\mathtt{e_{2}}}}; \draw[solid] (e_3) edge (e_2); \node[draw=red, SEQ, xshift=-0.000000cm , below of=e_2] (e_1) {\ensuremath{\mathtt{e_{1}}}}; \draw[solid] (e_2) edge (e_1); \node[draw=red, state, xshift=-0.000000cm , below of=e_1] (e') {\ensuremath{\mathtt{e'}}}; \draw[solid] (e_1) edge (e'); \node[draw=red, state, xshift=-0.000000cm , below of=d_1] (d') {\ensuremath{\mathtt{d'}}}; \draw[solid] (d_1) edge (d'); \end{tikzpicture} \end{document}