A graph G = (V;E) is called bipartite if its vertex set V can be partitioned into two disjoint subsets L and R such that all edges are between L and R. For example, the graph G 1 below on the left 1 6 2 3 4 7 5 G 1 1 3 2 4 5 G 2 is bipartite, because we can partition its vertex set into L = f1;2;4;6gand R = f3;5;7g, and then each edge