\item
\CNFfromCircuit

\tikzstyle{branch}=[fill,shape=circle,minimum size=3pt,inner sep=0pt]
\begin{tikzpicture}[label distance=2mm]
    \node (a) at (0,0) {$a$};
    \node (b) at (0,-1) {$b$};
    \node (c) at (0,-2) {$c$};
    \node (z) at (10,-1) {$z$};

    \node (am) at (1,0) {};
    \node (cm) at (1,-2) {};
    \node (bm) at (3,-1) {};
    \node (not1m) at (3,-2) {};
    \node (not2m) at (5,-.5) {};
    \node (or1m) at (5,-1.5) {};
    \node (bc_c1) at (1,-1.1) {};
    \node (bc_c2) at (1.1,-1) {};
    \node (bc_c3) at (1,-.9) {};

    \node[and gate US, draw, logic gate inputs=nn] at ($(2,-.5)$) (and1) {\tiny AND};
    \node[not gate US, draw, logic gate inputs=n] at ($(2,-2)$) (not1) {\tiny NOT};
    \node[not gate US, draw, logic gate inputs=n] at ($(4,-.5)$) (not2) {\tiny NOT};
    \node[or gate US, draw, logic gate inputs=nn] at ($(4,-1.5)$) (or1) {\tiny OR};
    \node[and gate US, draw, logic gate inputs=nn] at ($(6,-1)$) (and2) {\tiny AND};
    \node[not gate US, draw, logic gate inputs=n] at ($(8,-1)$) (not3) {\tiny NOT};

    \draw (a.east) -| (am.center) |- (and1.input 1);
    \draw (c.east) -| (cm.center) node[circle, fill,inner sep=2pt] {} -- (bc_c1.center) -- (bc_c2.center) -- (bc_c3.center) |- (and1.input 2);
    \draw (b.east) -| (bm.center)|- (or1.input 1);
    \draw (c.east) -- (not1.input);
    \draw (and1.output) -- node[above] {$u$} (not2.input);
    \draw (not1.output) -| (not1m.center) node[below] {$v$} |- (or1.input 2);
    \draw (not2.output) -| (not2m.center) node[above] {$w$} |- (and2.input 1);
    \draw (or1.output) -| (or1m.center) node[below] {$x$} |-  (and2.input 2);
    \draw (and2.output) -- node[below] {$y$} (not3.input);
    \draw (not3.output) -- (z.west);
\end{tikzpicture}
