Linear-time algorithms for counting independent sets in bipartite permutation graphs
Introduction
Let be a graph with set of vertices V and set of edges E. An independent set (abbr. IS) in a graph G is a subset D of V such that no two vertices of D are adjacent. The maximal independent set (abbr. MIS) in a graph is an IS that is not a subset of any other IS in the graph. A dominating set in a graph G is a subset D of V such that every vertex that is not in D is adjacent to at least one vertex in D. An independent dominating set in G is a set of vertices of G that is both independent and dominating in G. Since every dominating set that is independent must be maximal independent, independent dominating sets are identically maximal independent sets. An independent dominating set D is an independent perfect dominating set (abbr. IPDS) if every vertex that is not in D is adjacent to exactly one vertex in D. Let , , and be the sets of all ISs, MISs, and IPDSs in G, respectively. Then, the inclusions hold by definitions.
This paper studies problems that are associated with the numbers of ISs in a graph. Provan and Ball [1] proved that counting ISs is #P-complete for general graphs and remains so even for bipartite graphs. A #P problem is defined as the counting of all solutions to a given problem in NP, and the class of #P-complete problems includes the hardest problems in #P [2]. As is widely known, all exact algorithms for solving #P-complete problems have exponential time complexity, and so efficient exact algorithms for this class of problems are unlikely to exist unless P = NP. As a consequence, efficient exact algorithms can only be found for some restricted classes of graphs. The complexities of counting ISs, MISs, and IPDSs have been widely investigated on various classes of perfect graphs such as interval graphs [3], chordal graphs [4], [5], tree convex bipartite graphs [5] and tolerance graphs [6], and these complexities are shown in Fig. 1.
This paper concerns the class of bipartite permutation graphs, which is the intersection class between permutation and bipartite graphs and was previously investigated by Spinrad et al. [7]. Studies of this class are motivated by the fact that many graph problems are efficiently solved on graphs of this class. For example, algorithms for solving the edge domination problem [8], [9], the clique-width problem [10], the longest path problem [11] and the bandwidth problem [12] have been developed. Bipartite permutation graphs are useful for characterizing various mathematical objects; for example, Colley et al. [13] showed that visibility graphs of towers are bipartite permutation graphs with an added Hamiltonian cycle.
This paper provides fast and simple algorithms for counting ISs, MISs, and IPDSs in bipartite permutation graphs. All of these algorithms have a time complexity of , where is the number of vertices in the bipartite permutation graph.
Section snippets
Preliminaries
This section presents the preliminaries on which the desired algorithms depend. For a graph , let represent the neighborhood of a vertex v in G and represent the closed neighborhood of a vertex v in G. For and , let represent the subgraph of G that is induced by the vertices of and let represent the subgraph of G that is induced by the vertices of .
A graph with is a permutation graph if there exists a
Counting independent sets in a bipartite permutation graph
Lemma 1, Lemma 2 present dynamic programming formulations for computing the number of independent sets in a bipartite permutation graph.
Lemma 1 and for ,
Proof For any vertex v of G, each independent set D of G either contains v (in which case is an independent set in ) or does not contain v (in which case D is also an independent set in ). Therefore, Eq. (1) holds. Let be the largest vertex
Counting maximal independent sets in a bipartite permutation graph
Lemma 3, Lemma 4 present dynamic programming formulations for computing the number of maximal independent sets in a bipartite permutation graph.
Lemma 3 Let be the largest vertex in and . For ,
Proof The following three cases are considered. Case 1: . Since , no vertex of Y is adjacent to in . Thus, vertex is
Counting independent perfect dominating sets in a bipartite permutation graph
Notably, an IPDS is always an MIS, but not vice versa. Lemma 5 provides an easy way to determine whether an MIS of a bipartite permutation graph is an IPDS.
Lemma 5 Let D be a subset of vertices of the bipartite permutation graph , and . Then, D is an IPDS of G if and only if D is an MIS of G with for and for .
Proof (If part) Assume D is an MIS of G with for and for
Concluding remarks
This paper proposes simple and fast algorithms for counting (1) the independent sets, (2) the maximal independent sets, and (3) the independent perfect dominating sets in a bipartite permutation graph. All of these algorithms can be implemented in time, where is the number of vertices in the bipartite permutation graph.
Acknowledgement
The authors would like to thank the Ministry of Science and Technology of Taiwan, for financially supporting this research under Contract No. MOST 104-2221-E-027-018.
References (13)
Fast and simple algorithms to count the number of vertex covers in an interval graph
Inf. Process. Lett.
(2007)- et al.
Counting the number of independent sets in chordal graphs
J. Discret. Algorithms
(2008) - et al.
Counting independent sets in tree convex bipartite graphs
Discrete Appl. Math.
(2017) - et al.
Counting independent sets in a tolerance graph
Discrete Appl. Math.
(2015) - et al.
Bipartite permutation graphs
Discrete Appl. Math.
(1987) - et al.
Edge domination on bipartite permutation graphs and cotriangulated graphs
Inf. Process. Lett.
(1995)
Cited by (5)
Counting independent sets in cocomparability graphs
2019, Information Processing LettersCitation Excerpt :The result of [11] for counting independent sets in bipartite permutation graphs is a special case.
Computing the numbers of independent sets and matchings of all sizes for graphs with bounded treewidth
2018, Applied Mathematics and ComputationCitation Excerpt :Okamoto et al. [27] provided a linear-time algorithm to compute the total number of independent sets for chordal graphs. Lin and Chen provided two algorithms to compute the total number of independent sets for some subclasses of the class of bipartite graphs [21,22]. Zhang et al. [37] presented a linear-time algorithm to compute the total number of matchings for trees.
Labelled well-quasi-order for permutation classes
2022, Combinatorial Theory