Computing and counting longest paths on circular-arc graphs in polynomial time

  • Authors:
  • George B. Mertzios;Ivona Bezáková

  • Affiliations:
  • School of Engineering and Computing Sciences, Durham University, Durham, United Kingdom;Department of Computer Science, Rochester Institute of Technology, Rochester, NY, USA

  • Venue:
  • Discrete Applied Mathematics
  • Year:
  • 2014

Quantified Score

Hi-index 0.04

Visualization

Abstract

The longest path problem asks for a path with the largest number of vertices in a given graph. In contrast to the Hamiltonian path problem, until recently polynomial algorithms for the longest path problem were known only for small graph classes, such as trees. Recently, a polynomial algorithm for this problem on interval graphs has been presented in Ioannidou et al. (2011) [19] with running time O(n^4) on a graph with n vertices, thus answering the open question posed in Uehara and Uno (2004) [32]. Even though interval and circular-arc graphs look superficially similar, they differ substantially, as circular-arc graphs are not perfect; for instance, several problems- e.g. coloring -are NP-hard on circular-arc graphs, although they can be efficiently solved on interval graphs. In this paper, we prove that for every path P of a circular-arc graph G, we can appropriately ''cut'' the circle, such that the obtained (not induced) interval subgraph G^' of G admits a path P^' on the same vertices as P. This non-trivial result is of independent interest, as it suggests a generic reduction of a number of path problems on circular-arc graphs to the case of interval graphs with a multiplicative linear time overhead of O(n). As an application of this reduction, we present the first polynomial algorithm for the longest path problem on circular-arc graphs. In addition, by exploiting deeper the structure of circular-arc graphs, we manage to get rid of the linear time overhead of the reduction, and thus this algorithm turns out to have the same running time O(n^4) as the one on interval graphs. Our algorithm, which significantly simplifies the approach of Ioannidou et al. (2011) [19], computes in the same time an n-approximation of the (exponentially large in worst case) number of different vertex sets that provide a longest path; in the case where G is an interval graph, we compute the exact number. Moreover, in contrast to Ioannidou et al. (2011) [19], this algorithm can be directly extended with the same running time to the case where every vertex has an arbitrary positive weight.