I. Introduction
Bipartite graphs appear in many fields of science and engineering to represent systems that are described by local constraints on different subsets of variables involved in the description of the system. In such a representation, the nodes on one side of the bipartition represent the variables while the nodes on the other side are representative of the constraints. One example is the Tanner graph representation of low-density parity-check (LDPC) codes, where variable nodes represent the code bits and the constraints are parity-check equations. In the bipartite graph representation of systems, the cycle distribution of the graph often plays an important role in understanding the properties of the system. For example, the performance of LDPC codes, both in waterfall and error floor regions, is highly dependent on the distribution of short cycles of the Tanner graph [1]–[12].