Bipartite graphs


Definition of a Bipartite Graph

A bipartite graph G is one whose vertex set can be partitioned into two subsets A and B so that every edge joins a vertex in A to a vertex in B.

Equivalently, the induced subgraphs G[A] and G[B] contain no edges, making them empty graphs on their respective vertex sets.

This structure prohibits any odd cycle from existing, since an odd cycle would force an edge within one part when you alternate back to the start.

Example of a bipartite graph without cycles.png|400

Example
The graph with A={1,2}, B={a,b,c} and edges {1a,1b,2b,2c} is bipartite because every edge connects A to B.

Metaphor
Think of two islands A and B connected only by bridges; no bridge ever connects points on the same island.

Characterization by Odd Cycles

A fundamental theorem states that a graph is bipartite if and only if it contains no odd cycles.

If an odd cycle existed, alternating vertices would land two consecutive vertices in the same part, contradicting the bipartition.

Conversely, if no odd cycle is present, one can color vertices by distance parity from an arbitrary root, yielding a valid bipartition.

This criterion provides both a theoretical test and a practical BFS coloring algorithm for detecting bipartiteness.

A graph with an odd cycle.png|400

Example
The cycle C4 is bipartite (no odd cycle), while C3 fails the test due to its length 3.

Metaphor
It’s like checking whether you can two-color every step of a dance floor without stumbling back onto your own color in an odd number of moves.

Complete Bipartite Graphs Ka,b

Recall

A complete graph is one where every pair of distinct vertices is connected by an edge.

A complete bipartite graph Ka,b has parts A,B with |A|=a, |B|=b, and contains every possible edge between A and B.

Such a graph maximizes connectivity across parts while maintaining zero connectivity within each part, yielding ab edges.

Complete bipartite graphs serve as extremal examples and appear in matching theory and network design.

Complete-Bipartite-Graph.png|400

Example
K2,3 connects every one of the 2 vertices in A to all 3 in B, totaling 6 edges.

Metaphor
Imagine a job fair where every of the a recruiters meets every of the b candidates, and no two recruiters or candidates meet amongst themselves.

Isomorphism of Ka,b and Kc,d

Two complete bipartite graphs Ka,b and Kc,d are isomorphic exactly when their part sizes match as sets, i.e., {a,b}={c,d}.

This means either a=c and b=d, or a=d and b=c, capturing the symmetry of swapping the two parts.

No other relabeling can equate them, since the degree multiset {b,b,,a,a} uniquely identifies the part sizes.

Example
K2,5K5,2 but neither is isomorphic to K3,4.

Metaphor
It’s like two rectangular grids: a 2×5 grid can be turned into a 5×2 grid by rotation, but not into a 3×4 one.

Induced Subgraphs Remain Bipartite

Any induced subgraph of a bipartite graph inherits the original partition restricted to the selected vertices.

Since no edges within a part existed originally, none can appear in the induced subgraph.

Thus bipartiteness is preserved under vertex deletion.

Example
Removing one vertex from K3,3 yields a bipartite subgraph with parts sizes (3,2).

Metaphor
It’s like removing some bridges between two islands—you still have two islands with no internal bridges.

Complete Bipartite Graphs Which Are Trees

A tree is an acyclic connected graph. For Ka,b to be a tree, it must have ab edges and no cycles.

Since a tree on n=a+b vertices has exactly n1 edges, we require ab=a+b1.

Solving yields (a1)(b1)=1, so {a1,b1}={1,1} giving a=b=2.

Hence only K1,1 (a single edge) and K2,1 (a path of length 2) are complete bipartite trees.

Example
K1,1 is just an edge, K2,1 is a 3-vertex path, both trees.

Metaphor
Imagine two stations connected by all possible rails: only trivial rail lines avoid forming loops.

Regular Bipartite Graphs Have Equal Part Sizes

Let G be a k-regular bipartite graph with parts A and B. Each vertex in A has k neighbors in B, contributing k|A| cross-edges.

Similarly, vertices in B contribute k|B| cross-edges. Counting the same edges twice gives k|A|=k|B|.

Since k>0, we conclude |A|=|B|.

3-Connected 3-Regular bipartite Graph.png|400

Example
A 3-regular bipartite graph must have the same number of vertices on each side, e.g. A and B both of size 4.

Metaphor
If every dancer on one side has exactly k partners on the other, both sides must have equal headcounts to match the partnerships.

Conclusion

Bipartite graphs split vertices into two independent parts with no internal edges and avoid odd cycles, ensuring two-colorability.

Complete bipartite graphs Ka,b maximize cross-part connections, are isomorphic precisely when {a,b} match, and reduce to simple trees only in trivial small cases.

Induced subgraphs of bipartite graphs remain bipartite, and regular bipartite graphs enforce equal part sizes, demonstrating the rich interplay of combinatorial counting and structural constraints in this class of graphs.