Nearly tight bounds on the number of Hamiltonian circuits of the hypercube and generalizations

It has been shown that for every perfect matching M of the d-dimensional n-vertex hypercube, d>=2, n=2^d, there exists a second perfect matching M^' such that the union of M and M^' forms a Hamiltonian circuit of the d-dimensional hypercube. We prove a generalization of a special case of this result when there are two dimensions that do not get used by M. It is known that the number M"d of perfect matchings of the d-dimensional hypercube satisfies M"d=(de(1+o(1)))^n^/^2 and, in particular, (2d/n)^n^/^2(n/2)!="~(logH"d)/(logM"d)= =M"d is improved to a nearly tight H"d=M"d^2^-^o^(^1^), so the number of Hamiltonian circuits in the hypercube is nearly quadratic in the number of perfect matchings. The proofs are based on a result for graphs that are the Cartesian product of squares and arbitrary bipartite regular graphs that have a Hamiltonian cycle. We also study a labeling scheme related to matchings.