Nonblocker Explained

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, 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

and a parameter

k

, and the goal is to determine whether

G

has a nonblocker with

k

or more vertices.

This problem has an easy kernelization that reduces it to an equivalent problem with at most

2k

vertices. First, remove all isolated vertices from

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

2k

or more vertices, the problem can be solved immediately. Otherwise, the remaining graph is a kernel with at most

2k

vertices.

Dehne et al. improved this to a kernel of size at most

\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 instancewith only one degree-one vertex. Then, they show that (except for small values of

k

, which can be handled separately) this instance must either be smaller than the kernel size bound or contain a

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.5154k+n)

. Even faster algorithms are possible for certain special classes of graphs.

See also