Discrete Mathematics and Theoretical Computer Science
DMTCS vol. 23:1, 2021, #10
arXiv:1911.08964v5 [cs.DS] 26 Apr 2021
New Algorithms for Mixed Dominating Set
Louis Dublois
Michael Lampis
Vangelis Th. Paschos
Université Paris-Dauphine, PSL University, CNRS, LAMSADE, Paris, France
received 5th Oct. 2020, revised 13th Jan. 2021, 15th Apr. 2021, accepted 16th Apr. 2021.
A mixed dominating set is a set of vertices and edges that dominates all vertices and edges of a graph. We study the
complexity of exact and parameterized algorithms for M IXED D OMINATING S ET , resolving some open questions.
In particular, we settle the problem’s complexity parameterized by treewidth and pathwidth by giving an algorithm
running in time O∗ (5tw ) (improving the current best O∗ (6tw )), and a lower bound showing that our algorithm
cannot be improved under the Strong Exponential Time Hypothesis (SETH), even if parameterized by pathwidth
(improving a lower bound of O∗ ((2 − ε)pw )). Furthermore, by using a simple but so far overlooked observation on
the structure of minimal solutions, we obtain branching algorithms which improve the best known FPT algorithm for
this problem, from O∗ (4.172k ) to O∗ (3.510k ), and the best known exact algorithm, from O∗ (2n ) and exponential
space, to O∗ (1.912n ) and polynomial space.
Keywords: FPT Algorithms, Exact Algorithms, Mixed Domination
1 Introduction
Domination problems in graphs are one of the most well-studied topics in theoretical computer science.
In this paper we study a variant called M IXED D OMINATING S ET: we are given a graph G = (V, E) and
are asked to select D ⊆ V and M ⊆ E such that |D ∪ M | is minimized and the set D ∪ M dominates
V ∪ E, where a vertex dominates itself, its neighbors, and its incident edges and an edge dominates itself,
its endpoints, and all edges with which it shares an endpoint.
The notion of M IXED D OMINATING S ET was first introduced in 1977 by Alavi et al. (1977), and has
been studied extensively in graph theory by Alavi et al. (1992), Erdös and Meir (1977), Meir (1978) and
Peled and Sun (1994). See the chapter of Haynes et al. (1998) for a survey on the M IXED D OMINATING
S ET problem. The computational complexity of M IXED D OMINATING S ET was first studied in 1993 by
Majumdar (1993), where he showed that the problem is NP-complete. The problem remains NP-complete
on split graphs by a result of Zhao et al. (2011) and on planar bipartite graphs of maximum degree 4 by
a result of Manlove (1999). Majumdar (1993), Lan and Chang (2013), Rajaati et al. (2017) and Madathil
et al. (2019) showed that the problem is polynomial-time solvable on trees, cacti, generalized seriesparallel graphs and proper interval graphs, respectively.
M IXED D OMINATING S ET is a natural variation of domination in graphs as it can be seen as a mix
between four standard problems: D OMINATING S ET, where vertices dominate vertices; E DGE D OMI NATING S ET , where edges dominate edges; V ERTEX C OVER, where vertices dominate edges; and E DGE
C OVER, where edges dominate vertices. In M IXED D OMINATING S ET we are asked to select vertices
ISSN 1365–8050
© 2021 by the author(s)
Distributed under a Creative Commons Attribution 4.0 International License
2
Louis Dublois, Michael Lampis, Vangelis Th. Paschos
and edges in a way that dominates all vertices and edges. As only the last of these four problems is in
P, it is not surprising that M IXED D OMINATING S ET is NP-hard. We are therefore motivated to study
approximation, exponential-time and parameterized algorithms for this problem, and indeed this has been
the topic of several recent papers. On the approximation algorithms side, the problem is well-understood:
Hatami (2007) gave a 2-approximation algorithm, while more recently Dudycz et al. (2019) showed that,
under the Unique Games Conjecture (see Khot (2002)), no algorithm can achieve a ratio better than 2
for E DGE D OMINATING S ET. As we explain (Proposition 1) this hardness result easily carries over to
M IXED D OMINATING S ET, thus essentially settling the problem’s approximability. Hence, in this paper
we focus on parameterized and exact algorithms.
M IXED D OMINATING S ET has recently been the focus of several works in this context. With respect
to the natural parameter (the size k of the solution), an O∗ (7.465k )(i) algorithm was given by Jain et al.
(2017), more recently improved to O∗ (4.172k ) by Xiao and Sheng (2019). With respect to treewidth and
pathwidth, Jain et al. (2017) gave algorithms running in O∗ (6tw ) time and O∗ (5pw ) time, improving upon
2
the O∗ (3tw ) time algorithm of Rajaati et al. (2018). Furthermore, Jain et al. showed that no algorithm can
solve the problem in O∗ ((2−ε)pw ) time under the Set Cover Conjecture (see Cygan et al. (2012) for more
details about the Set Cover Conjecture). These works observed that it is safe to assume that the optimal
solution has a specific structure: the selected edges form a matching whose endpoints are disjoint from the
set of selected vertices. This observation immediately gives an O∗ (3n ) algorithm for the problem, which
was recently improved to O∗ (2n ) by Madathil et al. (2019) by using a dynamic programming approach,
which requires O∗ (2n ) space.
Our results:
The state of the art summarized above motivates two basic questions: first, can the gap in the complexity
of the problem for treewidth and pathwidth and the gap between the lower and upper bound for these
parameters be closed, as explicitly asked by Jain et al. (2017); second, can we solve this problem faster
than the natural O∗ (2n ) barrier? We answer these questions and along the way obtain an improved FPT
algorithm for parameter k. Specifically we show:
(i) M IXED D OMINATING S ET can be solved in O∗ (5tw ) time. Somewhat surprisingly, this result is
obtained by combining observations that exist in the literature: the equivalence of M IXED D OMINATING
S ET to D ISTANCE-2-D OMINATING S ET by Madathil et al. (2019); and the algorithm of Borradaile and
Le (2016) for this problem.
(ii) M IXED D OMINATING S ET cannot be solved in time O∗ ((5 − ε)pw ), under the SETH. This is our
main result on this front, and shows that our algorithm for treewidth and the algorithm of Jain et al. (2017)
for pathwidth are optimal.
(iii) M IXED D OMINATING S ET can be solved in time O∗ (1.912n ) and O∗ (3.510k ), in both cases using
polynomial space. In order to obtain these algorithms we refine the notion of nice mixed dominating set
which was used in Jain et al. (2017). In particular, we show that there always exists an optimal mixed
dominating set such that any selected vertex has at least two private neighbors, that is, two neighbors
which are only dominated by this vertex. This allows us to speed the branching on low-degree vertices.
(i)
O ∗ notation suppresses polynomial factors in the input size.
New Algorithms for Mixed Dominating Set
3
2 Preliminaries
We assume familiarity with the basics of parameterized complexity (e.g. treewidth, pathwidth, and the
SETH), as given by Cygan et al. (2015). Let G = (V, E) be a graph with |V | = n vertices and |E| = m
edges. For u ∈ V , N (u) denotes the set of neighbors of u, d(u) = |N (u)| and N [u] = N (u) ∪ {u}.
For U ⊆ V and u ∈ V , we note NU (u) = N (u) ∩ U and use dU (u) to denote |NU (u)|. Furthermore,
for U ⊆ V we denote N (U ) = ∪u∈U N (u). For an edge set E ′ , we use V (E ′ ) to denote the set of
endpoints of E ′ . For V ′ ⊆ V , we use G[V ′ ] to denote the subgraph of G induced by V ′ . An edge cover
of a graph G = (V, E) is a set of edges M ⊆ E such that V (M ) = V . Recall that an edge cover M of
a graph G = (V, E) must have size |M | ≥ V2 , since each edge can cover at most two vertices. A mixed
dominating set of a graph G = (V, E) is a set of vertices D ⊆ V and edges M ⊆ E such that (i) all
vertices of V \ (D ∪ V (M )) have a neighbor in D (ii) all edges of E \ M have an endpoint in D ∪ V (M ).
We note that the minimization problem M IXED D OMINATING S ET is harder than the more well-studied
E DGE D OMINATING S ET (EDS) problem, by a reduction that preserves most parameters from an FPT
viewpoint and the size of the optimal solution. Hence, essentially all hardness results for the latter problem, such as its inapproximability obtained by Dudycz et al. (2019) or its W[1]-hardness for clique-width
from Fomin et al. (2010), carry over to M IXED D OMINATING S ET.
Proposition 1 There is an approximation and parameter-preserving reduction from E DGE D OMINATING
S ET to M IXED D OMINATING S ET.
Proof: Given an instance G = (V, E) of EDS we seek a set M of k edges such that all edges have an
endpoint in V (M ). We add a new vertex u connected to all of V and attach to u |V | + 2 leaves. The new
graph has a mixed dominating set of size k + 1 if and only if G has an edge dominating set of size k. ✷
We now define a restricted notion of mixed dominating set.
Definition 1 A nice mixed dominating set of a graph G = (V, E) is a mixed dominating set D ∪ M which
satisfies the following: (i) D ∩ V (M ) = ∅ (ii) for all u ∈ D there exists at least two private neighbors of
u, that is, two vertices v1 , v2 ∈ V \ (D ∪ V (M )) with N (v1 ) ∩ D = N (v2 ) ∩ D = {u}.
We note that a similar notion of nice mixed dominating set was used in the algorithms of Jain et al.
(2017), with the key difference that these algorithms do not use the fact that every vertex of D must have
at least two private neighbors, that is, two neighbors which are dominated only by this vertex, though
these algorithms use the fact that such vertices have at least one private neighbor.
Let us now prove that restricting ourselves to nice solutions does not change the value of the optimal.
The idea of the proof is to reuse the arguments of Madathil et al. (2019) to obtain an optimal solution
satisfying the first property; and then while there exists u ∈ D with at most one private neighbor, we
replace it by an edge while maintaining a valid solution satisfying the first property. (ii)
Lemma 1 For any graph G = (V, E) without isolated vertices, G has a mixed dominating set D ∪ M of
size at most k if and only if G has a nice mixed dominating set D′ ∪ M ′ of size at most k.
(ii)
In the conference version of this paper (IPEC 2020) we used a definition of nice mixed dominating set that included the additional
property that M is a matching, and erroneously claimed that an optimal solution satisfying this definition always exists. We are
grateful to an anonymous reviewer who pointed out to us that this is not the case. As a result, we use here a definition of nice
mixed dominating set that is slightly weaker that the one in the conference version and give a corrected version of Lemma 1.
However, the results we obtain remain the same.
4
Louis Dublois, Michael Lampis, Vangelis Th. Paschos
Proof: On direction is trivial, since any nice mixed dominating set is also by definition a mixed dominating
set. For the other direction, we first recall that it was shown by Madathil et al. (2019) that if a graph has
a mixed dominating of size k, then it also has such a set that satisfies the first condition of Definition 1.
Suppose then that D ∪ M is such that D ∩ V (M ) = ∅.
We will now edit this solution so that we obtain the missing desired property, namely the fact that all
vertices of D have two private neighbors. Our transformations will be applicable as long as there exists a
vertex u ∈ D without two private neighbors, and will either decrease the size of the solution, or decrease
the size of D, while maintaining a valid solution satisfying the first property of Definition 1. As a result,
applying these transformations at most n times yields a nice mixed dominating set.
Let I = V \ (D ∪ V (M )). If there exists u ∈ D with exactly one private neighbor, let v ∈ I be this
private neighbor. We set D′ = D \ {u} and M ′ = M ∪ {(u, v)} to obtain another solution. This solution
is valid because N (u)\ {v} is dominated by (D ∪M )\ {u}, otherwise u would have more that one private
neighbor.
Let us now consider u ∈ D such that u has no private neighbor. If N (u) ⊆ D, then we can simply
remove u from the solution and obtain a beter solution (recall that u is not an isolated vertex). Otherwise,
let v ∈ N (u) \ D. We set D′ = D \ {u} and M ′ = M ∪ {(u, v)} to obtain another feasible solution with
fewer vertices, while still satisfying the first property. We repeat these modifications until we obtain the
claimed solution.
✷
In the remainder, when considering a nice mixed dominating set D ∪M of a graph G = (V, E), we will
associate with it the partition V = D ∪ P ∪ I where P = V (M ) and I = V \ (D ∪ P ). We will call this
a nice mds partition. We have the following properties: (i) M is an edge cover of G[P ] since P = V (M )
and M is a set of edges (ii) I is an independent set because if there were two adjacent vertices in I then
the edge between them would not be dominated (iii) D dominates I because if there was a vertex in I not
dominated by D it would not be dominated at all (iv) each u ∈ D has two private neighbors v1 , v2 ∈ I,
that is N (v1 ) ∩ D = N (v2 ) ∩ D = {u}.
We also note the following useful relation.
Lemma 2 For any graph G = (V, E) and any nice mds partition V = D ∪ P ∪ I of G, there exists a
minimal vertex cover C of G such that D ⊆ C ⊆ D ∪ P .
Proof: Since I is an independent set of G, D ∪ P is a vertex cover of G and hence contains some minimal
vertex cover. We claim that any such minimal vertex cover C ⊆ D ∪ P satisfies D ⊆ C. Indeed, for
each u ∈ D there exists two private neighbors v1 , v2 ∈
/ D ∪ P . Hence, if u ∈
/ C, the edge (u, v1 ) is not
covered, contradiction.
✷
3 Treewidth
We begin with an algorithm for M IXED D OMINATING S ET running in time O∗ (5tw ). We rely on three
ingredients: (i) the fact that M IXED D OMINATING S ET on G is equivalent to D ISTANCE -2-D OMINATING
S ET on the incidence graph of G by a result of Madathil et al. (2019) (ii) the standard fact that the incidence
graph of G has the same treewidth as G (iii) and an O∗ (5tw ) algorithm (by Borradaile and Le (2016)) for
D ISTANCE -2-D OMINATING S ET.
Theorem 2 There is an O∗ (5tw )-time algorithm for M IXED D OMINATING S ET in graphs of treewidth
tw.
New Algorithms for Mixed Dominating Set
5
Proof: We are given an instance of M IXED D OMINATING S ET G = (V, E). We first construct the
incidence graph of G, which has vertex set V ∪ E, and has an edge between v ∈ V and e ∈ E if e is
incident on v in G. We denote this graph as I(G). In other words, I(G) is obtained by sub-dividing every
edge of G once.
We now note the standard fact that tw(I(G)) ≤ tw(G). Indeed, if G is a forest, then I(G) is also a
forest; while if tw(G) ≥ 2, then we can take any tree decomposition of G and for each e = (u, v) we
observe that it must contain a bag with both u and v. We create a bag containing u, v, e and attach it to
the bag containing u, v. Note that this does not increase the width of the decomposition. We thus obtain
a decomposition of I(G).
Second, as observed by Madathil et al. (2019), every mixed dominating set of G corresponds to a
distance-2 dominating set of I(G). Recall that a distance-2 dominating set of a graph is a set of vertices
D such that all vertices of V \ D are at distance at most 2 from D.
Finally, we use the algorithm of Borradaile and Le (2016) to solve D ISTANCE-2-D OMINATING S ET in
time O∗ (5tw ) in I(G), which gives us the optimal mixed dominating set of G.
✷
The main result of this section is a lower bound matching Theorem 2. We prove that, under SETH,
for all ε > 0, there is no algorithm for M IXED D OMINATING S ET with complexity O∗ ((5 − ε)pw ). The
starting point of our reduction is the problem q-CSP-5 (see Lampis (2020)). In this problem we are given
a C ONSTRAINT S ATISFACTION (CSP) instance with n variables and m constraints. The variables take
values in a set of size 5, say {0, 1, 2, 3, 4}. Each constraint involves at most q variables and is given as a
list of acceptable assignments for these variables, where an acceptable assignment is a q-tuple of values
from the set {0, 1, 2, 3, 4} given to each of the q variables. The following result was shown by Lampis
(2020) to be a natural consequence of the SETH.
Lemma 3 (Theorem 3.1 by Lampis (2020)) If the SETH is true, then for all ε > 0, there exists a q such
that n-variable q-CSP-5 cannot be solved in time O∗ ((5 − ε)n ).
Note that in the Theorem of Lampis (2020) it was shown that for any alphabet size B, q-CSP-B cannot
be solved in time O∗ ((B − ε)n ) under the SETH, but for our purposes only the case B = 5 is relevant,
for two reasons: because this corresponds to the base of our target lower bound; and because in our
construction we will represent the B = 5 possible values for a variable with a path of five vertices in
which there exists exactly five different ways of selecting one vertex and one edge among these five
vertices. Our plan is therefore to produce a polynomial-time reduction which, given a q-CSP-5 instance
with n variables, produces an equivalent M IXED D OMINATING S ET instance whose pathwidth is at most
n + O(1). Then, the existence of an algorithm for the latter problem running faster than O∗ ((5 − ε)pw )
would give an O∗ ((5 − ε)n ) algorithm for q-CSP-5, contradicting the SETH.
Before giving the details of our reduction let us sketch the basic ideas, which follow the pattern of
other SETH-based lower bounds which have appeared in the literature: see Hanaka et al. (2018), Jaffke
and Jansen (2017), Katsikarelis et al. (2018), Katsikarelis et al. (2019) and Lokshtanov et al. (2018). The
constructed graph consists of a main selection part of n paths of length 5m, divided into m sections. Each
path corresponds to a variable and each section to a constraint. The idea is that the optimal solution will
follow for each path a basic pattern of selecting one vertex and one edge among the first five vertices
and then repeat this pattern throughout the path (see Figure 1). There are 5 natural ways to do this,
so this can represent all assignments to the q-CSP-5 instance. We will then add verification gadgets
to each section, connected only to the vertices of that section that represent variables appearing in the
6
Louis Dublois, Michael Lampis, Vangelis Th. Paschos
corresponding constraint (thus keeping the pathwidth under control), in order to check that the selected
assignment satisfies the constraint.
(a)
(b)
(c)
(d)
(e)
Fig. 1: Main part of the construction with the five possible configurations. Filled vertices are in D, thick edges are in
M.
The main difficulty in completing the proof is showing that the optimal solution has the desired form,
and in particular, that the pattern that is selected for a variable is kept constant throughout the construction.
This is in general not possible to prove, but using a technique introduced by Lokshtanov et al. (2018),
we work around this difficulty by making polynomially many copies of our construction, gluing them
together, and arguing that a large enough consistent copy must exist.
Construction
We are given a q-CSP-5 instance ϕ with n variables x1 , . . . , xn taking values over the set {0, 1, 2, 3, 4},
and m constraints c0 , . . . , cm−1 . For each constraint we are given a set of at most q variables which
are involved in this constraint and a list of satisfying assignments for these variables. Without loss of
generality, we make the following assumptions: (i) each constraint involves exactly q variables, because
if it has fewer variables, we can add to it new variables and augment the list of satisfying assignments so
that the value of the new variables is irrelevant (ii) all constraints have lists of satisfying assignments of
size C = 5q − 1; note that this is an upper bound on the size of the list of satisfying assignments since if a
constraint has 5q different satisfying assignments then it is always satisfied and thus is redundant; and for
each constraint which has fewer we add several copies of one of its satisfying assignments to its list (so
the list may repeat an assignment). We define two “large” numbers F = (4n + 1)(2n + 1) and A = 12
and we set our budget to be k = 8AF mn + 2F mn + 2F mq(C − 1) + n + 1.
We now construct our graph as follows:
1. We construct a vertex s and attach to it two leaves s1 , s2 .
2. For i ∈ {1, . . . , n} we construct a path on 5F m vertices: the vertices are labeled ui,j , for j ∈
{0, 1, . . . , 5F m − 1} and for each i, j the vertex ui,j is connected to ui,j+1 . We call these paths the
main part of our construction.
New Algorithms for Mixed Dominating Set
7
3. For each j ∈ {0, 1, . . . , F m − 1}, let j ′ = j mod m. We construct a checker gadget Hj as follows
(see Figure 2):
(a) For each satisfying assignment σ in the list of the constraint cj ′ , we construct an independent
set Zσ,j of size 2q (therefore, C such independent sets). The 2q vertices are partitioned so
that for each of the q variables involved in cj ′ we reserve two vertices. In particular, if xi is
1
2
involved in cj ′ we denote by zσ,j,i
, zσ,j,i
its two reserved vertices in Zσ,j .
(b) For each i ∈ {1, . . . , n} such that xi is involved in cj ′ , for each satisfying assignment σ in the
list of cj ′ , if σ sets xi to value α ∈ {0, 1, 2, 3, 4} we add the following edges:
2
1
) and (ui,5j+α , zσ,j,i
).
i. (ui,5j+α , zσ,j,i
1
ii. Let β = (α + 2) mod 5 and γ = (α + 3) mod 5. We add the edges (ui,5j+β , zσ,j,i
) and
2
(ui,5j+γ , zσ,j,i ).
(c) For all assignments σ 6= σ ′ of cj ′ , add all edges between Zσ,j and Zσ′ ,j .
(d) We construct an independent set Wj of size 2q(C − 1).
(e) Add all edges between Wj and Zσ,j , for all assignments σ of cj ′ .
(f) For each w ∈ Wj , we construct an independent set of size 2k + 1 whose vertices are all
connected to w and to s.
4. We define the consistency gadget Qi,j , for i ∈ {1, . . . , n} and j ∈ {0, . . . , F m − 1} which consists
of (see Figure 2):
(a) An independent set of size 8 denoted Ai,j .
(b) Five independent sets of size 2 each, denoted Bi,j,0 , Bi,j,1 , . . . , Bi,j,4 .
(c) For each ℓ, ℓ′ ∈ {0, . . . , 4} with ℓ 6= ℓ′ all edges from Bi,j,ℓ to Bi,j,ℓ′ .
(d) For each ℓ ∈ {0, . . . , 4} all possible edges from Bi,j,ℓ to Ai,j .
(e) For each a ∈ Ai,j , 2k + 1 vertices connected to a and to s.
(f) For each ℓ ∈ {0, . . . , 4} both vertices of Bi,j,ℓ are connected to ui,5j+ℓ .
(g) For each ℓ ∈ {0, . . . , 4} let ℓ′ = (ℓ + 2) mod 5 and ℓ′′ = (ℓ + 3) mod 5. One vertex of Bi,j,ℓ
is connected to ui,5j+ℓ′ and the other to ui,5j+ℓ′′ .
5. For each i ∈ {1, . . . , n} and j ∈ {0, . . . , F m − 1} construct A copies of the gadget Qi,j and
connect them to the main part as described above.
This completes the construction.
The target size is k, as defined above. We now argue that the reduction is correct and G has the desired
pathwidth.
Lemma 4 If ϕ is satisfiable, then there exists a mixed dominating set in G of size at most k.
Proof: Assume that ϕ admits some satisfying assignment ρ : {x1 , . . . , xn } → {0, 1, 2, 3, 4}. We construct a solution as follows:
8
Louis Dublois, Michael Lampis, Vangelis Th. Paschos
s1
xi
s2
s
Hj
...
Wj
Bi,j,1
Bi,j,3
...
Bi,j,0
Bi,j,4
ZσC ,j
Bi,j,2
..
.
Zσ1 ,j
Ai,j
Zσ2 ,j
x1
x2
Qi,j
s
s2
s1
Fig. 2: (Double edges between two sets of vertices represent all edges between the two sets.) Left: Checker gadget
Hj connected to the main part. Here we have considered an instance where the clause cj ′ has only two variables, x1
and x2 . Moreover, only the independent set Zσ1 ,j is shown connected to the main part. The possible assignment σ1 of
cj ′ is (x1 = 0, x2 = 2). We have supposed that this assignment is satisfiable, and we have marked the corresponding
mixed dominating set: filled vertices are in D, thick edges are in M . Right: Checker gadget Qi,j connected to the
main part, that is to the path corresponding to the variable xi . Only the independent sets Bi,j,1 and Bi,j,3 are shown
connected to the main part. We have supposed that the assignment (xi = 3) is satisfiable, and we have marked the
corresponding mixed dominating set: filled vertices are in D, thick edges are in M .
1. For each i ∈ {1, . . . , n} let α = ρ(xi ). For each j ∈ {0, . . . , F m − 1}, we select in the dominating
set the vertex ui,5j+α .
2. Let U ′ be the set of vertices ui,j of the main part which were not selected in the previous step and
which do not have a neighbor selected in the previous step. We add to the solution all edges of a
maximum matching of G[U ′ ], as well as all vertices of U ′ left unmatched by this matching.
3. For each j ∈ {0, . . . , F m − 1}, G contains a gadget Hj . Consider the constraint cj ′ for j ′ =
j mod m. Let σ be an assignment in the list of cj ′ that agrees with ρ (such a σ must exist, since
the
S constraint is satisfied by ρ). We add to the solution the edges of a perfect matching from Wj to
σ′ 6=σ Zσ′ ,j .
4. For each j ∈ {0, . . . , F m − 1} and i ∈ {1, . . . , n} we have added to the graph A copies of the
consistency
gadget Qi,j . For each copy we add to the solution a perfect matching from Ai,j to
S
ℓ6=ρ(xi ) Bi,j,ℓ .
5. We set s ∈ D.
9
New Algorithms for Mixed Dominating Set
Let us first argue why this solution has size at most k. In the first step we select F nm vertices. In the
second step we select at most F nm+ n elements. To see this, note that if ui,j is taken in the previous step,
then ui,j+5 is also taken (assuming j + 5 < 5F m), which leaves two adjacent vertices (ui,j+2 , ui,j+3 ).
These vertices will be matched in G[U ′ ] and in our solution. Note that, for a variable xi , if ρ(xi ) 6= 2,
then at most one vertex is left unmatched by the matching taken, so the cost for this variable is at most
F m + 1. If ρ(xi ) = 2, then at most two vertices are left matched by the matching taken, so the cost for
this variable is at most (F m − 1) + 2. Furthermore, for each Hj we select |Wj | = 2q(C − 1) edges. For
each copy of Qi,j we select 8 edges, for a total cost of 8AF mn. Taking into account s, the total cost is at
most F nm + F nm + n + 2F mq(C − 1) + 8AF mn + 1 = k.
Let us argue why the solution is feasible. First, all vertices ui,j and all edges connecting them to each
other are dominated by the first two steps of our selection since we have taken a maximum matching in
G[U ′ ] and all vertices left unmatched by this matching. Second, for each Hj , the vertex s together with the
endpoints of selected edges form a vertex cover of Hj , so all internal edges are dominated. Furthermore,
s dominates all vertices which are not endpoints of our solution, except Zσ,j , where σ is the selected
assignment of cj ′ , with j ′ = j mod m. We then need to argue that the vertices of Zσ,j and the edges
connecting it to the main part are covered.
1
2
Recall that the 2q vertices of Zσ,j are partitioned into pairs, with each pair zσ,j,i
, zσ,j,i
reserved for the
1
2
variable xi involved in cj ′ . We now claim that zσ,j,i , zσ,j,i are dominated by our solution, since we have
selected the vertex ui,5j+α , where α = ρ(xi ). Furthermore, ui,5j+β , ui,5j+γ , where β = (a + 2) mod m,
γ = (a + 3) mod m, belong in U ′ and therefore the edges incident to them are covered. Finally, to see
that the Qi,j gadgets are covered, observe that for each such gadget only 2 vertices of some Bi,j,ℓ are not
in P . The common neighbor of these vertices is in D, and their other neighbors in the main part are in P .
✷
The idea of the proof of the next Lemma is the following: by partitioning the graph into different parts
and lower bound the cost of these parts, we prove that if a mixed dominating set in G has not the same
form as in Lemma 4 in a sufficiently large copy, then it has size strictly greater than k, enabling us to
produce a satisfiable assignment for ϕ using the mixed dominating set which has the desired form.
Lemma 5 If there exists a mixed dominating set in G of size at most k, then ϕ is satisfiable.
Proof: Suppose that we are given, without loss of generality (Lemma 1), a nice mixed dominating set of
G of minimum cost. We therefore have a partition of V into V = D ∪ P ∪ I. Before proceeding, let us
|
define for a set S ⊆ V its cost as cost(S) = |S ∩ D| + |S∩P
2 . Clearly, cost(V ) ≤ k since |M | ≥ |P |/2,
and for disjoint sets S1 , S2 we have cost(S1 ∪ S2 ) = cost(S1 ) + cost(S2 ). Our strategy will therefore be
to partition V into different parts and lower bound their cost.
First, we give some notation. Consider some j ∈ {0, . . . , F m − 1} and i ∈ {1, . . . , n}: recall that
we have constructed A copies of the gadget Qi,j , call them Q1i,j , . . . , QA
i,j ; also we define the sets Si,j =
{ui,5j , ui,5j+1 , . . . , ui,5j+4 }. Now, for some j ∈ {0, . . . , F m − 1}, let:
[
[
Si,j ∪
Qri,j
(1)
S j = Hj ∪
i∈{1,...,n}
Claim 3 cost(Sj ) ≥ 2q(C − 1) + 2n + 8An.
r∈{1,...,A}
10
Louis Dublois, Michael Lampis, Vangelis Th. Paschos
Proof: We begin with some easy observations. First, it must be the case that s ∈ D. If not, either s1 or s2
are in D, which contradicts the niceness of the solution.
Consider some j ∈ {0, . . . , F m − 1} and i ∈ {1, . . . , n}. We will say that, for 1 ≤ r ≤ A, Qri,j is
normal S
if we have the following: Qri,j ∩ D = ∅ and there exists ℓ ∈ {0, . . . , 4} such that Qri,j ∩ P =
Ai,j ∪ ℓ′ 6=ℓ Bi,j,ℓ′ . In other words, Qri,j is normal if locally the solution has the form described in
Lemma 4.
We now observe that for all i, j, r we have cost(Qri,j ) ≥ 8. To see this, observe that if there exists
a ∈ Ai,j ∩ I, then the 2k + 1 neighbors of a must be in D ∪ P , so the solution
cannot have cost
S
k. Hence, Ai,j ⊆ D ∪ P . Furthermore, the maximum independent set of ℓ∈{0,...,4} Bi,j,ℓ is 2, so
S
|( ℓ∈{0,...,4} Bi,j,ℓ ) ∩ (D ∪ P )| ≥ 8. Following this reasoning we also observe that if Qri,j is not normal,
then we have cost(Qri,j ) > 8. In other words, 8 is a lower bound for the cost of every copy of Qi,j , which
can only be attained if a copy is normal.
Consider some j ∈ {0, . . . , F m − 1} and i ∈ {1, . . . , n} and supposeSthat none of the A copies of Qi,j
is normal. We will then arrive at a contradiction. Indeed, we have cost( r Qri,j ) ≥ 8A + A/2 ≥ 8A + 6.
We create another solution by doing the following: take the five vertices ui,5j , ui,5j+1 , . . . , ui,5j+4 , and
take in all Qi,j a matching so that Qi,j is normal. This has decreased the total cost, while keeping the
solution valid, which should not be possible.
We can therefore assume from now on that for each i, j at least one copy of Qi,j is normal, hence, there
exists ℓ ∈ {0, . . . , 4} such that Bi,j,ℓ ⊆ I in that copy.
Recall that Si,j = {ui,5j , ui,5j+1 , . . . , ui,5j+4 }. We claim that for all i ∈ {1, . . . , n}, j ∈ {0, . . . , F m−
1}, we have cost(Si,j ) ≥ 2. Indeed, if we consider the normal copy of Qi,j which has Bi,j,ℓ ⊆ I, the
two vertices of Bi,j,ℓ have three neighbors in Si,j , and at least one of them must be in D to dominate the
vertices of Bi,j,ℓ .
In addition, we claim that for all j ∈ {0, . . . , F m − 1} we have cost(Hj ) ≥ 2q(C − 1). The reasoning
here is similar to Qi,j , namely, the vertices
S of Wj cannot belong to I (otherwise we get 2k + 1 vertices in
D ∪ P ) ; and from the 2qC vertices in σ Zσ,j at most 2q can belong to I.
We now have the lower bounds we need: cost(Sj ) ≥ 2q(C − 1) + 2n + 8An.
✷
Now, if for some j we have cost(Sj ) > 2q(C − 1) + 2n + 8An we will say that j is problematic.
Claim 4 There exists a contiguous interval J ⊆ {0, . . . , F m − 1} of size at least m(4n + 1) in which all
j ∈ J are not problematic.
Proof: Let L ⊆ {0, P
. . . , F m − 1} be the set of problematic indices. We claim that |L| ≤ 2n. Indeed, we
have cost(V ) = 1+ j∈{0,...,F m−1} cost(Sj ) ≥ 1+F m(2q(C −1)+2n+8An)+|L|/2 = k−n+|L|/2.
But since the total cost is at most k, we have |L|/2 ≤ n.
We will now consider the longest contiguous interval J ⊆ {0, . . . , F m − 1} such that all j ∈ J are not
problematic. We have |J| ≥ F m/(|L| + 1) ≥ m(4n + 1).
✷
Before we proceed further, we note that if j is not problematic, then for any i ∈ {1, . . . , n}, all edges
of M which have an endpoint in Si,j , must have their other endpoint also in the main part, that is, they
must be edges of the main paths. To see this note that if j is not problematic,
all Qi,j are normal, so there
S
∩ P . Similarly, in Hj the
are 8 vertices in Ai,j ∩ P which must be matched to the 8 vertices of ( ℓ Bi,j,ℓ ) S
2q(C − 1) vertices of Wj ∩ P must be matched to the 2q(C − 1) vertices of ( σ Zσ,j ) ∩ P , otherwise
we would increase the cost and j would be problematic.
New Algorithms for Mixed Dominating Set
11
Consider now a non-problematic j ∈ J and i ∈ {1, . . . , n} such that cost(Si,j ) = 2. We claim that the
solution must follow one of the five configurations below (see also Figure 1):
(a) ui,5j ∈ D and (ui,5j+2 , ui,5j+3 ) ∈ M .
(b) ui,5j+1 ∈ D and (ui,5j+3 , ui,5j+4 ) ∈ M .
(c) ui,5j+2 ∈ D, (ui,5j+4 , ui,5j+5 ) ∈ M , and (ui,5j−1 , ui,5j ) ∈ M .
(d) ui,5j+3 ∈ D and (ui,5j , ui,5j+1 ) ∈ M .
(e) ui,5j+4 ∈ D and (ui,5j+1 , ui,5j+2 ) ∈ M .
Indeed, these configurations cover all the cases where exactly one vertex of Si,j is in D and exactly
two are in P . This is a condition enforced by the fact that all of the Qi,j copies are normal, and that
cost(Si,j ) = 2.
Claim 5 There exists a contiguous interval J ′ ⊆ J of size at least m in which all j ∈ J ′ are not
problematic and for all j1 , j2 ∈ J ′ , Si,j1 and Si,j2 are in the same configuration.
Proof: Given the five configurations shown in Figure 1, we now make the following simple observations,
where statements apply for all i ∈ {1, . . . , n} and j such that j, j + 1 ∈ J:
• If Si,j is in configuration (a), then Si,j+1 is also in configuration (a). We note that in configuration
(a) vertex ui,5j+4 is not dominated, so Si,j+1 cannot be in configuration (b), (d) and (e) by this fact,
and cannot be in configuration (c) because otherwise cost(Si,j ) > 2.
• If Si,j is in configuration (b), then Si,j+1 is in configuration (a), (b), (c) or (d). We note that Si,j+1
cannot be in configuration (e) because otherwise the vertex ui,5(j+1) is not dominated.
• If Si,j is in configuration (c), then Si,j+1 is in configuration (c) or (d). We note that Si,j+1 cannot be in configuration (a) since D ∩ P = ∅, nor in configuration (b) and (e) because otherwise
cost(Si,j+1 ) > 2.
• If Si,j is in configuration (d), then Si,j+1 is in configuration (a) or (d). We note that Si,j+1 cannot
be in configuration (b) and (e) because otherwise the edge (ui,5j+4 , ui,5(j+1) ) is not dominated, nor
in configuration (c) because otherwise cost(Si,j ) > 2.
• If Si,j is in configuration (e), then Si,j+1 is in configuration (a), (b), (d) or (e). We note that Si,j+1
cannot be in configuration (c) since D ∩ P = ∅.
We will now say for some i ∈ {1, . . . , n}, j ∈ J, that j is shifted for variable i if j + 1 ∈ J but Si,j and
Si,j+1 do not have the same configuration. We observe that there cannot exist distinct j1 , j2 , j3 , j4 , j5 ∈ J
such that all of them are shifted for variable i. Indeed, if we draw a directed graph with a vertex for each
configuration, and an arc (u, v) expressing the property that the configuration represented by v can follow
the one represented by u, if we take into account the observations above, the graph will be a DAG with
maximum path length 4. Hence, a configuration cannot shift 5 times, as long as we stay in J (the part of
the graph where the minimum local cost is attained everywhere).
12
Louis Dublois, Michael Lampis, Vangelis Th. Paschos
By the above, the number of shifted indices j ∈ J is at most 4n. Hence, the longest contiguous interval
without shifted indices has length at least |J|/(4n + 1) ≥ m. Let J ′ be this interval.
✷
We are now almost done: we have located an interval J ′ ⊆ {0, . . . , F m − 1} of length at least m where
for all i ∈ {1, . . . , n} and all j1 , j2 ∈ J ′ we have the same configuration in Si,j1 and Si,j2 . We now
extract an assignment from this in the natural way: if ui,5j+ℓ ∈ D, for some j ∈ J ′ , ℓ ∈ {0, . . . , 4}, then
we set xi = ℓ. We claim this satisfies ϕ. Consider a constraint cj ′ of ϕ. There must exist j ∈ J ′ such that
j ′ = j mod m, because |J ′ | ≥ m and J ′ is contiguous. We therefore check Hj , where there exists σ such
that Zσ,j ⊆ I (this is because j is not problematic, that is, Hj attains the minimum cost). But because the
vertices and incident edges of Zσ,j are dominated, it must be the case that the assignment we extracted
✷
agrees with σ, hence cj ′ is satisfied.
We now show that the pathwidth of G is at most n + O(1).
Lemma 6 The pathwidth of G is at most n + O(q5q ).
Proof: We will show how to build a path decomposition. First, we can add s to all bags, so we focus on
the rest of the graph. Second, after removing s from the graph, some vertices become leaves. It is a wellknown fact that removing all leaves from a graph can only increase the pathwidth by at most 1. To see
this, let G′ be the graph obtained after deleting all leaves of G and suppose we have a path decomposition
of G′ of width w. We obtain a path decomposition of G by doing the following for every leaf v: find a
bag of width at most w that contains the neighbor of v and insert after this bag, a copy of the bag with v
added. Clearly, the width of the new decomposition is at most w + 1. Because of the above we will ignore
all vertices of G which become leaves after the removal of s.
For all j ∈ {0, . . . , F m − 1}, let Sj be defined as in Equation 1. We will show how to build a path
decomposition of G[Sj ] with the following properties:
• The first bag of the decomposition contains vertices ui,5j , for all i ∈ {1, . . . , n}.
• The last bag of the decomposition contains vertices ui,5j+4 , for all i ∈ {1, . . . , n}.
• The width of the decomposition is n + O(q5q ).
If we achieve the above then we can obtain a path decomposition of the whole graph: indeed, the sets Sj
partition all remaining vertices of the graph, while the only edges not covered by the above decompositions
are those between ui,5j+4 and ui,5(j+1) . We therefore place the decompositions of Sj in order, and then
between the last bag of the decomposition of Sj and the first bag of the decomposition of Sj+1 we have
2n “transition” bags, where in each transition step we add a vertex ui,5(j+1) in the bag, and then remove
ui,5j+4 .
Let us now show how to obtain a decomposition of G[Sj ], having fixed the contents of the first and last
bag. First, Hj has order O(q5q ), so we place all its vertices to all bags. The remaining graph is a union of
paths of length 4 with the Qi,j gadgets attached. We therefore have a sequence of O(n) bags, where for
each i ∈ {1, . . . , n} we add to the current bag the vertices of Si,j , then add and remove one after another
whole copies of Qi,j , then remove Si,j except for ui,5j+4 .
✷
We are now ready to present the main result of this section. By putting together Lemmas 4, 5, 6 and the
negative result for q-CSP-5 (Lemma 3), we get the following theorem:
New Algorithms for Mixed Dominating Set
13
Theorem 6 Under SETH, for all ε > 0, no algorithm solves M IXED D OMINATING S ET in time O∗ ((5 −
ε)pw ), where pw is the input graph’s pathwidth.
Proof: Fix ε > 0 and let q be sufficiently large so that Lemma 3 is true. Consider an instance ϕ of q-CSP5. Using our reduction, create an instance (G, k) of M IXED D OMINATING S ET. Thanks to Lemma 4 and
Lemma 5, we know that ϕ is satisfiable if and only if there exists a mixed dominating set of size at most
k in G.
Suppose there exists an algorithm which solves M IXED D OMINATING S ET in time O∗ ((5 − ε)pw ).
With this algorithm and our reduction, we can determine if ϕ is satisfiable in time O∗ ((5 − ε)pw ), where
pw = n + O(q5q ) = n + O(1), so the total running time of this procedure is O∗ ((5 − ε)n ), contradicting
the SETH.
✷
4 Exact Algorithm
In this section, we describe an algorithm for the M IXED D OMINATING S ET problem running in time
O∗ (1.912n). Let us first give an overview of our algorithm. Consider an instance G = (V, E) of the
M IXED D OMINATING S ET problem and fix, for the sake of the analysis, an optimal solution which is a
nice mixed dominating set D ∪ M . Such an optimal solution must exist by Lemma 1, so suppose it gives
the nice mds partition V = D ∪ P ∪ I.
By Lemma 2, there exists a minimal vertex cover C of G for which D ⊆ C ⊆ D ∪ P . Our first step is
to “guess” C, by enumerating all minimal vertex covers of G. This decreases our search space, since we
can now assume that vertices of C only belong in D ∪ P , and vertices of V \ C only belong in P ∪ I.
For our second step, we branch on the vertices of V , placing them in D, P , or I. The goal of this
branching is to arrive at a situation where our partial solution dominates V \ C. The key idea is that
any vertex of C that may belong in D must have at least two private neighbors, hence this allows us to
significantly speed up the branching for low-degree vertices of D. Finally, once we have a partial solution
that dominates all of V \ C, we show how to complete this optimally in polynomial time using a minimum
edge cover computation.
We now describe the three steps of our algorithm in order and give the properties we are using step by
step. In the remainder we assume that G has no isolated vertices (since these are handled by taking them
in the solution). Therefore, by Lemma 1 there exists an optimal nice mixed dominating set. Denote the
corresponding partition as V = D ∪ P ∪ I.
Step 1: Enumerate all minimal vertex covers of G, which takes time O∗ (3n/3 ) by a result of Moon and
Moser (1965). For each such vertex cover C we execute the rest of the algorithm. In the end output the
best solution found.
Thanks to Lemma 2, there exists a minimal vertex cover C with D ⊆ C ⊆ D ∪ P . Since we will
consider all minimal vertex covers, in the remainder we focus on the case where the set C considered
satisfies this property. Let Z = V \ C. Then Z is an independent set of G. We now get two properties we
will use in the branching step of our algorithm:
1. For all u ∈ C, u can be either in D or in P , because C ⊆ D ∪ P .
2. For all v ∈ Z, v can be either in P or in I, because D ⊆ C.
14
Louis Dublois, Michael Lampis, Vangelis Th. Paschos
Step 2: Branch on the vertices of V as described below.
The branching step of our algorithm will be a set of Reduction and Branching Rules over the vertices
of C or Z. In order to describe a recursive algorithm, it will be convenient to consider a slightly more
general version of the problem: in addition to G, we are given three disjoint sets Df , Pf , Pf′ ⊆ V , and the
question is to build a nice mds partition V = D ∪ P ∪ I of minimum cost which satisfies the following
properties: Df ⊆ D ⊆ C, Pf ⊆ P ∩ C, and Pf′ ⊆ P ∩ Z. Clearly, if Df = Pf = Pf′ = ∅ we have
the original problem and all properties are satisfied. We will say that a branch where all properties are
satisfied is good, and our proof of correctness will rely on the fact that when we branch on a good instance,
at least one of the produced branches is good. The intuitive meaning of these sets is that when we decide
in a branch that a vertex belongs in D or in P in the optimal partition we place it respectively in Df , Pf
or Pf′ (depending on whether the vertex belongs in C or Z).
We now describe a series of Rules which, given an instance of M IXED D OMINATING S ET and three
sets Df , Pf , Pf′ , will recursively produce subinstances where vertices are gradually placed into these sets.
Our algorithm will consider the Reduction and Branching Rules in order and apply the first Rule that can
be applied. Note that we say that a vertex u is decided if it is in one of the sets Df ⊆ D, Pf ⊆ P , or
Pf′ ⊆ P . All the other vertices are considered undecided.
Throughout the description that follows, we will use U to denote the set of undecided vertices which
are not dominated by Df , that is, U = V \ (Df ∪ Pf ∪ Pf′ ∪ (N (Df ) ∩ Z)). We will show that when no
rule can be applied, U is empty, that is, all vertices are decided or dominated by Df . In the third step of
our algorithm we will show how to complete the solution in polynomial time when U is empty. Since our
Rules do not modify the graph, we will describe the subinstances we branch on by specifying the tuple
(Df , Pf , Pf′ ).
To ease notation, let UC = U ∩ C and UZ = U ∩ Z. Recall that for u ∈ V , we use dUC (u) and dUZ (u)
to denote the size of the sets N (u) ∩ UC = NUC (u) and N (u) ∩ UZ = NUZ (u), respectively.
C
Z
Df
I
UC
UZ
Pf
Pf′
Fig. 3: Partition of V = C ∪ Z, of C = Df ∪ Pf ∪ UC , and of Z = Pf′ ∪ I ∪ UZ during the process of the algorithm,
where I = N (Df ) ∩ Z. The only edges drawn show that I is dominated by Df .
We will present each Rule individually and directly after explain why it is correct and its associated
running-time, to ease presentation while having a consistent analysis.
Reduction Rule (R1): If there exists u ∈ UC such that dUZ (u) ≤ 1, then put u in Pf , that is, recurse
on the instance (Df , Pf ∪ {u}, Pf′ ).
New Algorithms for Mixed Dominating Set
15
• Observe that no neighbor of u in UC can be private neighbor of u since UC ⊆ C ⊆ D ∪ P , and
because dUZ (u) ≤ 1, the vertex u can have at most one private neighbor, so it must be the case that
u ∈ P.
Reduction Rule (R2): If there exists v ∈ UZ such that dUC (v) = 0, then put u in Pf′ , that is, recurse
on the instance (Df , Pf , Pf′ ∪ {v}).
• The vertex v must be dominated, but it has no neighbor in UC , so it must be the case that v ∈ P .
Now that we have presented the two Reduction Rules which we first apply in our algorithm, we will
describe the Branching Rules. Thus, we need first to define our measure of progress. We define it to be
the size of the set {u ∈ UC | dUZ (u) ≥ 2} ∪ {u ∈ UZ | dUC (u) ≥ 1}. In other words, we count the
undecided vertices of UC that have at least two undecided, non-dominated vertices in UZ , and the undecided, non-dominated vertices of UZ that have at least one undecided neighbor in C. This is motivated by
the fact that undecided vertices that do not respect these degree bounds are eliminated by the Reduction
Rules and hence do not affect the running time. Let l denote the number of the vertices that we counted
according to this measure. Clearly, l ≤ n. Let T (l) be the maximum number of branches produced for an
instance where the measure has value l. We now consider each Branching Rule individually:
Branching Rule (B1): If there exists u ∈ UC such that dUZ (u) ≥ 4, then branch on the following two
subinstances: (Df ∪ {u}, Pf , Pf′ ) and (Df , Pf ∪ {u}, Pf′ ).
• Branching Rule B1 is correct from UC ⊆ C ⊆ D ∪ P .
• We have T (l) ≤ T (l − 1) + T (l − 5), since in the branch where u ∈ Df at least 4 vertices of UZ
become dominated.
• T (l) ≤ T (l − 1) + T (l − 5) gives x5 = x4 + 1 with root r < 1.3248.
Note that we may now assume that all vertices of UC have dUZ ∈ {2, 3}. The following two rules
eliminate vertices u ∈ UC with dUZ (u) = 2.
Branching Rule (B2.1): If there exists u1 , u2 ∈ UC such that dUZ (u1 ) = 3, dUZ (u2 ) = 2, and
NUZ (u1 ) ∩ NUZ (u2 ) 6= ∅ then branch on the following instances: (Df ∪ {u1 }, Pf ∪ {u2 }, Pf′ ) and
(Df , Pf ∪ {u1 }, Pf′ ).
• Branching Rule B2.1 is correct because if u1 ∈ D, then u2 cannot have two private neighbors and
it is forced to be in P .
• We have T (l) ≤ T (l − 1) + T (l − 5), since in the branch where u1 ∈ Df we also set u2 ∈ Pf and
3 vertices of UZ become dominated.
• T (l) ≤ T (l − 1) + T (l − 5) gives x5 = x4 + 1 with root r < 1.3248.
Branching Rule (B2.2): If there exists u ∈ UC with dUZ (u) = 2 we branch on the instances (Df ∪
{u}, Pf , Pf′ ) and (Df , Pf ∪ {u}, Pf′ ).
• Branching Rule B2.2 is correct again from UC ⊆ C ⊆ D ∪ P .
16
Louis Dublois, Michael Lampis, Vangelis Th. Paschos
• Let N (u) ∩ UZ = {v1 , v2 }. Note that if dUC (v1 ) ≥ 2, then all vertices u′ ∈ UC adjacent to v1
must have dUZ (u′ ) = 2. This is because Rules R1, B1 and B2.1 do not apply. Let s be the number
of vertices of {v1 , v2 } which have at least two neighbors in UC . We consider the following cases:
– If s = 0, then T (l) ≤ T (l − 3) + T (l − 3), because when u ∈ Pf , v1 , v2 no longer contribute
to l (they have no other neighbor in UC ).
– If s = 1, then T (l) ≤ T (l − 4) + T (l − 2). To see this, let u′ ∈ UC be a neighbor of {v1 , v2 }.
As we said, dUZ (u′ ) = 2, so setting u ∈ Df will activate Rule R1 on u′ , decreasing l by 4.
On the other hand, if u ∈ Pf , then one of {v1 , v2 } is deleted by Rule R2.
– If s = 2 and |(N (v1 ) ∪ N (v2 )) ∩ UC | = 2. Then we must have NUC (v1 ) = NUC (v2 ) =
{u, u′ } for some u′ ∈ UC with dUZ (u′ ) = 2. In this case Rule B2.2 (and Rules R1, R2) will
be applied successively to u, u′ giving T (l) ≤ 3T (l − 4).
– If none of the above applies, then s = 2 and we have T (l) ≤ T (l − 5) + T (l − 1), because
when u ∈ Df we force at least two other vertices of UC into Pf .
•
–
–
–
–
T (l) ≤ 2T (l − 3) gives x3 = 2 with root r < 1.2600.
T (l) ≤ T (l − 4) + T (l − 2) gives x4 = x2 + 1 with root r < 1.2721.
T (l) ≤ 3T (l − 4) gives x4 = 3 with root r < 1.3161.
T (l) ≤ T (l − 5) + T (l − 1) gives x5 = x4 + 1 with root r < 1.3248.
We now have that all vertices u ∈ UC have dUZ (u) = 3. Let us now branch on vertices of UZ to ensure
that these also do not have too low degree.
Branching Rule (B3.1): If there exists v ∈ UZ with dUC (v) = 1 let NUC (v) = {u}. We branch on
the instances (Df ∪ {u}, Pf , Pf′ ) and (Df , Pf ∪ {u}, Pf′ ).
• Branching Rule B3.1 is correct again from UC ⊆ C ⊆ D ∪ P .
• We have T (l) ≤ T (l − 4) + T (l − 2), since when u ∈ Pf we apply Rule R2.
• T (l) ≤ T (l − 4) + T (l − 2) gives x4 = x2 + 1 with root r < 1.2721.
Branching Rule (B3.2): If there exists v ∈ UZ with dUC (v) = 2 let NUC (v) = {u1 , u2 }. We branch
on the instances (Df ∪ {u1 }, Pf , Pf′ ), (Df ∪ {u2 }, Pf ∪ {u1 }, Pf′ ), and (Df , Pf ∪ {u1 , u2 }, Pf′ ).
• Branching rule B3.2 is correct since we have the three following cases: u1 ∈ D; or u1 ∈ P and
u2 ∈ D; or u1 and u2 ∈ P .
• We have T (l) ≤ T (l − 3) + T (l − 4) + T (l − 5) using the fact that dUZ (u1 ) = dUZ (u2 ) = 3 and
the fact that Rule R2 is applied when u1 , u2 ∈ Pf .
• T (l) ≤ T (l − 3) + T (l − 4) + T (l − 5) gives x5 = x2 + x + 1 with root r < 1.3248.
If we cannot apply any of the above Rules, for all u ∈ UC we have dUZ (u) = 3 and for all v ∈ UZ
we have dUC (v) ≥ 3. We now consider three remaining cases: (i) two vertices of UC have two common
neighbors in UZ ; (ii) there exists a vertex v ∈ UZ with dUC (v) = 3; (iii) everything else.
Branching Rule (B4): If there exist u1 , u2 ∈ UC and v1 , v2 ∈ UZ with (ui , vj ) ∈ E for all i, j ∈
{1, 2}, then we branch on the instances (Df ∪ {u1 }, Pf ∪ {u2 }, Pf′ ) and (Df , Pf ∪ {u1 }, Pf′ ).
New Algorithms for Mixed Dominating Set
17
• Branching Rule B4 is correct because if u1 ∈ D, then u2 cannot have two private neighbors since
dUZ (u2 ) = 3.
• We have T (l) ≤ T (l − 1) + T (l − 5).
• T (l) ≤ T (l − 5) + T (l − 1) gives x5 = x4 + 1 with root r < 1.3248.
Branching Rule (B5): If there exists v ∈ UZ with dUC (v) = 3, let NUC (v) = {u1 , u2 , u3 } and for
i ∈ {1, 2, 3} let Xi = {w ∈ UC \ {u1 , u2 , u3 } | N (w) ∩ N (ui ) ∩ (UZ \ {v}) 6= ∅}, that is, Xi is the
set of vertices of UC that share a neighbor with ui in UZ other than v. Then we branch on the following
8 instances: (i) the instance (Df , Pf ∪ {u1 , u2 , u3 }, Pf′ ∪ {v}} (ii) for i ∈ {1, 2, 3}, we produce the
instances (Df ∪ {ui }, Pf ∪ ({u1 , u2 , u3 } \ {ui }), Pf′ ) (iii) for i, j ∈ {1, 2, 3}, with i < j we produce
the instances (Df ∪ {ui , uj }, Pf ∪ ({u1 , u2 , u3 } \ {ui , uj }) ∪ Xi ∪ Xj , Pf′ ) (iv) we produce the instance
(Df ∪ {u1 , u2 , u3 }, Pf ∪ X1 ∪ X2 ∪ X3 , Pf′ ).
• Branching Rule B5 is correct since we have the following cases: (i) all vertices u1 , u2 and u3 are in
P ; (ii) or exactly one of them is in D; (iii) or exactly two of them are in D; (iv) or all of them are
in D. Note first that u1 , u2 and u3 only share v as neighbor in UZ since Branching Rule B4 is not
triggered. Branching Rule B5 is correct by the following arguments:
(i) v must be dominated so it must be the case that v ∈ P ;
(ii) The two vertices not in D necessarily are in P ;
(iii) Since ui and uj share v as common neighbor and both have exactly three neighbors in UZ , the
vertices of Xi and Xj have to be in P because otherwise ui and uj do not have two private
neighbors;
(iv) For the same reason, the vertices of X1 , X2 and X3 have to be in P .
• We have T (l) ≤ T (l − 4) + 3T (l − 6) + 3T (l − 12) + T (l − 14). Indeed we have: (i) the branch
where u1 , u2 , u3 ∈ Pf , which also effectively eliminates v; (ii) the branch where u1 ∈ Df and
u2 , u3 ∈ Pf , which also dominates NUZ (u1 ) (plus two more symmetric branches); (iii) the branch
where u1 , u2 ∈ Df and u3 ∈ Pf (plus two more symmetric branches). Here we first observe that
{v, u1 , u2 , u3 } ∪((N (u1 ) ∪ N (u2 )) ∩ UZ ) contains exactly 8 distinct vertices, because dUZ (u1 ) =
dUZ (u2 ) = 3, while NUZ (u1 ) and NUZ (u2 ) share exactly one common element (v), since Rule B4
does not apply. In addition to eliminating these 8 vertices, this branch also eliminates X1 ∪ X2 . We
argue that X1 alone contains at least 4 additional vertices, distinct from the 8 eliminated vertices.
Let NUZ (u1 ) = {v, w1 , w2 }. We know that dUC (w1 ), dUC (w2 ) ≥ 3, since Rule B3.2 did not
apply. Furthermore, since w1 , w2 share u1 as a common neighbor in UC , they cannot share another,
as Rule B4 would apply. In addition, neither w1 nor w2 can be connected to u2 or u3 , since together
with v, u1 this would active Rule B4. Hence, we eliminate at least 12 vertices for each of these
three branches. Finally, the case (iv) where u1 , u2 , u3 ∈ Df is similar, except we also eliminate
two additional neighbors of u3 in UZ which now become dominated.
• T (l) ≤ T (l − 4) + 3T (l − 6) + 3T (l − 12) + T (l − 14) gives x14 = x10 + 3x8 + 3x2 + 1 with
root r < 1.3252.
18
Louis Dublois, Michael Lampis, Vangelis Th. Paschos
Branching Rule (B6): Consider u ∈ UC and let NUZ (u) = {v1 , v2 , v3 }. We branch on the following
instances: (Df , Pf ∪ {u}, Pf′ ), (Df ∪ {u}, Pf ∪ (NUC (v1 ) \ {u}), Pf′ ), and (Df ∪ {u}, Pf ∪ ((NUC (v2 ) ∪
NUC (v3 )) \ {u}), Pf′ ).
• Branching Rule B6 is correct because if u ∈ D, then either v1 is one of its private neighbors, or
both v2 and v3 are its private neighbors.
• We have T (l) ≤ T (l − 1) + T (l − 7) + T (l − 10). Here we use the fact that since Rule B5 does
not apply, dUC (vi ) ≥ 4 and also that since Rule B4 does not apply, N (vi ) ∩ N (vj ) ∩ UC = {u}
for all i, j ∈ {1, 2, 3}. Hence, the branch where u ∈ Df and v1 is a private neighbor of u forces
three more vertices of UC into Pf , and the branch where v2 , v3 are private neighbors of u forces six
more vertices of UC into Pf .
• T (l) ≤ T (l − 1) + T (l − 7) + T (l − 10) gives x10 = x9 + x3 + 1 with root r < 1.3001.
Our algorithm applies the above Rules in order as long as possible. Since we have proved the correctness of our Rules individually, we can explain what happens when no Rule is applicable. But first, let us
establish a useful property.
Lemma 7 If none of the Rules can be applied then U = ∅.
Proof: Observe that by applying rules R1, B1, B2.2, B6, we eventually eliminate all vertices of UC , since
these rules alone cover all the cases for dUZ (u) for any u ∈ UC . So, if none of these rules applies, UC is
empty. But then applying R2 will also eliminate UZ , which makes all of U empty.
✷
Step 3: When U is empty, reduce the problem to E DGE C OVER.
We now show how to complete the solution in polynomial time.
Lemma 8 Let (Df , Pf , Pf′ ) be a good tuple such that no Rule can be applied. Then it is possible to
construct in polynomial time a mixed dominating set of size at most |D| + |M |.
Proof: Because no Rule can be applied, by Lemma 7, we have that U = V \ (Df ∪ Pf ∪ Pf′ ∪ (N (Df ) \
C)) = ∅.
Let M ′ be a minimum edge cover of G[Pf ∪ Pf′ ]. Then, we claim that |D| + |M | ≥ |Df | + |M ′ |. First,
|D| ≥ |Df | because Df ⊆ D. We now claim that |M | ≥ |M ′ |. Note that Pf ⊆ P ∩ C and Pf′ ⊆ P ∩ Z,
so Pf ∪ Pf′ ⊆ P . M is an edge cover of G[P ], and M ′ is a minimum edge cover of G[Pf ∪ Pf′ ], with
Pf ∪ Pf′ ⊆ P , so necessarily |M | ≥ |M ′ |.
Since E DGE C OVER is in P, we have constructed in polynomial time a mixed dominating set of size at
most |D| + |M |.
✷
We can now prove the main result of this section :
Theorem 7 M IXED D OMINATING S ET can be solved in time O∗ (1.912n) and polynomial space.
Proof: The algorithm first enumerates all minimal vertex covers C; then applies all Rules exhaustively;
and then for each branch invokes Lemma 8. In the end we output the best solution found.
By Lemma 1 and Lemma 2 we obtain (assuming we have already taken isolated vertices) that there
exists an optimal nice mds partition V = D ∪ P ∪ I and a minimal vertex cover with D ⊆ C ⊆ D ∪ P , so
New Algorithms for Mixed Dominating Set
19
consider the execution of the algorithm on C. We have proven that one of the branches will end up with a
good tuple, and by Lemma 7 when we can no longer apply any Rules, U is empty, so we correctly solve
the resulting instance in polynomial time by Lemma 8. Hence, the algorithm produces a correct solution.
Let us now analyze the running time. First, enumerating all minimal vertex cover takes time at most
O∗ (3n/3 ), which is also an upper bound on the number of such covers by a result of Moon and Moser
(1965). Moreover, we observe that we can decide if a Rule applies in polynomial time, and the algorithm
of Lemma 8 runs in polynomial time. We therefore only need to bound the number of subinstances the
branching step will produce, as a function of n.
Of all the branching vectors, the worst case is given by Branching Rule B5, which leads to a complexity
of 1.3252l . Taking into account the cost of enumerating all minimal vertex covers and the fact that l ≤ n,
the running time of our algorithm is O∗ (3n/3 · 1.3252n) = O∗ (1.912n ).
✷
5 FPT Algorithm
In this section, we describe an algorithm for the M IXED D OMINATING S ET problem parameterized by
the solution size k running in time O∗ (3.510k ). Let us give an overview of our algorithm. Consider an
instance (G = (V, E), k) of the M IXED D OMINATING S ET problem parameterized by k, and fix, for the
sake of the analysis, a solution of size k which is a nice mixed dominating set. If a solution of size k
exists, then a nice solution must exist by Lemma 1 (assuming without loss of generality that G has no
isolated vertices), so suppose it gives the nice mds partition V = D ∪ P ∪ I. Note that for such a solution
D ∪ M of size k, we have k ≥ |D| + |P |/2 since |M | ≥ |P |/2.
Our algorithm begins by performing a branching step similar in spirit to that of the algorithm of Theorem 7, trying to guess a part of this partition. In particular, we gradually build up two disjoint sets Df , Pf
which store the vertices that must belong to D and P respectively. Let U = V \ (Df ∪ Pf ) be the set
of “undecided vertices” and, furthermore, let U ∗ = U \ N (Df ) be the set of undecided vertices which
are not currently dominated by the solution. Our algorithm proceeds in the following steps: (i) first, we
branch with the goal of eliminating U ∗ , that is, with the goal of finding a partial solution that dominates
all vertices (ii) then, because the considered solution is nice, we observe that we cannot place any more
vertices in Df ; we therefore perform a simple “vertex cover”-type branching in G[U ], until we arrive at a
situation where the maximum degree of G[U ] is 1 (iii) then, we invoke a result of Xiao and Sheng (2019)
to complete the solution in polynomial time. As with the algorithm of Theorem 7, we use the fact that the
sought solution is nice to speed up the branching on low-degree vertices.
Step 1: Branch to eliminate U ∗ .
Recall that we have fixed for the analysis an optimal nice mds partition V = D ∪ P ∪ I. As with the
algorithm of Theorem 7, it will be convenient to describe a recursive algorithm which is given two disjoint
sets of vertices Df , Pf . We will say that the sets (Df , Pf ) are good if Df ⊆ D and Pf ⊆ P . Clearly,
these conditions are satisfied if Df = Pf = ∅. We will describe a series of Rules, which must be applied
exhaustively, always selecting the first Rule that can be applied. For correctness, we will show that for
each branching Rule, if the current instance is characterized by a good pair (Df , Pf ), at least one of the
produced instances is also good. When no Rule can be applied, we will proceed to the next step.
Recall that we denote U = V \ (Df ∪ Pf ) and U ∗ = U \ N (Df ). Our strategy will be to branch in
a way that eliminates U ∗ as quickly as possible because, as we will see in the next step, once this is done
the problem becomes much easier. We begin branching from low-degree vertices, which will allow us to
20
Louis Dublois, Michael Lampis, Vangelis Th. Paschos
assume that all remaining vertices are high-degree as we consider later Rules. Here, for a vertex u ∈ U ∗
we are mostly interested in its degrees in G[U ] and in G[U ∗ ]. Note that dU ∗ (u) ≤ dU (u) since U ∗ ⊆ U .
As in the algorithm of Theorem 7, we will present each Rule individually and directly after explain why
it is correct and its associated running-time. Recall for the sake of the analysis that an instance is good if
Df ⊆ D and Pf ⊆ P .
Sanity Check Rule: If |Df | +
|Pf |
2
> k, reject. If there exists u ∈ Df such that |NU ∗ (u)| ≤ 1, reject.
• The Sanity Check Rule will reject if either the currently decided vertices in Df and Pf have total
cost more than k (which implies that this is not a good instance, as the correct partition has cost
at most k); or if a vertex u ∈ Df has at most one private neighbor in U ∗ . Since the number of
private neighbors of u can only diminish if we add vertices to Df , if u ∈ D this would contradict
the niceness of the partition D ∪ P ∪ I. Hence, in this case also the current instance is not good.
Reduction Rule (R1): If there exists u ∈ U ∗ with dU (u) = 0, then put u in Pf , that is, recurse on the
instance (Df , Pf ∪ {u}).
• If the current instance is good, then u 6∈ D (because it would not have two private neighbors) and
u 6∈ I (because it would not be dominated). Hence, the new instance is also good.
Now that we have presented our Sanity Check Rule and our only Reduction Rule which we first apply
in our algorithm, we will describe the Branching Rules. Thus, we need first to define our measure of
progress. We define it to be l = 2k − 2|Df | − |Pf |. Initially, l = 2k, and we observe that because
of the Sanity Check Rule in all produced instances we have l ≥ 0. We will therefore upper bound the
number of produced instances by measuring how much each Branching Rule decreases l. Let T (l) be the
maximum number of branches produced for an instance where measure has value l. We now consider
each Branching Rule individually:
Branching Rule (B1): If there exists u ∈ U ∗ with dU (u) = 1, then let NU (u) = {v}. Branch on the
following two subinstances: (Df , Pf ∪ {u}) and (Df ∪ {v}, Pf ).
• We note that u 6∈ D, because it would not have two private neighbors. If u ∈ I, then v ∈ D,
because u must be dominated. Hence, one of the branches is good.
• We have T (l) ≤ T (l − 1) + T (l − 2).
• T (l) ≤ T (l − 1) + T (l − 2) gives x2 = x + 1 with root r < 1.6181.
We are now at a situation where all vertices u ∈ U ∗ have dU (u) ≥ 2.
Branching Rule (B2.1): If there exists u ∈ U ∗ with dU (u) = 2 and dU ∗ (u) ∈ {0, 1}, then let NU (u) =
{v1 , v2 }. Branch on the subinstances: (Df , Pf ∪ {u}), (Df ∪ {v1 }, Pf ∪ {v2 }), (Df ∪ {v2 }, Pf ∪ {v1 })
and (Df ∪ {v1 , v2 }, Pf ).
• We again have u 6∈ D, because it would not have two private neighbors. If u ∈ I, then {v1 , v2 } ⊆
D ∪ P and we consider all such possibilities, except v1 , v2 ∈ P , because u must be dominated.
• We have T (l) ≤ T (l − 1) + 2T (l − 3) + T (l − 4).
New Algorithms for Mixed Dominating Set
21
• T (l) ≤ T (l − 1) + 2T (l − 3) + T (l − 4) gives x4 = x3 + 2x + 1 with root r < 1.7944.
Before presenting Branching Rule 2.2, we make a simple observation we will use several times in the
rest of the algorithm: for a vertex u ∈ U ∗ with two neighbors v1 , v2 ∈ U , if we put u in Df with v1 and
v2 its private neighbors, then we must put (NU (v1 ) ∪ NU (v2 )) \ {u} in Pf in order to have v1 and v2 the
private neighbors of u.
Let us also introduce another helpful definition. For v1 , v2 ∈ U , we will say that {v1 , v2 } is a feasible
pair if |NU ∗ (v1 ) \ N (v2 )| ≥ 2 and |NU ∗ (v2 ) \ N (v1 )| ≥ 2. Informally, {v1 , v2 } is feasible if it is
possible that both v1 , v2 ∈ D. In other words, {v1 , v2 } is not feasible, if placing both vertices in Df
would immediately activate the Sanity Check rule because one of the two vertices would not have enough
private neighbors.
Branching Rule (B2.2): If there exists u ∈ U ∗ with dU (u) = 2, then let NU (u) = {v1 , v2 }. Branch
on the following subinstances: (Df ∪ {u}, Pf ∪ ((NU (v1 ) ∪ NU (v2 )) \ {u})), (Df , Pf ∪ {u}), (Df ∪
{v1 }, Pf ∪ {v2 }), (Df ∪ {v2 }, Pf ∪ {v1 }) and (Df ∪ {v1 , v2 }, Pf ).
• We have the same cases as before, but now it is possible that u ∈ D. However, in this case v1 , v2
must be private neighbors of u, hence (NU (v1 ) ∪ NU (v2 )) \ {u} must be a subset of P .
• Since B2.1 does not apply, we have v1 , v2 ∈ U ∗ , so dU (v1 ), dU (v2 ) ≥ 2. We consider the following
cases:
– If {v1 , v2 } is not a feasible pair, that is (without loss of generality) we have |NU ∗ (v1 ) \
N (v2 )| ≤ 1. First, we note that dU (v1 ) ≥ 2, since Rule B1 did not apply, so |NU (v1 )\{u}| ≥
1. Also, the Sanity Check Rule is activated for the instance where v1 , v2 ∈ Df . Taking into
account the remaining instances we have: T (l) ≤ T (l − 1) + 3T (l − 3).
– If {v1 , v2 } is a feasible pair then |(NU ∗ (v1 ) ∪ NU ∗ (v2 )) \ {u}| ≥ 4, because each of v1 , v2
has two non-dominated neighbors which are not neighbors of the other. We have T (l) ≤
T (l − 1) + 2T (l − 3) + T (l − 4) + T (l − 6).
•
– T (l) ≤ T (l − 1) + 3T (l − 3) gives x3 = x2 + 3 with root r < 1.8638.
– T (l) ≤ T (l − 1) + 2T (l − 3) + T (l − 4) + T (l − 6) gives x6 = x5 + 2x3 + x2 + 1 with root
r < 1.8199.
We are now at a situation where all vertices u ∈ U ∗ have dU (u) ≥ 3.
Branching Rule (B3.1): If there exists u ∈ U ∗ with dU (u) = 3 and dU ∗ (u) ≤ 2, then let NU (u) =
{v1 , v2 , v3 } and let v3 ∈ U \ U ∗ . We branch on (Df , Pf ∪ {u}), (Df ∪ {u}, Pf ∪ ((NU (v1 ) ∪ NU (v2 )) \
{u})), and for each non-empty S ⊆ {v1 , v2 , v3 } we branch on (Df ∪ S, Pf ∪ ({v1 , v2 , v3 } \ S)).
• We observe that if u ∈ D, then v1 , v2 must be its private neighbors, so again (NU (v1 ) ∪ NU (v2 )) \
{u} must be a subset of P . If u ∈ I we consider all partitions of NU (u) into D and P , while
ensuring that u is dominated.
• First note that if vi ∈ U ∗ , then dU (vi ) ≥ 3, since Rules B1-B2.2 do not apply, hence |NU (vi ) \
{u}| ≥ 2. Consider the following subcases:
22
Louis Dublois, Michael Lampis, Vangelis Th. Paschos
– dU ∗ (u) ≤ 1. Then the branch where u ∈ Df is immediately eliminated by the Sanity Check
Rule. For the remaining branches we have T (l) ≤ T (l −1)+3T (l −4)+3T (l −5)+T (l −6).
– dU ∗ (u) = 2, so NU ∗ (u) = {v1 , v2 }, and {v1 , v2 } is a feasible pair. Then |(NU (v1 ) ∪
NU (v2 )) \ {u}| ≥ 4. We have T (l) ≤ T (l − 1) + 3T (l − 4) + 3T (l − 5) + 2T (l − 6)
– dU ∗ (u) = 2, so NU ∗ (u) = {v1 , v2 }, and {v1 , v2 } is not a feasible pair. Then the Sanity
Check Rule eliminates the instances where {v1 , v2 } ⊆ D. Taking into account the remaining
instances we have T (l) ≤ T (l − 1) + 4T (l − 4) + 2T (l − 5).
•
– T (l) ≤ T (l − 1) + 3T (l − 4) + 3T (l − 5) + T (l − 6) gives x6 = x5 + 3x2 + 3x + 1 with
root r < 1.8205.
– T (l) ≤ T (l − 1) + 3T (l − 4) + 3T (l − 5) + 2T (l − 6) gives x6 = x5 + 3x2 + 3x + 2 with
root r < 1.8393.
– T (l) ≤ T (l − 1) + 4T (l − 4) + 2T (l − 5) gives x5 = x4 + 4x + 2 with root r < 1.8305.
Branching Rule (B3.2): If there exists u ∈ U ∗ with dU (u) = 3 such that there exist at least two feasible
pairs in NU (u), then we do the following. Let NU (u) = {v1 , v2 , v3 }. For each i, j ∈ {1, 2, 3}, with
i < j, branch on (Df ∪ {u}, Pf ∪ ((NU (vi ) ∪ NU (vj )) \ {u})). Furthermore, branch on the instances
(Df , Pf ∪{u}) and, for each non-empty S ⊆ {v1 , v2 , v3 } on the instance (Df ∪S, Pf ∪({v1 , v2 , v3 }\S)).
• We branch in a similar fashion as in Branching 3.1, except that for all i, j ∈ {1, 2, 3} with i < j,
we consider the case that vi , vj are private neighbors of u, when u ∈ D.
• We have v1 , v2 , v3 ∈ U ∗ . We again note that if {vi , vj } is feasible then |(NU (vi )∪NU (vj ))\{u}| ≥
4. Therefore, a branch corresponding to a feasible pair diminishes l by at least 6. We consider the
subcases:
– All three pairs from {v1 , v2 , v3 } are feasible. Then we get T (l) ≤ T (l − 1) + 3T (l − 4) +
3T (l − 5) + 4T (l − 6).
– Two of the pairs from {v1 , v2 , v3 } are feasible, and one, say {v1 , v2 } is not feasible. Then
the Sanity Check rule will eliminate the branches that have {v1 , v2 } ⊆ D. We therefore get
T (l) ≤ T (l − 1) + 4T (l − 4) + 2T (l − 5) + 2T (l − 6).
•
– T (l) ≤ T (l − 1) + 3T (l − 4) + 3T (l − 5) + 4T (l − 6) gives x6 = x5 + 3x2 + 3x + 4 with
root r < 1.8734.
– T (l) ≤ T (l − 1) + 4T (l − 4) + 2T (l − 5) + 2T (l − 6) gives x6 = x5 + 4x2 + 2x + 2 with
root r < 1.8672.
Branching Rule (B3.3): If there exists u ∈ U ∗ with dU (u) = 3, let NU (u) = {v1 , v2 , v3 } and branch on
the following instances: (Df , Pf ∪ {u}), (Df ∪ {u}, Pf ∪ (NU (v1 ) \ {u})), (Df ∪ {u}, Pf ∪ ((NU (v2 ) ∪
NU (v3 )) \ {u})), and for each non-empty S ⊆ {v1 , v2 , v3 } branch on (Df ∪ S, Pf ∪ ({v1 , v2 , v3 } \ S)).
• We make a variation of the previous branching by arguing that if u ∈ D then either v1 is its private
neighbor, or both v2 , v3 are its private neighbors.
New Algorithms for Mixed Dominating Set
23
• Now at least two pairs in {v1 , v2 , v3 } are not feasible (otherwise we would have applied B3.2).
Then, the Sanity Check Rule eliminates all branches where D contains an infeasible pair. From the
remaining branches we get T (l) ≤ T (l − 1) + 5T (l − 4) + T (l − 5).
• T (l) ≤ T (l − 1) + 5T (l − 4) + T (l − 5) gives x5 = x4 + 5x + 1 with root r < 1.8603.
We are now at a situation where all vertices u ∈ U ∗ have dU (u) ≥ 4. The next case we would
like to handle is that of a vertex u ∈ U ∗ with dU (u) = dU ∗ (u) = 4. For such a vertex let NU (u) =
{v1 , v2 , v3 , v4 }. Let us now give one more helpful definition. For some i ∈ {1, 2, 3, 4}, we will say that
vi is compatible for u, if NU ∗ (vi ) contains at least two vertices which are not neighbors of any vj , for
j ∈ {1, 2, 3, 4} \ {i}. In other words, vi is compatible if it has two private neighbors, which will remain
private even if we put all of {v1 , v2 , v3 , v4 } in Df . Using this definition, we distinguish the following two
cases:
Branching Rule (B4.1): If there exists u ∈ U ∗ with dU (u) = dU ∗ (u) = 4, NU (u) = {v1 , v2 , v3 , v4 },
and all vi are compatible for u, then we branch on the following instances: (Df , Pf ∪ {u}); for each
i, j ∈ {1, 2, 3, 4} with i < j we branch on (Df ∪ {u}, Pf ∪ ((NU (vi ) ∪ NU (vj )) \ {u})); for each
non-empty subset S ⊆ NU (u), let S c = NU (u) \ S, branch on (Df ∪ S, Pf ∪ S c ).
• The branching is similar to B3.2: if u ∈ D, then two of its neighbors must be private and we
consider all possibilities.
• If all vi ∈ U ∗ and all vi are compatible for u that means that for all i, j ∈ {1, 2, 3, 4}, with i < j,
we have |(NU (vi ) ∪ NU (vj )) \ {u}| ≥ 5, where we use that vi has at least two neighbors in U
which are not connected to vj (and vice-versa) and that dU (vi ), dU (vj ) ≥ 4 since previous Rules
do not apply. We therefore have T (l) ≤ T (l − 1) + 4T (l − 5) + 6T (l − 6) + 10T (l − 7) + T (l − 8).
• T (l) ≤ T (l−1)+4T (l−5)+6T (l−6)+10T (l−7)+T (l−8) gives x8 = x7 +4x3 +6x2 +10x+1
with root r < 1.8595.
If the previous rule does not apply, vertices u ∈ U ∗ with dU (u) = 4 have either dU ∗ (u) ≤ 3 or a
neighbor vi ∈ NU (u) is not compatible for u.
Branching Rule (B4.2): If there exists u ∈ U ∗ with dU (u) = 4, then let NU (u) = {v1 , v2 , v3 , v4 }.
Suppose without loss of generality that for all 1 ≤ j ≤ dU ∗ (u) we have vj ∈ U ∗ (that is, vertices of
NU ∗ (u) are ordered first), and that if there exists a feasible pair in NU ∗ (u), then {v1 , v2 } is feasible. We
produce the instances: (Df , Pf ∪ {u}); for each non-empty subset S ⊆ NU (u), let S c = NU (u) \ S,
we branch on (Df ∪ S, Pf ∪ S c ); if dU ∗ (u) ≥ 2 we produce the branch (Df ∪ {u}, Pf ∪ ((NU (v1 ) ∪
NU (v2 )) \ {u})); for 3 ≤ j ≤ dU ∗ (u) we produce the branch (Df ∪ {u}, Pf ∪ (NU (vj ) \ {u})).
• Either u ∈ P (which we consider), or u ∈ I, so we consider all partitions of NU (u) into D, P that
dominate u, or u ∈ D. For the latter to happen it must be the case that dU ∗ (u) ≥ 2. In that case,
either v1 , v2 are both private neighbors, or v3 is a private neighbor (if v3 ∈ U ∗ ), or v4 is a private
neighbor (if v4 ∈ U ∗ ).
•
– We first handle the case where dU ∗ (u) ≤ 3. Recall that, if vi ∈ U ∗ , then dU (vi ) ≥ 4
(otherwise one of the previous Rules applies), so the (at most two) branches where u ∈ Df
diminish l by at least 5. We have T (l) ≤ T (l−1)+6T (l−5)+6T (l−6)+4T (l−7)+T (l−8).
24
Louis Dublois, Michael Lampis, Vangelis Th. Paschos
– If dU ∗ (u) = 4, we note that it cannot be the case that {v1 , v2 , v3 , v4 } ⊆ D, since this would
mean that all vi are compatible for u and Rule B4.1 would have applied. The branch corresponding to S = {v1 , v2 , v3 , v4 } is therefore eliminated by the Sanity Check Rule. We
consider two subcases:
* At least one feasible pair exists in NU ∗ (u), therefore, {v1 , v2 } is a feasible pair. Then
T (l) ≤ T (l − 1) + 6T (l − 5) + 6T (l − 6) + 5T (l − 7).
* No feasible pair exists. In this case the Sanity Check Rule eliminates all sets S ⊆ NU (u)
that contain two or more vertices. We have T (l) ≤ T (l − 1) + 7T (l − 5).
•
– T (l) ≤ T (l−1)+6T (l−5)+6T (l−6)+4T (l−7)+T (l−8) gives x8 = x7 +6x3 +6x2 +4x+1
with root r < 1.8665.
– T (l) ≤ T (l − 1) + 6T (l − 5) + 6T (l − 6) + 5T (l − 7) gives x7 = x6 + 6x2 + 6x + 5 with
root r < 1.8700.
– T (l) ≤ T (l − 1) + 7T (l − 5) gives x5 = x4 + 7 with root r < 1.7487.
We are now at a situation where all vertices u ∈ U ∗ have dU (u) ≥ 5.
Branching Rule (B5): If there exists u ∈ U ∗ with dU (u) ∈ {5, 6, 7, 8}, then select such a u with
minimum dU (u) and let i = dU (u) and NU (u) = {v1 , . . . , vi }. Again, without loss of generality we
order the vertices of NU ∗ (u) first, that is, for 1 ≤ j ≤ dU ∗ (u), we have vj ∈ U ∗ . Branch on the
following: (Df , Pf ∪ {u}); for each non-empty subset S ⊆ NU (u), let S c = NU (u) \ S, branch
on (Df ∪ S, Pf ∪ S c ); if dU ∗ (u) ≥ 2 branch on (Df ∪ {u}, Pf ∪ ((NU (v1 ) ∪ NU (v2 )) \ {u})); for
3 ≤ j ≤ dU ∗ (u), branch on (Df ∪ {u}, Pf ∪ (NU (vj ) \ {u})).
• We generalize the previous branching to higher degrees in the obvious way: if u ∈ D, either the
two first of its dU ∗ (u) neighbors in U ∗ are its private neighbors, or one of its remaining dU ∗ (u) − 2
neighbors in U ∗ is private.
• Let i = dU (u). Note that we then assume that dU (vj ) ≥ i for all j ∈ {1, . . . , dU ∗ (u)}, since we
selected u with the minimum dU (u). Hence the branches where u ∈ Df diminish l by at least i + 1.
Pi
We then have T (l) ≤ T (l − 1) + (i − 1)T (l − i − 1) + j=1 ji T (l − i − j), which corresponds
to the case where dU ∗ (u) = dU (u).
• T (l) ≤ T (l − 1) + (i − 1)T (l − (i + 1)) +
Pi
1)xi−1 + j=1 ji · xi−j .
Pi
i
j=1 j
· T (l − (i + j)) gives x2i = x2i−1 + (i −
– If i = 5: x10 = x9 + 9x4 + 10x3 + 10x2 + 5x + 1 with root r < 1.8473.
– If i = 6: x12 = x11 + 11x5 + 15x4 + 20x3 + 15x2 + 6x + 1 with root r < 1.8104.
– If i = 7: x14 = x13 + 13x6 + 21x5 + 35x4 + 35x3 + 21x2 + 7x + 1 with root r < 1.7816.
– If i = 8: x16 = x15 + 15x7 + 28x6 + 56x5 + 70x4 + 56x3 + 28x2 + 8x + 1 with root
r < 1.7593.
New Algorithms for Mixed Dominating Set
25
We are now at a situation where all vertices u ∈ U ∗ have dU (u) ≥ 9.
Branching Rule (B6): If there exists u ∈ U ∗ with dU (u) ≥ 9, then let T = {v1 , . . . , v9 } ⊆ NU (u).
Branch on the feasible subinstances among the following: (Df ∪ {u}, Pf ); (Df , Pf ∪ {u}); for each
(possibly empty) subset S ⊆ T , let S c = T \ S, branch on (Df ∪ S, Pf ∪ S c ).
• We consider all possibilities (including the T ⊆ P ), so one produced instance must be good.
P9
• T (l) ≤ T (l − 1) + T (l − 2) + j=0 9j · T (l − (9 + j)).
P
• T (l) ≤ T (l − 1) + T (l − 2) + 9j=0 9j · T (l − (9 + j)) gives x18 = x17 + x16 + x9 + 9x8 +
36x7 + 84x6 + 126x5 + 126x4 + 84x3 + 36x2 + 9x + 1 with root r < 1.8640.
Step 2: Branch to eliminate U .
If none of the Rules above apply, we enter the second branching step of our algorithm, which only
involves one Rule that will be applied exhaustively. We observe that we now have U ∗ = ∅:
Lemma 9 If none of the Rules from R1 to B6 can be applied, then U ∗ = ∅.
Proof: Suppose that none of the Rules up to B6 applies, then U ∗ = ∅: indeed all vertices u ∈ U ∗ are
handled according to whether dU (u) is 0 (R1), 1 (B1), 2 (B2.2), 3 (B3.3), 4 (B4.2), 5, 6, 7, or 8 (B5), or
higher (B6).
✷
The fact that U ∗ = ∅ means that all remaining undecided vertices belong in P ∪ I, because they cannot
have two private neighbors. We use this observation to branch until we eliminate all vertices of G[U ] with
degree at least 2.
Branching Rule (B7): If there exists u ∈ U with dU (u) ≥ 2, then branch on the following two subinstances: (Df , Pf ∪ {u}) and (Df , Pf ∪ NU (u)).
• If U ∗ = ∅ then U ⊆ P ∪ I, because no vertex of U can have two private neighbors. Hence, if u ∈ I
then NU (u) ⊆ P and the Rule B7 is correct.
• T (l) ≤ T (l − 1) + T (l − 2), because |NU (u)| ≥ 2.
• T (l) ≤ T (l − 1) + T (l − 2) gives x2 = x + 1 with root r < 1.6181.
Step 3: Complete the solution.
We are now in a situation where U ∗ = ∅ and G[U ] has maximum degree 1. We recall that Theorem
2 of Xiao and Sheng (2019) showed that this problem can now be solved optimally in polynomial time
by collapsing all edges of G[U ] and then performing a minimum edge cover computation. We recall the
relevant result, translated to our terminology:
Lemma 10 (Theorem 2 of Xiao and Sheng (2019)) For an instance characterized by (Df , Pf ) which
has U ∗ = ∅ and G[U ] has maximum degree 1, we can compute in polynomial time a minimum mixed
dominating set D ∪ M satisfying Df ⊆ D, Pf ⊆ V (M ).
We are now ready to put everything together to obtain the promised algorithm.
26
Louis Dublois, Michael Lampis, Vangelis Th. Paschos
Theorem 8 M IXED D OMINATING S ET parameterized by the size of the solution k can be solved in time
O∗ (3.510k ).
Proof: The algorithm applies the Rules exhaustively and when no Rule applies invokes Lemma 10. Fix
an optimal nice mds partition V = D ∪ P ∪ I. We assume that no isolated vertices exist, so such a nice
partition exists by Lemma 1.
For correctness, we need to argue that if the cost |D| + |P2 | is at most k, the algorithm will indeed output
a solution of cost at most k. Observe that the initial instance is good, and we always produce a correct
instance when we branch since all our Rules are correct, and by Lemma 10 the solution is optimally
completed when no Rule applies, so if the optimal partition has cost at most k, the algorithm will produce
a valid solution of cost at most k.
Let us now analyse the running time. We observe first that we can decide if a Rule applies in polynomial
time, and the algorithm of Lemma 10 runs in polynomial time. We therefore only need to bound the
number of subinstances the branching step will produce, as a function of k.
Of all the branching vectors, the worst case if given by Branching Rule B3.2, which leads to a complexity of 1.8734l. Taking into account that l ≤ 2k, the running time of our algorithm is O∗ (1.8734l) =
O∗ (3.510k ).
✷
6 Conclusion
In this paper, we study the M IXED D OMINATING S ET problem from the exact and parameterized viewpoint. We prove first that the problem can be solved in time O∗ (5tw ), and we prove that this algorithm
and the one for pathwidth running in time O∗ (5pw ) (Jain et al. (2017)) are optimal, up to polynomial
factors, under the SETH. Furthermore, we improve the best exact algorithm and the best FPT algorithm
parameterized by the solution size k, from O∗ (2n ) and exponential space to O∗ (1.912n) and polynomial
space, and from O∗ (4.172k ) to O∗ (3.510k ), respectively.
Concerning FPT algorithms for some parameters, an interesting study would be to obtain such tight
results for other parameters such as bandwidth, now that the questions for pathwidth, treewidth and cliquewidth are closed. Moreover, it seems hard to improve our exact and FPT algorithms parameterized by k
using the standard technique of running time analysis we have used, but using the measure-and-conquer
method could give improved bounds.
References
Y. Alavi, M. Behzad, L. M. Lesniak-Foster, and E. A. Nordhaus. Total matchings and total coverings of
graphs. Journal of Graph Theory, 1(2):135–140, 1977.
Y. Alavi, J. Liu, J. Wang, and Z. Zhang. On total covers of graphs. Discrete Mathematics, 100(1-3):
229–233, 1992.
G. Borradaile and H. Le. Optimal dynamic program for r-domination problems over tree decompositions.
In IPEC, volume 63 of LIPIcs, pages 8:1–8:23, 2016.
New Algorithms for Mixed Dominating Set
27
M. Cygan, H. Dell, D. Lokshtanov, D. Marx, J. Nederlof, Y. Okamoto, R. Paturi, S. Saurabh, and
M. Wahlström. On problems as hard as CNF-SAT. In Proceedings of the 27th Conference on Computational Complexity, CCC 2012, Porto, Portugal, June 26-29, 2012, pages 74–84. IEEE Computer
Society, 2012. doi: 10.1109/CCC.2012.36. URL https://doi.org/10.1109/CCC.2012.36.
M. Cygan, F. V. Fomin, L. Kowalik, D. Lokshtanov, D. Marx, M. Pilipczuk, M. Pilipczuk, and S. Saurabh.
Parameterized Algorithms. Springer, 2015.
S. Dudycz, M. Lewandowski, and J. Marcinkowski. Tight approximation ratio for minimum maximal
matching. In IPCO, volume 11480 of LNCS. Springer, 2019.
P. Erdös and A. Meir. On total matching numbers and total covering numbers of complementary graphs.
Discrete Mathematics, 19(3):229–233, 1977.
F. V. Fomin, P. A. Golovach, D. Lokshtanov, and S. Saurabh. Intractability of clique-width parameterizations. SIAM J. Comput., 39(5):1941–1956, 2010.
T. Hanaka, I. Katsikarelis, M. Lampis, Y. Otachi, and F. Sikora. Parameterized orientable deletion. In
SWAT, volume 101 of LIPIcs, pages 24:1–24:13, 2018.
P. Hatami. An approximation algorithm for the total covering problem. Discussiones Mathematicae
Graph Theory, 27(3):553–558, 2007.
T. W. Haynes, S. T. Hedetniemi, and P. J. Slater. Fundamentals of domination in graphs, volume 208 of
Pure and applied mathematics. Dekker, 1998.
S. M. Hedetniemi, S. T. Hedetniemi, R. Laskar, A. McRae, and A. Majumdar. Domination, independence and irredundance in total graphs: a brief survey. In Graph Theory, Combinatorics and Applications: Proceedings of the 7th Quadrennial International Conference on the Theory and Applications of
Graphs, volume 2, pages 671–683. Wiley New York, 1995.
L. Jaffke and B. M. P. Jansen. Fine-grained parameterized complexity analysis of graph coloring problems.
In CIAC, volume 10236 of LNCS, pages 345–356, 2017.
P. Jain, M. Jayakrishnan, F. Panolan, and A. Sahu. Mixed dominating set: A parameterized perspective.
In WG, volume 10520 of LNCS, pages 330–343. Springer, 2017.
I. Katsikarelis, M. Lampis, and V. T. Paschos. Structurally parameterized d-scattered set. In WG, volume
11159 of LNCS, pages 292–305. Springer, 2018.
I. Katsikarelis, M. Lampis, and V. T. Paschos. Structural parameters, tight bounds, and approximation for
(k, r)-center. Discr. Applied Math., 264:90–117, 2019.
S. Khot. On the power of unique 2-prover 1-round games. In J. H. Reif, editor, Proceedings on 34th
Annual ACM Symposium on Theory of Computing, May 19-21, 2002, Montréal, Québec, Canada,
pages 767–775. ACM, 2002. doi: 10.1145/509907.510017. URL https://doi.org/10.1145/
509907.510017.
28
Louis Dublois, Michael Lampis, Vangelis Th. Paschos
M. Lampis. Finer tight bounds for coloring on clique-width. SIAM J. Discret. Math., 34(3):1538–1558,
2020. doi: 10.1137/19M1280326. URL https://doi.org/10.1137/19M1280326.
J. K. Lan and G. J. Chang. On the mixed domination problem in graphs. TCS, 476:84–93, 2013.
D. Lokshtanov, D. Marx, and S. Saurabh. Known algorithms on graphs of bounded treewidth are probably
optimal. ACM Trans. Algorithms, 14(2):13:1–13:30, 2018.
J. Madathil, F. Panolan, A. Sahu, and S. Saurabh. On the complexity of mixed dominating set. In CSR,
volume 11532 of LNCS, pages 262–274. Springer, 2019.
A. Majumdar. Neighborhood hypergraphs: A framework for covering and packing parameters in graphs.
PhD thesis, Clemson University, 1993.
D. Manlove. On the algorithmic complexity of twelve covering and independence parameters of graphs.
Discrete Applied Mathematics, 91(1-3):155–175, 1999.
A. Meir. On total covering and matching of graphs. JCTS B, 24(2):164–168, 1978.
J. W. Moon and L. Moser. On cliques in graphs. Israel j. of Math., 3(1):23–28, 1965.
U. N. Peled and F. Sun. Total matchings and total coverings of threshold graphs. Discrete Applied
Mathematics, 49(1-3):325–330, 1994.
M. Rajaati, P. Sharifani, A. Shakiba, M. R. Hooshmandasl, and M. J. Dinneen. An efficient algorithm for
mixed domination on generalized series-parallel graphs. CoRR, abs/1708.00240, 2017.
M. Rajaati, M. R. Hooshmandasl, M. J. Dinneen, and A. Shakiba. On fixed-parameter tractability of the
mixed domination problem for graphs with bounded tree-width. Discrete Mathematics & Theoretical
Computer Science, 20(2), 2018.
M. Xiao and Z. Sheng. Improved parameterized algorithms for mixed domination. In AAIM, volume
11640 of LNCS, pages 304–315. Springer, 2019.
Y. Zhao, L. Kang, and M. Y. Sohn. The algorithmic complexity of mixed domination in graphs. Theor.
Comput. Sci., 412(22):2387–2392, 2011.