I approached the problem using TikZ
and the shapes
library, though I think the ellipses are not so nice for such long content. There are two chains, both going downwards (below
), all nodes have a fixed height (minimum height=
and ìnner ysep=) such that they are aligned by using the same step
node distance` on both chains,
\documentclass{standalone}
\usepackage{tikz} \usetikzlibrary{chains,positioning,scopes,shapes}
\begin{document}
\tikzstyle{myNode}=[on chain, align=center,shape=ellipse,draw, minimum width=3cm, minimum height=1cm,inner ysep=0pt]
\begin{tikzpicture}
\begin{scope}[start chain=going below, node distance=2cm]
\node [on chain, myNode] (L1) at (0,-3) {\(x_1\quad x_2\)\\\(v_2\geq0\)};
\node [on chain, myNode] (L2) {\(x_1\quad (1-x_2)\)\\\((k-1)v_2 - (k+1)v_3 \geq 0\)};
\node [on chain, myNode] (L3) {\(1-x_1\quad (1-x_2)\)\\\((k+1)v_1 - (2k-1)v_2 \geq 1\)};
\end{scope}
\begin{scope}[start chain=going below, node distance=2cm]
\node [on chain, myNode] (K1) at (7,0) {\(x_1\quad x_2\quad x_3\)\\\(2v_2\geq0\)};
\node [on chain, myNode] (K2) {\(x_1\quad x_2 \quad (1-x_3)\)\\\(v_2 + (k-2)v_3\geq 0 \geq 0\)};
\node [on chain, myNode] (K3) {\(x_1(1-x_2)(1-x_3)\)\\\((k-1)v_2 - (2k-2)v_3\geq 0\)};
\node [on chain, myNode] (K4) {\(x_1(1-x_b)(1-x_c)\)\\\(\cdots\)};
\end{scope}
\draw[->] (L1) -- (K1);
\draw[->] (L1) -- (K2);
%
\draw[->] (L2) -- (K2);
\draw[->] (L2) -- (K3);
%
\draw[->] (L3) -- (K4);
\end{tikzpicture}
\end{document}
Note that the first (left) chain starts exactely one height earlier (1cm
height and 2cm
node distance).
The result still needs some styling (and maybe other shapes than ellipse
but its a starting point.

Edit/Update
In the first case, all edges start at the center point, because the \draw
always the start/end point to be the center. to change that one can use the meta coordinates of the nodes (.north
,.east
,.south
and .west
), i.e. using for the drawing of the edges
\draw[->] (L1.east) -- (K1.west);
\draw[->] (L1.east) -- (K2.west);
%
\draw[->] (L2.east) -- (K2.west);
\draw[->] (L2.east) -- (K3.west);
%
\draw[->] (L3.east) -- (K4.west);
to obtain (includes removing the shape=ellipse
and hence having rectangles):

chains
? Or picking some ideas from these examples