Dilworth's Theorem and Its Application for Path Systems of a Cycle - Implementation and Analysis

  • Authors:
  • András A. Benczúr;Jörg Förster;Zoltán Király

  • Affiliations:
  • -;-;-

  • Venue:
  • ESA '99 Proceedings of the 7th Annual European Symposium on Algorithms
  • Year:
  • 1999

Quantified Score

Hi-index 0.01

Visualization

Abstract

Given a set P of m subpaths of a length n path P, Gy枚ri's theorem gives a min-max formula for the smallest set G of subpaths, the so-called generators, such that every element of P arises as the union of some members of G. We present an implementation of Frank's algorithm for a generalized version of Gy枚ri's problem that applies to subpaths of cycles and not just paths. The heart of this algorithm is Dilworth's theorem applied for a specially prepared poset. - We give an O(n2.5驴log n + m log n) running time bound for Frank's algorithm by deriving non-trivial bounds for the size of the poset passed to Dilworth's theorem. Thus we give the first practical running time analysis for an algorithm that applies to subpaths of a cycle. - We compare our algorithm to Knuth's O((n + m)2) time implementation of an earlier algorithm that applies to subpaths of a path only. We apply a reduction to the input subpath set that reduces Knuth's running time to O(n2 log2 n+mlog n). We note that derivatives of Knuth's algorithm seem unlikely to be able to handle subpaths of cycles. - We introduce a new "cover edge" heuristic in the bipartite matching algorithm for Dilworth's problem. Tests with random input indicate that this heuristic makes our algorithm (specialized to subpaths of a path) outperform Knuth's one for all except the extremely sparse (m 驴 n/2) inputs. Notice that Knuth's aplgorithm (with our reduction applied) is better by a factor of approximately 驴 n in theory.