Fast hamiltonicity checking via bases of perfect matchings

  • Authors:
  • Marek Cygan;Stefan Kratsch;Jesper Nederlof

  • Affiliations:
  • University of Warsaw, Warsaw, Poland;Technical University Berlin, Berlin, Germany;Utrecht University, Utrecht, Netherlands

  • Venue:
  • Proceedings of the forty-fifth annual ACM symposium on Theory of computing
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

For an even integer t ≥ 2, the Matching Connectivity matrix Ht is a matrix that has rows and columns both labeled by all perfect matchings of the complete graph Kt on t vertices; an entry Ht[M1,M2] is 1 if M1∪ M2 is a Hamiltonian cycle and 0 otherwise. Motivated by the computational study of the Hamiltonicity problem, we present three results on the structure of Ht: We first show that Ht has rank exactly 2t/2-1 over GF(2) via an appropriate factorization that explicitly provides families of matchings Xt forming bases for Ht. Second, we show how to quickly change representation between such bases. Third, we notice that the sets of matchings Xt induce permutation matrices within Ht. We use the factorization to derive an 1.888n nO(1) time Monte Carlo algorithm that solves the Hamiltonicity problem in directed bipartite graphs. Our algorithm as well counts the number of Hamiltonian cycles modulo two in directed bipartite or undirected graphs in the same time bound. Moreover, we use the fast basis change algorithm from the second result to present a Monte Carlo algorithm that given an undirected graph on n vertices along with a path decomposition of width at most pw decides Hamiltonicity in (2+√2)pw nO(1) time. Finally, we use the third result to show that for every ε 0 this cannot be improved to (2+√2-ε)pwnO(1) time unless the Strong Exponential Time Hypothesis fails, i.e., a faster algorithm for this problem would imply the breakthrough result of an O((2-ε')n) time algorithm for CNF-Sat.