In graph theory, a nonblocker is a subset of vertices in an undirected graph, all of which are adjacent to vertices outside of the subset. Equivalently, a nonblocker is the complement of a dominating set. The computational problem of finding the largest nonblocker in a graph was formulated by Papadimitriou & Yannakakis (1991), who observed that it belongs to MaxSNP. Although computing a dominating set is not fixed-parameter tractable under standard assumptions, the complementary problem of finding a nonblocker of a given size is fixed-parameter tractable. In graphs with no isolated vertices, every maximal nonblocker (one to which no more vertices can be added) is itself a dominating set.
Kernelization One way to construct a fixed-parameter tractable algorithm for the nonblocker problem is to use kernelization, an algorithmic design principle in which a polynomial-time algorithm is used to reduce a larger problem instance to an equivalent instance whose size is bounded by a function of the parameter. For the nonblocker problem, an input to the problem consists of a graph G {\displaystyle G} and a parameter k {\displaystyle k} , and the goal is to determine whether G {\displaystyle G} has a nonblocker with k {\displaystyle k} or more vertices. This problem has an easy kernelization that reduces it to an equivalent problem with at most 2 k {\displaystyle 2k} vertices. First, remove all isolated vertices from G {\displaystyle G} , as they cannot be part of any nonblocker. Once this has been done, the remaining graph must have a nonblocker that includes at least half of its vertices; for instance, if one 2-colors any spanning tree of the graph, each color class is a nonblocker and one of the two color classes includes at least half the vertices. Therefore, if the graph with isolated vertices removed still has 2 k {\displaystyle 2k} or more vertices, the problem can be solved immediately. Otherwise, the remaining graph is a kernel with at most 2 k {\displaystyle 2k} vertices. Dehne et al. improved this to a kernel of size at most 5 3 k + 3 {\displaystyle {\tfrac {5}{3}}k+3} . Their method involves merging pairs of neighbors of degree-one vertices until all such vertices have a single neighbor, and removing all but one of the degree-one vertices, leaving an equivalent instance with only one degree-one vertex. Then, they show that (except for small values of k {\displaystyle k} , which can be handled separately) this instance must either be smaller than the kernel size bound or contain a k {\displaystyle k} -vertex blocker. Once a small kernel has been obtained, an instance of the nonblocker problem may be solved in fixed-parameter tractable time by applying a brute-force search algorithm to the kernel. Applying faster (but still exponential) time bounds leads to a time bound for the nonblocker problem of the form O ( 2.5154 k + n ) {\displaystyle O(2.5154^{k}+n)} . Even faster algorithms are possible for certain special classes of graphs.
See also Dominating set - the complement of a nonblocker.
References


