Vertex elimination has recently been used for translating SAT modulo acyclicity into pure SAT [
21]. This is achieved by adding atoms and clauses to
\(\phi \) that dynamically simulate the vertex elimination process of
\(G_I\) for a classical model
I of
\(\phi \). Considering the cycle contraction property of vertex elimination graphs mentioned above, the acyclicity of
\(G_I\) can then be ensured by prohibiting cycles of length 2 in the vertex elimination graph of
\(G_I\).
Let
\(\alpha \) be an arbitrary ordering of
V. Without loss of generality, we assume that members of
V are indexed such that for
\(i=1,\ldots ,n\),
\(\alpha (i)=v_i\). For the sake of simplicity, we denote the vertex elimination graphs of
G and
\(G_I\) according to
\(\alpha \), simply by
\(G^*=\langle {V},{E^*}\rangle \) and
\(G^*_I=\langle {V},{E^*_I}\rangle \), respectively. To simulate the vertex elimination process of
\(G_I\), we need atoms
\(e'_{i,j}\) to represent the arcs of
\(G^*_I\). We know that every arc of
\(G_I\) is also an arc of
\(G^*_I\). In other words,
\(e_{i,j}\) implies
\(e'_{i,j}\). Hence, we add to the original formula
$$\begin{aligned} \bigwedge _{\langle {v_i},{v_j}\rangle \,\in \, E} e_{i,j}\rightarrow e'_{i,j}. \end{aligned}$$
(11)
Let
\(G=G_0, G_{1},\ldots ,G_{n-1}\) be the vertex elimination process of
G, and
\(G_I=G'_0,G'_{1},\ldots ,G'_{n-1}\) be the vertex elimination process of
\(G_I\). Since
\(G_I\) is a subgraph of
G,
\(G'_i\) must be a subgraph of
\(G_i\) for
\(i=1,\ldots ,n-1\). Therefore, the fill-in of
\(v_i\) in
\(G'_{i-1}\) is also a subset of the fill-in of
\(v_i\) in
\(G_{i-1}\). Since the fill-in of
\(v_i\) in
\(G_{i-1}\) can be computed statically, we can use it to reduce the number of formulas and atoms needed for dynamic computation of the fill-in of
\(v_i\) in
\(G'_{i-1}\). Based on this, we add formula (
12) to ensure that for
\(i=1,\ldots ,n-1\), the fill-in of
\(v_i\) in
\(G'_{i-1}\) is included in
\(G^*_I\). In (
12),
\(F_{i-1}(v_i)\) denotes the fill-in of
\(v_i\) in
\(G_{i-1}\).
$$\begin{aligned} \bigwedge _{v_i\,\in \, V, \langle {v_j},{v_k}\rangle \,\in \, F_{i-1}(v_i)} (e'_{j,i}\wedge e'_{i,k})\rightarrow e'_{j,k} \end{aligned}$$
(12)
Finally, we guarantee the acyclicity of
\(G_I\) by prohibiting cycles of length 2 in the vertex elimination graph of
\(G_I\), using formula (
13).
$$\begin{aligned} \bigwedge _{\langle {v_i},{v_j}\rangle \,\in \, E^*,\langle {v_j},{v_i}\rangle \,\in \, E^*,i < j} e'_{i,j}\rightarrow \lnot e'_{j,i} \end{aligned}$$
(13)
Consider
\(\phi '\) to be the conjunction of
\(\phi \) and formulas (
11) to (
13). Theorem 1 and Theorem 2 of [
21] show that for any given ordering
\(\alpha \) of
V,
\(\phi '\) is satisfiable in classical sense iff there is an acyclic model for
\(\phi \). Nevertheless, by straightforward consideration, one can reach to a stronger theoretical result as follows.