\documentclass[border=5pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{decorations.pathreplacing}

\begin{document}
\begin{tikzpicture}[scale=2.5]
\draw[fill] (0,0) circle (0.03);
\draw[fill] (0.5,0) circle (0.03);
\draw[fill] (0.5,0.5) circle (0.03);
\draw[fill] (0,0.5) circle (0.03);
\draw[fill] (0.5,-0.5) circle (0.03);
\draw[fill] (0,-0.5) circle (0.03);
\draw (0.5,0.5)--(0,0.5);
\node[below left] at (0,0){$a_2$};
\node[above left] at (0,0.5){$a_1$};
\node[below right] at (0.5,0){$b_2$};
\node[above right] at (0.5,0.5){$b_1$};
\node[below left] at (0,-0.5){$a_3$};
\node[below right] at (0.5,-0.5){$b_3$};

\node[above] at (0.875,0.7){$x_1x_2x_3=011$};

\draw[fill] (0.875, 0) circle(0.03);
\node[above] at (0.875, 0) {$e_1$};

\draw[fill] (1.25+0,0) circle (0.03);
\draw[fill] (1.25+0.5,0) circle (0.03);
\draw[fill] (1.25+0.5,0.5) circle (0.03);
\draw[fill] (1.25+0,0.5) circle (0.03);
\draw[fill] (1.25+0.5,-0.5) circle (0.03);
\draw[fill] (1.25+0,-0.5) circle (0.03);
\draw (1.25+0,0)--(1.25+0.5,0);
\draw (1.25+0,-0.5)--(1.25+0.5,-0.5);
\node[below left] at (1.25+0,0){$c_2$};
\node[above left] at (1.25+0,0.5){$c_1$};
\node[below right] at (1.25+0.5,0){$d_2$};
\node[above right] at (1.25+0.5,0.5){$d_1$};
\node[below left] at (1.25+0,-0.5){$c_3$};
\node[below right] at (1.25+0.5,-0.5){$d_3$};

\draw[fill] (2.5+0,0) circle (0.03);
\draw[fill] (2.5+0.5,0) circle (0.03);
\draw[fill] (2.5+0.5,0.5) circle (0.03);
\draw[fill] (2.5+0,0.5) circle (0.03);
\draw[fill] (2.5+0.5,-0.5) circle (0.03);
\draw[fill] (2.5+0,-0.5) circle (0.03);
\draw (2.5+0,0.5)--(2.5+0.5,0.5);
\draw (2.5+0,0)--(2.5+0.5,0);
\draw (2.5+0,-0.5)--(2.5+0.5,-0.5);
\node[below left] at (2.5+0,0){$a_5$};
\node[above left] at (2.5+0,0.5){$a_4$};
\node[below right] at (2.5+0.5,0){$b_5$};
\node[above right] at (2.5+0.5,0.5){$b_4$};
\node[below left] at (2.5+0,-0.5){$a_6$};
\node[below right] at (2.5+0.5,-0.5){$b_6$};

\draw[fill] (2.5+0.875+0.5,0) circle (0.03);
\node[above] at (2.5+0.875+0.5,0) {$e_2$};

\node[above] at (2.5+0.875,0.7){$x_4x_5x_6=000$};

\draw[fill] (3.5+0,0) circle (0.03);
\draw[fill] (3.75+0.5,0) circle (0.03);
\draw[fill] (3.75+0.5,0.5) circle (0.03);
\draw[fill] (3.5+0,0.5) circle (0.03);
\draw[fill] (3.75+0.5,-0.5) circle (0.03);
\draw[fill] (3.5+0,-0.5) circle (0.03);
\node[below right] at (3.5+0,0){$c_5$};
\node[above right] at (3.5+0,0.5){$c_4$};
\node[below right] at (3.75+0.5,0){$d_5$};
\node[above right] at (3.75+0.5,0.5){$d_4$};
\node[below right] at (3.5+0,-0.5){$c_6$};
\node[below right] at (3.75+0.5,-0.5){$d_6$};

\draw [purple, dashed] plot [smooth] coordinates {(0.5,0.5) (0.25,0) (0.5, -0.5)};
\draw [purple, dashed] (0.5,0.5)--(0.5,-0.5);
\draw [purple, dashed] (0.5,0.5)--(0.875, 0);
\draw [purple, dashed] (0.5,0)--(0.875, 0);
\draw [purple, dashed] (0.5,-0.5)--(0.875, 0);

\draw [purple, dashed] plot [smooth] coordinates {(1.75,0.5) (1.25 + 0.25,0) (1.75, -0.5)};
\draw [purple, dashed] (1.75,0.5)--(1.75,-0.5);

\node [below] at (0.875,-0.9){\color{purple}{$w_1=1$}};

\draw [purple, dashed] plot [smooth] coordinates {(2.5+0.5,0.5) (2.5 + 0.25, 0) (2.5+0.5,-0.5)};
\draw [purple, dashed] (2.5+0.5,0.5)--(2.5+0.5,-0.5);
\draw [purple, dashed] plot [smooth] coordinates {(3.75+0.5,0.5) (3.75+0.5 + 0.25, 0) (3.75+0.5,-0.5)};
\draw [purple, dashed] (3.75+0.5,0.5)--(3.75+0.5,-0.5);
\draw [purple, dashed] (2.5+0.875+0.5,0)--(3.75+0.5,0.5);
\draw [purple, dashed] (2.5+0.875+0.5,0)--(3.75+0.5,0);
\draw [purple, dashed] (2.5+0.875+0.5,0)--(3.75+0.5,-0.5);

\node [below] at (2.5+0.875,-0.9){\color{purple}{$w_2=0$}};
\end{tikzpicture}
\end{document}