Biclique Covers and Partitions

The biclique cover number (resp. biclique partition number) of a graph $G$, $\mathrm{bc}(G$) (resp. $\mathrm{bp}(G)$), is the least number of biclique (complete bipartite) subgraphs that are needed to cover (resp. partition) the edges of $G$. The \emph{local biclique cover number} (resp. local biclique partition number) of a graph $G$, $\mathrm{lbc}(G$) (resp. $\mathrm{lbp}(G)$), is the least $r$ such that there is a cover (resp. partition) of the edges of $G$ by bicliques with no vertex in more than $r$ of these bicliques. We show that $\mathrm{bp}(G)$ may be bounded in terms of $\mathrm{bc}(G)$, in particular, $\mathrm{bp}(G)\leq \frac{1}{2}(3^\mathrm{bc(G)}-1)$. However, the analogous result does not hold for the local measures. Indeed, in our main result, we show that $\mathrm{lbp}(G)$ can be arbitrarily large, even for graphs with $\mathrm{lbc}(G)=2$. For such graphs, $G$, we try to bound $\mathrm{lbp}(G)$ in terms of additional information about biclique covers of $G$. We both answer and leave open questions related to this. There is a well known link between biclique covers and subcube intersection graphs. We consider the problem of finding the least $r(n)$ for which every graph on $n$ vertices can be represented as a subcube intersection graph in which every subcube has dimension $r$. We reduce this problem to the much studied question of finding the least $d(n)$ such that every graph on $n$ vertices is the intersection graph of subcubes of a $d$-dimensional cube.


Biclique covers and partitions
A biclique cover of a (simple) graph, G, is a collection of bicliques (complete bipartite subgraphs) of G, the union of whose edges is E(G). A related notion is that of a biclique partition: a collection of bicliques of G, whose edges partition the edges of G. We say that a biclique cover (resp. partition) is a k-cover (resp. k-partition) if it contains at most k bicliques. The biclique cover number of G, bc(G), is the least k for which there exists a k-cover of G. Analogously, the biclique partition number of G, bp(G), is the least k for which there exists a k-partition of G. The biclique cover number and biclique partition number have been studied extensively, see for instance [16] and [11], motivated by applications to many other areas such as combinatorial geometry [1], communication complexity [13], network addressing [8] and even immunology [17].
One of the early results on the biclique partition number is the Graham-Pollak Theorem [8]-see [20] for an elegant proof-which concerns K n , the complete graph on n vertices. More specifically, it states that bp(K n ) = n−1.
In contrast to this, it is easy to show that bc(K n ) = ⌈log n⌉. (Here and elsewhere, log refers to log 2 ). These results demonstrate that the trivial inequality bc(G) ≤ bp(G) may be quite loose: bp(K n ) ≥ 2 bc(Kn)−1 − 1.
In Section 3, we investigate how large bp can be in terms of bc. Indeed, we prove that if bc(G) = t, bp(G) ≤ (3 t − 1)/2 and exhibit a graph showing that this is tight.
We call a biclique cover (resp. partition) r-local if every vertex is in at most r of the bicliques involved in the cover (resp. partition) of G. The local biclique cover number, lbc(G), is the least r such that there exists an r-local cover of the graph. Similarly, the local biclique partition number, lbp(G), is the least r such that there exists an r-local partition of the graph. Variants of lbp and lbc have long been studied, starting in 1967 with Katona and Szemerédi [12] in connection with diameter 2 graphs with few edges. An easy corollary of their result is: lbc(K n ) = lbp(K n ) = ⌈log n⌉, which was also shown in full by Dong and Liu [4]. This result is perhaps surprising given that bc(K n ) and bp(K n ) differ so vastly.
One of the key results in the theory of the local biclique cover/ partition numbers, is that of Lupanov [14] in 1956, stating that for all n, there exists a graph G on n vertices with lbc(G) ≥ c 1 n log n , where c 1 is a positive constant. Indeed his result is slightly stronger than stated-he actually showed the same bound holds if lbc(G) is replaced by w(G), the minimum over all covers, κ, of G of the average number of bicliques in κ to which each vertex belongs. This result was later reproved by Chung, Erdős and Spencer [3] in 1983 and Tuza [19] in 1984, among others.
Each of the above papers also included corresponding upper bounds for w(G), but it was not until Erdős and Pyber [6] in 1997 that a similar upper bound for lbp, or lbc, was proved. More formally, they showed that for all n, lbp(G) ≤ c 2 n log n , for some constant c 2 . Combined with Lupanov's result above, this means that if lbc(G) is large compared to the number of vertices of G, then lbp(G) is not too much larger. This is one motivation for seeking to bound lbp in terms of lbc, hoping for a similar result to our previously mentioned bound for bc in terms of bp. Perhaps surprisingly, however, we find that no such bound is possible. More specifically, in Section 4 we exhibit, for all k ≥ 2, a graph G with lbc(G) = 2, but lbp(G) ≥ k.
Given this, it is natural to ask 'how fast' can lbp(G) tend to infinity if lbc(G) = 2. One way of formalizing this question to ask 'if G has a 2-local m-cover, how large can lbp(G) be?' While we are able to answer this, up to a constant factor, in Section 5, we leave open the equally natural question of 'if lbc(G) = 2 and bc(G) = m, how large can lbp be?' A second question that we leave open is whether, loosely speaking, all graphs have a single cover that is close to optimal for both bc and lbc.

