(i) if there is a YES answer for the instance of U-
1-3-SAT (which implies that there is a unique vertex
cover V∗in GV C , with cardinality at most k), then
there is a unique path in H;
(ii) if there are at least two assignments 1-3-
satisfying all the clauses (i.e., there are at least two
vertex covers in GV C , with cardinality at most k),
then there are at least two paths in H;
(iii) if there is no assignment 1-3-satisfying the
clauses (and no vertex cover in GV C with cardinality
at most k), then there is no path in H.
Step 1. For each edge e=uv ∈EV C , we build
one component He= (Xe, Ae)with 12 vertices and
14 arcs: Xe={(u, e, i),(v, e, i) : 1 ≤i≤6},
Ae={((u, e, i),(u, e, i + 1)),((v, e, i),(v, e, i + 1)) :
1≤i≤5} ∪ {((v, e, 3),(u, e, 1)),((u, e, 3),(v, e, 1))}
∪{((v, e, 6),(u, e, 4)),((u, e, 6),(v, e, 4))}; see Fi-
gure 5, which is the oriented copy of Figure 3.4 in [6,
p. 57].
In the completed construction, the only vertices
from this component that will be involved in any
additional arcs are the vertices (u, e, 1),(u, e, 6),
(v, e, 1), and (v, e, 6). This, together with the fact that
there will be two particular vertices, α1and δ, which
will necessarily be the ends of any path, will imply
that any path in the final graph Hwill have to meet
the vertices in Xein exactly one of the three con-
figurations shown in Figure 6, which is the oriented
copy of Figure 3.5, in [6, p. 58]. Thus, when the path
meets the component Heat (u, e, 1), it will have to
leave at (u, e, 6) and go through either (a) all 12 ver-
tices in the component, in which case we shall say
that the component is completely visited from the u-
side, or (b) only the 6 vertices (u, e, i),1≤i≤6, in
which case we shall say that the component is visited
in parallel and needs two visits, i.e., another section
of the path will re-visit the component, meeting the 6
vertices (v, e, i),1≤i≤6.
Step 2. We create nvertices αi,1≤i≤n, and
2narcs (αi,(xi, xixi,1)),(αi,(xi, xixi,1)), that is,
we link αito the “first” vertices of the component He
whenever e=xixi. The vertices αican be seen as
literal selectors that will choose between xiand xi.
The vertex α1will have no other neighbours; this
means in particular that it will have no in-neighbours,
thus it will necessarily be the starting vertex of any
Hamiltonian path, if such a path exists.
We choose an arbitrary order on the 3mver-
tices of the triangles Tjin the graph GV C ,
say OT=< a1, b1, d1, a2,...,dm>and
an arbitrary order on the literals xi, xi, say
Oℓ=< x1, x2, . . . , xn, x1, . . . , xn>. For each
literal ℓiequal to xior xi, we do the following (see
Figure 7 for an example):
Rule (a): If ℓiappears q=q(ℓi)≥0
times in the clauses and is linked in GV C to
t1,...,tqwhere the t’s belong to the triangles Tj
and follow the order OT, then we create the arcs
((ℓi, ℓiℓi,6),(ℓi, ℓit1,1)),((ℓi, ℓit1,6),(ℓi, ℓit2,1)),
...,((ℓi, ℓitq−1,6),(ℓi, ℓitq,1)).
Rule (b): We consider the triangular sets of edges
E′
jdescribed in the construction of GV C .
•If ℓidoes not belong to any such edge, we cre-
ate the arc ((ℓi, ℓitq,6), αi+1)– or ((ℓi, ℓiℓi,6), αi+1)
if ℓidoes not apppear in any clause – unless
i=n, in which case we create ((ℓi, ℓitq,6), β1)or
((ℓi, ℓiℓi,6), β1), where β1is a new vertex that will
be spoken of at the beginning of Step 3.
•If ℓibelongs to s=s(ℓi)>0edges
from E′
j, which link ℓito sliterals ℓi1,...,ℓis
that follow the order Oℓ, then we build
the arc ((ℓi, ℓitq,6),(ℓi, ℓiℓi1,1)) – or the
arc ((ℓi, ℓiℓi,6),(ℓi, ℓiℓi1,1)) if q= 0;
next, the arcs ((ℓi, ℓiℓi1,6),(ℓi, ℓiℓi2,1)),
...,((ℓi, ℓiℓis−1,6),(ℓi, ℓiℓis,1)) and
((ℓi, ℓiℓis,6), αi+1), unless i=n, in which
case we create ((ℓi, ℓiℓis,6), β1).
Remark 16 In the example of Figure 7, one can see
that if a path takes, e.g., the arc (α1,(x1, x1x1,1)),
then it visits the vertices (x1, x1x1,6),(x1, x1a1,1),
(x1, x1a1,6), and α2. If on the other hand, we use the
arc (α1,(x1, x1x1,1)), we also go to α2. The same is
true between α2and α3,..., between αn−1and αn,
between αnand β1.
We can see that so far, α1has (out-)degree 2,
α2,...,αnhave degree 4 (in- and out-degrees equal
to 2), and β1has (in-)degree 2.
Step 3. We consider the mclauses and the mcorres-
ponding triangles Tj.
We create 2mvertices βj, β′
j,1≤j≤m.
As we have seen in the previous step, β1has al-
ready two in-neighbours, which can be (ℓn, ℓntq,6),
or (ℓn, ℓnℓn,6), or (ℓn, ℓnℓns,6). We also create one
more vertex δ, which will have only in-neighbours,
so that α1and δwill necessarily be the ends of any
directed Hamiltonian path, if such a path exists.
Now for the triangle Tj={aj, bj, dj},
1≤j≤m, associated to the clause
cj={ℓj1, ℓj2, ℓj3}in the graph GV C , we con-
sider the six corresponding components Hajbj,
Hajdj,Hbjdj,Hajℓj1,Hbjℓj2and Hdjℓj3. The vertices
βjand β′
jcan be seen as triangle selectors, intended
to choose two vertices among three. With this in
mind, we create the following arcs (see Figure 8), for
j∈ {1,2,...,m}:
Rule (a): (βj,(aj, ajbj,1)),
((aj, ajbj,6),(aj, ajdj,1)),
((aj, ajdj,6),(aj, ajℓj1,1)),((aj, ajℓj1,6), β′
j).
WSEAS TRANSACTIONS on MATHEMATICS
DOI: 10.37394/23206.2022.21.51
Olivier Hudry, Antoine Lobstein