The Two Bicliques Problem is in NP intersection coNP
aa r X i v : . [ c s . CC ] A p r The Two Bicliques Problem is in NP ∩ coNP M. A. Shalu S. VijayakumarIndian Institute of Information TechnologyDesign & Manufacturing (IIITD&M) KancheepuramIIT Madras CampusChennai 600036, India { shalu, vijay } @iiitdm.ac.inMarch 27, 2018 Abstract
We show that the problem of deciding whether the vertex set of a graph can becovered with at most two bicliques is in NP ∩ coNP. We thus almost determine thecomputational complexity of a problem whose status has remained open for quitesome time. Our result implies that a polynomial time algorithm for the problem ismore likely than it being NP-complete unless P = NP. keywords: Bicliques, Polynomial Time Algorithms, NP, coNP
The problem of covering the vertex set of a graph with a minimum number of bicliques is oneof the basic problems of graph theory with numerous applications of both theoretical andpractical importance [19, 29, 31, 33, 34, 37]. Heydari, Morales, Shields Jr., and Sudboroughshow that the corresponding decision problem of determining whether a graph can be coveredwith at most k bicliques is NP-complete [21]. Indeed, Fleischner, Mujuni, Paulusma, andSzeider show that this decision problem remains NP-complete even when k is a fixed integergreater than two and not part of the input [17].Interestingly, the complexity of deciding whether the vertex set of a graph can be coveredwith at most two bicliques has remained a challenging open problem. In particular, anytheoretical evidence in favor of the problem either having an efficient algorithm or beingNP-complete has remained elusive; see, for instance, [2, 10, 14, 17, 21]. In fact, Figueiredoclassifies this problem, among a few others, as one of the important problems even in the Pversus NP arena [14].In this paper, we establish that this problem is in NP ∩ coNP. This effectively settlesthe problem in favor an efficient algorithm. For we learn from computational complexity1heory that such a problem is least likely to be NP-complete. For otherwise, the polynomialhierarchy is known to collapse to the first level [18, 36]. And problems that were seen to bein NP ∩ coNP have invariably been found subsequently to be in P as well [36].Despite the fact that the problem allows efficient algorithms for several special classesof graphs [2, 11, 10, 17], our result still comes as a surprise for at least two reasons: (i)The closely related problem of deciding whether the vertex set of a connected graph canbe covered with two P -free graphs is shown to be NP-complete by H`oang and Le [20].(ii) Deciding whether a graph can be covered with two bicliques is essentially equivalent todeciding whether a connected graph has a disconnected vertex cut (see Lemma 2.5 or [17],for instance) but the closely related problem of deciding whether a connected graph has anindependent vertex cut is known to be NP-complete [4, 6, 27]. [But a clique vertex cut isknown to have a polynomial time algorithm [41].] Note:
Covering the vertex set of a graph with a minimum number of bicliques turns to beequivalent to partitioning the vertex set of the underlying graph into a minimum number ofparts so that the induced subgraph on each part is covered by exactly one biclique. Therefore,by partitioning a grpah into a minimum number of bicliques , we essentially mean coveringthe vertex set of the graph with a minimum number of bicliques.
Notation:
We denote by BP k the set of all graphs G such that G can be partitioned intoat most k bicliques or, equivalently, such that the vertex set of G can be covered with atmost k bicliques.By BP k , we denote the set of all graphs G such that G / ∈ BP k . Equivalently, BP k is theset of all graphs G such that every partition of G into bicliques has more than k parts.We use BP for denoting the set of all pairs ( G, k ) such that the graph G can be partitionedinto at most k bicliques.By convention, we will use BP k , BP k , and BP for denoting the membership problemsassociated with these sets. Related Work:
Bein, Bein, Meng, Morales, Shields Jr., and Sudborough show that it isNP-hard to find a c -approximation algorithm for BP for any constant c , apart from presentinga polynomial time exact algorithm for BP k restricted to bipartite graphs and restricted tocertain other families of graphs [2].The result of Fleischner, Mujuni, Paulusma, and Szeider that BP k is NP-complete foreach fixed k ≥ K -free graphs,diamond-free graphs, planar graphs, bounded treewidth graphs, claw-free graphs, and ( C , P )-free graphs. Bicliques are one of the most sought-after structures of graphs, mainly due to theirimportance in applications, and has given rise to numerous computational problems involvingbicliques from diverse branches of science; please consult the references.
In this paper, we consider finite undirected simple graphs. We begin by formally defining abiclique as well as a star of a graph.
Definition 2.1
1. A subgraph H of a graph G is said to be a biclique if H is isomorhic toeither the complete graph K or the complete bipartite graph K m,n for some m, n ≥ .2. A biclique H of a graph G is said to be a star if H is isomorphic to either the completegraph K or the complete bipartite graph K ,n for some n ≥ . The center of a star H is defined naturally. We now review the standard graph theory terminology and notation that we use.
Definition 2.2 ¯ G denotes the complement of a graph G .2. The empty graph on n vertices is denoted by nK : nK = ¯ K n .3. For a graph G = ( V, E ) and v ∈ V , N G ( v ) denotes the set all vertices that are adjacentto v . [ N ( v ) does not include v .] We define N G [ v ] = N G ( v ) ∪ { v } . We use N ( v ) and N [ v ] for these sets when G is understood.4. For a graph G = ( V, E ) and a set A ⊆ V , G [ A ] denotes the induced subgraph of G onthe vertices of A .5. For a graph G and a vertex v of it, G − v denotes the induced subgraph on V ( G ) \ { v } .6. For a graph G = ( V, E ) and a set A ⊆ V ( G ) , G − A denotes the induced graph on V ( G ) \ A .7. A vertex v of a connected graph G is said to be a cut vertex if G − v is disconnected.8. A set X of vertices of a connected graph G is said to be a vertex cut if G − X isdisconnected. We record a simple characterization of BP2 that is in the folklore. We state and prove itfor compleness. Naturally, it turns to be a characterization for BP2 as well. We begin withthe following. 3 emma 2.3
A graph G = K is in BP1 if and only if ¯ G is disconnected. Proof:
Let G ∈ BP1. Then it possible that G = K ; otherwise let [ A, B ] be a partion of V ( G ) such that each vertex of A is connected to every vertex of B . Then the complementgraph ¯ G has no vertex of A connected to any vertex of B .Conversely, if G = K then it is a trivial biclique and belongs to BP1. Otherwise, assumethat ¯ G is disconnected and set A to the set of vertices of a connected component of ¯ G and B to V ( G ) \ A . It follows that there is a biclique structure across A and B and so G ∈ BP1.
Lemma 2.4
A graph G = 2 K is in BP2 \ BP1 if and only if ¯ G is connected but has eithera cut vertex or a disconnected vertex cut. Proof:
Let G be a graph such that G = 2 K or ¯ G is connected but has a cut vertex or adisconnected vertex cut. Since G = 2 K ∈ BP2 \ BP1, we shall assume that G = 2 K andthat ¯ G is connected. Then, clearly G / ∈ BP1 by Lemma 2.3.If ¯ G has a cut vertex, say v , then G − v = ¯ G − v is disconnected and therefore, byLemma 2.3, G − v belongs to BP1. So, we conclude that G ∈ BP2 \ BP1.If ¯ G has a disconnected vertex cut C , i.e., C is a vertex cut of ¯ G such that both ¯ G [ C ] and¯ G [ V ( G ) \ C ] are disconnected, then both G [ C ] and G [ V ( G ) \ C ] are in BP1 by Lemma 2.3.So, we again conclude that G ∈ BP2 \ BP1.Conversely, suppose that G ∈ BP2 \ BP1 and is not equal to 2 K
1. Then ¯ G is necessarilyconnected; otherwise G ∈ BP1 by Lemma 2.3.If G has a two biclique partition with one of the parts as a single vertex, say v , then G − v can be covered with one biclique which implies that ¯ G − v is disconnected, where westarted with a ¯ G that is connected. Therefore v must be a cut vertex of ¯ G .If G allows a two biclique partition where neither of the bicliques is a single vertex,then ¯ G must be partitionable into two sets A and B such that both A and B have at leasttwo elements each and ¯ G [ A ] and ¯ G [ B ] are disconnected. But ¯ G = ¯ G [ A ∪ B ] is connected.Therefore, it must be that A (as well as B ) is a disconnected vertex cut of A .Combining the preceding lemmas, we have the following. Lemma 2.5
A graph G that is not equal to K or K is in BP2 if and only if one of thefollowing is true: (a) ¯ G is disconnected; (b) ¯ G is connected but has a cut vertex; (c) ¯ G isconnected but has a disconnected vertex cut. Consequently, we have the following lemma for graphs not in BP2.
Lemma 2.6
A graph G on n ≥ vertices is in BP2 if and only if ¯ G is connected, is free ofcut vertices, and has all vertex cuts (if any) connected. The corollary below follows trivially from the lemma.4 orollary 2.7
Let G be a graph in BP2. Then the following are true for the complementgraph ¯ G .1. The neighbours of any vertex of ¯ G induces a connected subgraph of ¯ G and this subgraphhas at least two vertices.2. From any vertex of ¯ G , all other vertices are at most at a distance of two.3. Any nonadjacent pair of vertices of ¯ G have a common neighbour in ¯ G . We close the section with a definition that encapsulates an important notion that iscentral to our discussion.
Definition 2.8
Let F be a family of graphs and let G ∈ F . Let π be a permutation of a set A ⊆ V ( G ) with | A | = k . Then π is said to be safe for F if each of G , G , G , . . . , G k ∈ F ,where G i is the graph obtained from G by deleting all the vertices in a prefix of length i of π for each ≤ i ≤ k . \ BP1
We show that from any graph G in BP2 \ BP1, by repeated deletion of zero or more vertices,we eventually and inescapably end up with a graph G ′ in BP2 \ BP1 that admits a partitioninto a star and a biclique, without ever leaving BP2 \ BP1 in the process. But we begin byproving the following Theorem.
Theorem 3.1
Let G be a graph in BP2 \ BP1. Then we can decide whether G allows astar-biclique partition in polynomial time. Proof:
Let G be a graph in BP2 \ BP1. Then for each vertex v of G , we simply checkwhether G admits a partition into a star biclique centered at v and another biclique. We dothis as follows by fixing v for a particular vertex of G .If G is disconnected, then there must be exactly two components. We simply check if atleast one of the components is a star with v as the center; this can be done in polynomialtime. So, we shall assume that G is connected.If G − v ∈ BP1, then v and G − v provides a star-biclique partition of G . If G − N [ v ] ∈ BP1, then G [ N [ v ]] and G − N [ v ] provides a star-biclique partition of G .If neither is the case, we decide in polynomial time whether there is a proper subset S = ∅ of N G ( v ) such that deleting { v } and S from G results in a graph in BP1. For if thereis such an S , then G [ { v } ∪ S ] and G − v − S provides a star-biclique partition.Since neither G − v nor G − N G [ v ] is in BP1, both G − v and G − N G [ v ] contain at leasttwo vertices and the complement graphs ¯ G − v and ¯ G − N G [ v ] are connected. Let A = N G ( v )and let B = V ( G ) \ N G [ v ]. Clearly, A ∪ B = V ( G ) \ { v } .Consider the complement graph ¯ G − v . Let S be the set of all vertices u in A such that u is adjacent to some vertex in B in this complement graph. We note that this S can be5onstructed in polynomial time. If S = A , [i.e., if each vertex of A is adjacent to a vertexin the connected graph ¯ G − N G [ v ]], then deleting no subset of A can disconnect ¯ G − v ; weshall therefore conclude that it is impossible to partition G into a star centered at v and abiclique.If S = A , then S is a vertex cut for ¯ G − v and { v } ∪ S is a disconnected vertex cut for ¯ G with v as a component (No vertex in S ⊆ A = N G ( v ) is adjacent to v in ¯ G .). In this case,we see that G [ { v } ∪ S ] and G − v − S provide a star-biclique partition of G .We have the following interesting result about graphs of BP2 \ BP1 that do not admit astar-biclique partition.
Lemma 3.2
Let G be a graph in BP2 \ BP1 such that it does not admit any star-bicliquepartition. Then for any vertex v of G , G − v is also a graph in BP2 \ BP1.
Proof:
Suppose that G does not allow any two biclique partition for which one of thebicliques is a star.Then each biclique in every two biclique partition of G has on each side at least twovertices. So, deleting a vertex v from G does still retain a two biclique structure in G − v ;and so G − v ∈ BP2.Since assuming that G − v ∈ BP1 implies that G admits a star-biclique partition, namely v and G − v , we conclude that G − v ∈ BP2 \ BP1.The following theorem is a corollary of the above lemma.
Theorem 3.3
For each graph G in BP2 \ BP1, there is an integer l = l ( G ) ≥ such thatany permutation π of any subset of l vertices of G is safe for BP2 \ BP1. Moreover, none ofthe associated graphs G , G , G , . . . , G l − allows a star-biclique partition whereas the graph G l does. The following theorem asserts that for any graph G ∈ BP2, there is a careful order of deletionof vertices from G so that each of the successively resulting subgraphs is in BP2 and the lastgraph H obtained is the smallest graph in BP2, namely 3 K = ¯ K . Theorem 4.1
Let G be a graph in BP2 on n vertices. Then G has a permutation π of n − vertices that is safe for BP2. Proof:
Let G = ( V, E ) be a graph in BP2 on n vertices. We will construct a permutation π = h v , v , . . . , v n − i of n − G that is safe for BP2: deleting vertices in anyprefix of π from G leaves behind a graph in BP2.Let A be a subset of V of largest cardinality such that the induced subgraph G [ A ] ∈ BP2.In fact, the maximality of A implies that G [ A ] ∈ BP2 \ BP1. Let v ∈ V \ A . Then6 [ A ∪ { v } ] ∈ BP2. Clearly, deleting vertices in V \ ( A ∪ { v } ) from G , in any order, can neverresult in a graph in BP2. We set π ′ equal to some ordering of vertices in V \ ( A ∪ { v } ).For every partition [ A , A ] of A such that both G [ A ] and G [ A ] are in BP1, we haveat least one vertex in A that is not adjacent to v and at least one vertex in A that is notadjacent to v . In fact, we have that G [ A ∪ { v } ] / ∈ BP1 and that G [ A ∪ { v } ] / ∈ BP1. Forotherwise we will have that G [ A ∪ { v } ] ∈ BP2.Let B be a subset of A of largest cardinality such that both G [ B ] and G [ C ], where C = A \ B , are in BP1. Then it follows, from the maximality of B that for each c ∈ C , thereis at least one vertex b ∈ B such that c is not adjacent to b . From what we noted in thepreceding paragraph it also follows that v is not adjacent to some vertex in B and to somevertex in C .We now delete all vertices in C that are adjacent to v in some order. It is clear thatthe sequence of successive graphs that are resulting are all in BP2. We continue deletingthe other vertices of C except for one, say u , and note again that the successively resultinggraphs are all in BP2. Let p ′′ denote the sequence of vertices deleted in the order of deletion.Let H = G [ B ∪ { u } ∪ { v } ] denote the final graph obtained.We note that vertices v and u are not adjacent in H = G [ B ∪ { u } ∪ { v } ]. Both v and u have nonadjacent vertices in B . Delete in some order all the vertices in B adjacent to v or u or both from H . When this is done, vertices v and u become isolated. We now continuedeleting the other vertices of B except for one, say w , in some order. Let π ′′′ be the sequenceof vertices deleted. It is clear again that all the graphs obtained after each additional deletionare all in BP2.We now set π = π ′ · π ′′ · π ′′′ and see that π is a sequence of n − G ∈ BP2 on n vertices and that π is safe for BP2. ∈ coNP We establish that BP2 is in coNP by showing that BP2 is in NP. We provide a polynomialtime verifier that takes in as input a graph G and a sequence π of vertices of G . The verifieraccepts the pair if and only if G ∈ BP2 and π is safe for BP2 and is of length n −
3, where n = | V ( G ) | . We know, from Theorem 4.1, that such a proof exists for all graphs in BP2. Theorem 5.1
There is a polynomial time algorithm that inputs a pair ( G, π ) of a graph G and a sequence π of vertices of G and outputs accept if and only if G ∈ BP2 and π is alongest permutation of vertices of G that is safe for BP2; it otherwise outputs reject . Proof:
Consider the algorithm in Figure 1. We argue that this algorithm provides a validpolynomial time verifier for BP2. It is clear, from Theorem 3.1, that the algorithm can runin polynomial time. We will just prove its correctness.Suppose that (
G, π ) is input to the algorithm.If either G ∈ BP1 or π is not obviously a longest safe sequence, the pair ( G, π ) is rightlyrejected in Step 0. 7nput: (
G, π )Output: accept / reject
0. If G ∈ BP1 or π is not a permutation on n − n vertex graph G , return reject . Else repeat Steps 1 to 3 below:1. If G admits a star-biclique partition, return reject .2. If G = 3 K , return accept .3. Remove the first vertex, v , from π and set G = G − v .Figure 1: A Polynomial Time Verifier for BP2If G ∈ BP2 \ BP1, then any repeated removal of zero or more vertices from G eventuallynecessarily results in a graph H that allows a star-biclique partition (Theorem 3.3) beforegiving rise to any graph that is probably not in BP2. Step 1 therefore ensures that no graph G ∈ BP2 \ BP1 ever leads to the acceptance of the pair (
G, π ) with any false safe sequence π by detecting as and when a star-biclique structure arises from such a G ; we know fromTheorem 3.1 that this deduction can be carried out in polynomial time.If G ∈ BP π is not safe for BP
2, then π has a prefix whose removal from G resultsin a graph H in BP2. If H does not admit a star-biclique partition, then continuing theremovals further must (as argued in the preceding paragraph) eventually result in a graphthat admits such a partition before possibly resulting in a graph that is not in BP2. Step 2therefore also ensures that no wrong safe sequence π even with a G ∈ BP G, π ).If G is a graph in BP2 on n vertices and π is a permutation of n − π thatis safe for BP2 (such a sequence exists from Theorem 4.1), then π is necessarily a longestsequence that is safe for BP2 and each subgraph of G obtained by deleting a prefix of π is inBP2 and so none of them can clearly allow a star-biclique partition. Moreover, deleting allthe vertices from such a π must necessarily result in 3 K ; for this is the only graph on threevertices that is in BP2. Therefore, such an input pair ( G, π ) is eventually rightly accepted,as can be easily verified, in Step 2 of the algorithm.Steps 3 simply deletes the next vertex in π from G . The sequence π cannot be emptywhen the control enters Step 3 because it must have at least four vertices. For, if it has onlythree vertices, it must have either allowed a star-biclique partition already or been equal to3 K already; and the algorithm would have already stopped with an accept or a reject .8 onclusion It remains an interesting open problem to see if the two biclique partition problem has apolynomial time algorithm. A negative answer to it, in particular, will resolve the famous Pversus NP problem.