Condition for Bipartite Graph to be Hamiltonian

Theorem
Let $G = \left({A|B, E}\right)$ be a bipartite graph.

Let $G$ be Hamiltonian.

Then $|A| = |B|$.

That is, there is the same number of vertices in $A$ as there are in $B$.

Proof
To be Hamiltonian, a graph $G$ needs to have a Hamilton cycle, i.e. one which goes through all the vertices of $G$.

As each edge in $G$ connects a vertex in $A$ with a vertex in $B$, any cycle alternately passes through a vertex in $A$ then a vertex in $B$.

Let $G = \left({A|B, E}\right)$ be a bipartite graph.

Suppose WLOG that $|A| > |B|$, i.e. there are more vertices in $A$ than in $B$.

Let $|A| = m, |B| = n$.

Suppose $G$ has a Hamilton cycle $C$.

Let us start tracing that cycle at $u \in B$.

After $2n$ edges have been traversed, we will have arrived back at $u$ again, and all the vertices of $B$ will have been visited.

But there will still be $m - n$ vertices in $A$ which can not have been visited.

Hence $C$ can not be a Hamilton cycle.

Note
The implication does not go both ways.

This graph:


 * NonHamiltonianBipartite.png

clearly fulfils the conditions (i.e. bipartite graph such that $|A| = |B|$) and is equally clearly not Hamiltonian.