Subcube Intersection Graph Representations
The biclique cover number discussed above has a natural interpretation in the setting of hypercube intersection graphs.
The d-dimensional hypercube, Q d , is the graph with vertex set {0, 1} d and with two vertices connected by an edge if and only if the vectors representing them differ in exactly one coordinate. A subset, S, of the vertices of the hypercube, Q d , is called a subcube if it induces a graph isomorphic to a hypercube of some dimension. In other words, there is some set J ⊆ [d] = {1, 2, 3, ..., d}, and constants a j ∈ {0, 1} for each j ∈ J such that (x 1 , ..., x n ) ∈ S if and only if for all j ∈ J, x j = a j . Fixed coordinates are those coordinates in J, whereas free coordinates are coordinates that are not fixed.
A subcube is said to have dimension r if it has r free coordinates. We shall write subcubes as vectors in {0, 1, * } d , where the asterisks denote free coordinates and the 0's and 1's denote fixed coordinates, j, with a j = 0 or 1 respectively.
An intersection graph of a family of subsets of some groundset has one vertex for each of the sets, and an edge between two vertices if and only if the corresponding sets intersect. See [10] or [15] for more on intersection graphs for various set families. In this paper, we are interested in intersection graphs where all sets in the family are subcubes of a hypercube. Such graphs are called subcube intersection graphs. Note that two subcubes intersect if and only if they agree on all coordinates where both are fixed. See Johnson and Markström [9] for some background.
Let I(n, d) be the set of all graphs on n vertices that are the intersection graph of some family of subcubes of a d-dimensional hypercube. It is easy to see that G ∈ I(n, d) if and only if its complement has a d-cover, as was apparently first pointed out by Fishburn and Hammer [7], and also noted in [9]. Indeed, a representation of G ∈ I(n, d) assigns a vector in {0, 1, * } d to each vertex. Generate a biclique for each of the d coordinates, having as one class all the vertices with a zero in this coordinate, and as the other class all vertices with a one in this coordinate. Then, the union of these bicliques has an edge exactly where G does not have an edge. This produces a d-cover of G c and the converse is similar.
If G is a graph on n vertices, we write ρ(G) for the smallest d such that G ∈ I(n, d)-in other words, ρ(G) is the smallest d such that G may be represented as an intersection graph of a family of subcubes of Q d . By the previous paragraph, ρ(G) = bc(G c ). We also write ρ(n) = max{ρ(G) : |G| = n}, where |G| denotes the number of vertices of G.
Similarly, we define τ (G) to be the smallest r such that G may be represented as an intersection graph of a family of r dimensional subcubes of some hypercube. We also let τ (n) = max{τ (G) : |G| = n}. Using the relationship between subcube intersection graphs and biclique coverings, we may see that τ (G) is the least r such that G c has a biclique cover where every vertex lies in all but r of the bicliques in the cover. (Note in this interpretation, bicliques with one empty class are allowed). This is bears a resemblance to, but is distinct from lbc(G c )-the least r such that G c has a cover with every biclique in no more than r bicliques of the cover.
Many authors have placed various bounds on ρ-see for instance [2], [5], [18] and [19]. The best known bounds are: where c is some positive constant. The upper bound is due to Tuza [19] and the probabilistically proved lower bound to Rödl and Ruciński [18]. The question of obtaining similar bounds for τ (n) was posed by Johnson and Markström [9]. In Section 2, we shall prove a very close relationship between τ (n) and ρ(n) and thus we obtain bounds on τ similar to those on ρ.
We remark briefly that the other biclique covering/partitioning measures may be interpreted in this way. For instance, lbc(G c ) is the least r such that G can be represented as the intersection graph of a family of codimension r subcubes of some hypercube. Equally, bp(G c ) is the least d such that G can be represented in I(n, d) such that the subcubes of non-adjacent vertices differ in only one coordinate.
Proof. Let G be a graph on n vertices with ρ(G) = d. This means that there are subcubes A 1 , . . . , A n of Q d whose intersection graph is G. Let M (resp. m) be the maximum (resp. minimum) dimension of these subcubes. For all i, replace A i by A ′ i , a subcube of Q d+M −m by appending 0's and * 's to the vector of A i . We ensure that we add as many * 's as needed so the resultant vector has precisely M * 's and as many 0's as needed to give the vector length (d + M −m). The intersection graph of the A ′ i is G. This shows that G may be represented as an intersection graph of a family of subcubes of dimension M. Since M ≤ d, the result follows.
Proof. Let G be a graph with vertices v 1 , . . . , v n and with ρ(G) = ρ(n). Now form G ′ from G by adding a single vertex, v n+1 , adjacent to all vertices of G. Let A 1 , . . . , A n , A n+1 be r-dimensional subcubes of Q d such that G ′ is the intersection graph of the A i (the vertex v i being represented by A i ) and such that r is equal to τ (G ′ ). Without loss of generality, let A n+1 be free in the first r coordinates, and hence fixed in the other d − r coordinates. Where A n+1 is fixed, all the other A i must be either free (have an asterisk in that coordinate) or have the same fixed value as A n+1 , as v n+1 is adjacent to all the other vertices. Thus restricting the first n subcubes to the first r coordinates does not change which pairs of subcubes intersect. So the intersection graph of these restricted subcubes is G, implying that G ∈ I(n, r).
Therefore, using the definition of ρ, τ (n Combining these two lemmas with the bounds on ρ gives: There is some absolute constant, c, such that for all n, n − c log n ≤ τ (n) ≤ n − ⌊log n⌋ + 1.

Bounding bp in terms of bc
As the earlier example of K n shows, bp can be as large as exponential in bc. Here, we show that bp grows no faster than exponentially in bc, and calculate the best upper bound exactly. We do this by reducing the problem to proving the upper bound for a single graph. In the second theorem of this section, we use ideas from Tverberg's proof [20] of the Graham-Pollak Theorem to calculate bp of this graph and show that the previous bound is tight.
Fix an m-cover of G, κ = {B 1 , . . . , B m }, and for each biclique B i we label the vertex classes as class 0 and class 1. We now represent each vertex of G as an element of {0, 1, * } m , based on its membership of elements of κ.
Ifũ =ṽ then u and v have the same neighbours. Therefore, if u = v, this would mean that bp(G) = bp(G − u), so we could replace G with G − u and thus we may assume vertices all have different representations. Using Since the biclique partition number of a graph is at least that of each of its induced subgraphs, we may assume that V (G) = {0, 1, * } m . Note that there is an edge between two vertices u and v if and only if there is some In other words, this is the complement of the intersection graph of all subcubes of an m-dimensional cube. We write G m for this graph.
Proof of claim. Let u = (u 1 , . . . , u m+1 ) and v = (v 1 , . . . , v m+1 ) be two vertices that are not joined by an edge of G m+1 . This means there is no i such that {u i , v i } = {0, 1} so uv is not an edge of B 1 . Moreover, if we define u ′ = {u 2 , . . . , u m+1 } and v ′ = {v 2 , . . . v m+1 }, i.e. u and v with the first coordinate removed, then u ′ v ′ is not an edge of G m . Hence u ′ v ′ is not an edge in any biclique of π m ; this implies uv is not an edge of any biclique of π m+1 .
Conversely, let e be an edge of G m+1 . If e is also an edge of B 1 , it is contained in no other bicliques of π m+1 . If e is not an edge of B 1 , then removing the first coordinate from each of its endpoints forms an edge e ′ of G m . As π m is a partition of G m , e ′ lies in exactly one (α, β) ∈ π m . Then, by inspection, e must lie in exactly one of the corresponding bicliques in π m+1 .
As bp(G 1 ) = 1, our proof is concluded by applying the above claim inductively.
Proof. For a graph G, we write A(G) for the adjacency matrix of the graph, and rank(G) for the rank of A(G). Suppose P 1 , . . . , P k form a biclique partition of G. Then A(G) = k i=1 A(P i ). Since rank is subadditive and bicliques have rank 2, rank(G) ≤ 2k. This implies bp(G) ≥ rank(G)/2.
We conclude the proof by calculating rank(G m ), where G m is the same graph as defined above. We define the following order: 0 < 1 < * and use lexicographical order for the product spaces {0, 1, * } m , for all m.
Note that A m = A(G m ) has 3 m rows (and columns) and the final row (and column) in the above order consists solely of 0's. We shall show by induction on m that the first 3 m − 1 rows of A m = A(G m ), together with the all 1 vector, form a linearly independent set. This is trivial for m = 1.
In block matrix notation, and using the convention that A 0 = 0 , The second matrix is obtained from the first by simple row operations. We define A ′ m as the matrix formed by replacing the final row of this second matrix by a row of only 1's.

Relationship between lbc and lbp
As before, we write (α, β) for a biclique with vertex classes α and β.
In a contrast to the previous section's results, we show that lbp cannot be bounded by lbc, indeed, even for lbp(G) = 2, it is possible for lbc(G) to be arbitrarily large. More concretely: A crown graph on 2t vertices, H t , is K t,t with a perfect matching removed. We may label the vertices of H t as u 1 , . . . , u t and v 1 , . . . , v t ; u i v j is an edge if and only if i = j, and there are no other edges.
We shall show that an r-local partition of G m can be altered to form an r-local partition of H t , for t linear in m. We then show that the local biclique cover number of crown graphs tends to infinity as the size of the graph does, indeed, lbc(H t ) = Ω(log t). Since lbp ≥ lbc, this suffices to finish the proof.
Proof of Theorem 6. Let G m and its subgraphs B 1 , . . . , B m be as above. We say that an edge uv is shared if it is an edge in two of the covering bicliques; equivalently there are two i such that Let π be a partition of G-we call bicliques in π partitioning bicliques. This lemma, though slightly technical, is key to our approach. A more intuitive formulation is that all bicliques containing an edge shared by two covering bicliques are either 'close' to being contained in one of these covering bicliques or 'very small'.
Notice that if any of α e 1 , α e 2 , β e 1 or β e 2 are singletons, we are done, so we assume the contrary. Suppose at least one of (0, 1, * , . . . , * ) and (1, 0, * , . . . , * ) is in A-without loss of generality (0, 1, * , . . . , * ) is in α. Then every vertex in β must have a 1 in the first coordinate. But any vertex in β e 2 has 1 in the second coordinate. Thus there is only one vertex in β e 2 , contradicting our earlier assumption.
Therefore neither (0, 1, * , . . . , * ) nor (1, 0, * , . . . , * ) is in A. A second vertex in α e 1 must have a 0 in the first coordinate, a * in the second coordinate and without loss of generality, a 0 in the third coordinate. Equally, a second vertex in β e 2 must be ( * , 1, 1, * , . . . , * ) in order to be adjacent to the vertices we have assumed are in α.
A further vertex in α e 2 must start with * , followed by 0 and have a further non-asterisk digit, in the i th place, say, (i > 2). Our previous assumptions determine that there is only one further vertex in A-the vector with 1's in the first and i th coordinates. It can be seen that A 1 and A 2 are both K 2,2 .
We now define for each i, a colouring c i of the shared edges of B i . If e is a shared edge of B i and B j and A is the partitioning biclique containing it, c i (e) is red if A e i is a star or a K 2,2 and blue otherwise. Note that the preceding lemma shows that if c i (e) is blue then A e j is a star. A shared edge is blue in at most one colouring. Hence, each of the 2 m 2 = m(m − 1) shared edges is red in at least one of the m colourings, implying that at least one of the m covering bicliques, B 1 say, must contain at least m − 1 shared edges coloured red.
All shared edges are vertex-disjoint-as seen by the form of the edges as vectors-so we may label the edges as u 1 v 1 , . . . , u m−1 v m−1 , where the u i and the v j are from different classes of B 1 . We seek a large B ⊆ B 1 such that all shared edges in B are in partitioning bicliques that restrict to stars on B 1 . Pick I ⊆ [m − 1] as follows. Let 1 ∈ I. If the shared edge e = u 1 v 1 ∈ A ∈ π and A e 1 ∼ = K 2,2 then discard from I the (at most two) indices other than 1 for which one of u i and v i is a vertex of this K 2,2 . Then proceed to the next index not already discarded, and continue in the same way. Since at each stage, we throw away at most two indices, the set of surviving indices, I, satisfies |I| ≥ (m − 1)/3.
Let B be the induced subgraph of B 1 with the u i and v j as vertices, for i ∈ I, j ∈ I. Let H be the subgraph of B formed by removing all shared edges, u i v i for i ∈ I. Clearly, H is isomorphic to H |I| , the crown graph on 2|I| vertices. Let A be a biclique containing one of these removed edges, e, and note that A ∩ B is the union of at most two disjoint bicliques. By the construction of B, the component of A∩B containing e, A e 1 ∩B, is a star. We label the other (possibly empty) biclique component A ′ . From π, we induce a partition π ′ of H as follows. If A ∈ π contains an edge of H, then place A∩H inside π ′ . Now, A∩H = A∩B and is hence a union of bicliques, unless A contains a removed edge. Using G − e to denote the graph G with the edge e deleted, in this case, , the latter component remaining a star. Note that if π is a k-local partition of G m , then π ′ is a k-local partition of H. This argument is valid for all partitions π of G, so lbp(H) ≤ lbp(G m ).
We now complete the proof in the following lemma: Lemma 8. lbc(H t ) ≥ 1 2 ⌈log t⌉. Proof. A biclique cover of H t induces a biclique cover of K t when two corresponding vertices (i.e. u i and v i for each i) are identified as one. As mentioned earlier, lbc(K t ) = ⌈log t⌉ so, there must be some vertex of the K t in at least ⌈log t⌉ bicliques belonging to the induced cover. This implies one of the vertices of H t that are identified to it is in at least 1 2 ⌈log t⌉ bicliques, in the original covering.

Bounding lbp(G), for lbc(G) = 2
The previous section showed that even for lbc(G) = 2, we cannot place an absolute bound on lbp(G). In this section, we instead aim for bounds involving additional covering information about G. One way of doing this is by looking at the number of bicliques in a 2-local cover of G: Theorem 9. If G has a 2-local m-cover then lbp(G) ≤ 2⌈log(m − 1)⌉ + 2. This upper bound is best possible up to a constant factor by Theorem 6. We proceed by using an argument similar to the start of the proof of Theorem 4 to reduce proving the upper bound for all graphs with a 2-local m-cover to proving it for one particular graph. This 'worst' graph will turn out to be similar to the graph used in the proof of Theorem 6.
Proof. Fix a 2-local m-cover of G. We may identify vertices v ∈ V (G) with vectorsṽ ∈ {0, 1, * } m with exactly m − 2 * ′ s, similar to the proof of Theorem 4. As shown there, we may assume no two vertices have the same representation, and that all such vectors are the representation of some vertex, i.e. we assume that Note that there is an edge between two vertices u and v if and only if there For i = 1, . . . , m, let B i be the induced subgraph on the vertices whose i th coordinate is not * . We define shared edges in an identical manner to in Section 4 and we shall define C i , a subgraph of B i , such that every edge of G is an edge in exactly one C i .
Let C i contain all non-shared edges of B i . Additionally, for all i and j, let C i contain exactly one of the edges shared between B i and B j , and let C j contain the other. Thus any vertex is in at most two C i , and the C i are isomorphic, so lbp(G) ≤ 2lbp(C 1 ). But C i is a complete bipartite graph minus a matching of size m − 1. It is easy to show that lbp(C 1 ) ≤ lbp(H m−1 ) + 1, where H m−1 is the crown graph on 2(m − 1) vertices.
We now show that lbp(H t ) ≤ ⌈log t⌉, for any t. We name the classes of H t U and V . We assign to each vertex a unique label consisting of its class name and a binary vector of length ⌈log t⌉. For each position, i = 1, . . . , ⌈log t⌉, we generate two bicliques corresponding to the difference in the i th position of the binary vector. More specifically, we let B 1 i be the induced biclique formed by all the vertices of class U with a 0 in the i th coordinate and all vertices of class V with a 1 in the i th coordinate. Similarly, we let B 2 i be the induced biclique formed by all vertices of class U with a 1 in the i th coordinate and all vertices of class V with a 0 in the i th coordinate. The collection of all these bicliques is a ⌈log t⌉-local partition of H t . This concludes the proof.
Since bc(G) is a measure of independent interest to local measures, one may try to use the separate existence of a m-cover in a graph with lbc(G) = 2, rather than the existence of a 2-local m-cover, to bound lbp(G). More formally, we ask: Question 1. What is the smallest k(m) such that if the graph G has bc(G) = m and lbc(G) = 2, we have lbp(G) ≤ k?
Theorem 6 tells us that k(m) ≥ 1+o (1) 2 log m. However, an upper bound does not follow directly from Theorem 9 as the cover that shows lbc(G) = 2 may be genuinely different from the cover that shows bc(G) = m. The following result shows this: Proof. First, we make a general observation about biclique covers. Two edges, {v 1 , v 2 } and {u 1 , u 2 } ∈ E(G) are called strongly independent if they are independent and the minimum degree of G[u 1 , u 2 , v 1 , v 2 ] is 1-in other words, they are vertex disjoint and do not lie in the same K 2,2 subgraph. No biclique can contain both edges so if E(G) contains a set of k pairwise strongly independent edges, bc(G) ≥ k.
Let X = {x 1 , . . . , x m }, Y = {y i,j : 1 ≤ i < j ≤ m}∪{y [m] } and let V (G) = X ∪ Y . Let there be an edge from x i to y i,j and to y j,i for all appropriate j. Also, let y [m] have edges to all of the x i . This defines a bipartite graph, G. Let the partition π consist of a K 1,m with its centre at y [m] , and stars at each of the x i each with leaves at all adjacent vertices other than y [m] . Thus lbp(G) = lbc(G) = 2. Note that I = {{x 1 , y 1,2 }, {x 2 , y 2,3 }, . . . , {x m , y m,1 }} is a set of strongly independent edges. Therefore bc(G) ≥ m, and so bp(G) = bc(G) = m as we can cover (indeed partition) with stars that have their centre in X.
Suppose κ is a biclique cover of G using just m bicliques. Each of these contains exactly one of the strongly independent edges listed above.
We can see that I ∪ {x 1 , y 1,3 } \ {x 1 , y 1,2 } is also a strongly independent set of m edges. Therefore, x 1 must be at the centre of a star in κ. Similarly, every x i must be the centre of a star in κ, and these m stars account for all the bicliques in κ. So the star with centre x i , must contain all vertices adjacent to x i . Thus y [m] is in m bicliques of κ.
So we can see that insisting that a cover of a graph G attains bc(G) may ensure the cover is not close to being optimal for lbc. This leads to the following question-if we insist that the cover of a graph attains lbc(G), could this ensure that it is far from being optimal for bc? More formally: Question 2. Suppose bc(G) = m, lbc(G) = k, what is the smallest r = r(m, k) such that we can guarantee G has a k-local r-cover?
An answer to this for k = 2, combined with Theorem 9, would lead to a partial solution of Question 1.
The following example of the hypercube is instructive, in giving bounds on the problem-in particular, it shows r(2 d−1 , d/2) ≥ d2 d−3 , for d even.
Example. Consider Q d , for d even. It is easy to show that bp(Q d ) = bc(Q d ) = 2 d−1 . Indeed, each biclique contains at most d edges, and e(Q d ) = d2 d−1 , so bc(Q d ) ≥ 2 d−1 . On the other hand, we may partition using |Q d |/2 = 2 d−1 stars since Q d is bipartite. Dong and Liu [4] showed that lbp(Q d ) = lbc(Q d ) = d/2. In fact, their proof showed that a cover achieves this only if it consists solely of K 2,2 's so every d/2-local cover contains at least d2 d−3 bicliques.