A synthesis on partition refinement: A useful routine for strings, graphs, boolean matrices and automata

  • Michel Habib
  • Christophe Paul
  • Laurent Viennoti
Algorithm and Data Structures I
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1373)

Abstract

Partition refinement techniques are used in many algorithms. This tool allows efficient computation of equivalence relations and is somehow dual to union-find algorithms. The goal of this paper is to propose a single routine to quickly implement all these already known algorithms and to solve a large class of potentially new problems. Our framework yields to a unique scheme for correctness proofs and complexity analysis. Various examples are presented to show the different ways of using this routine.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    A.V. Aho, J.E. Hopcroft, and J.D. Ullman. Design and analysis of computer algorithms. Addison-Wesley, 1974.Google Scholar
  2. [2]
    J. Amilhastre. Représentation par automates de l'ensemble des solutions d'un problème de satisfaction de contraintes. Technical Report 94056, LIRMM, 1994.Google Scholar
  3. [3]
    K.S. Booth and G.S. Lueker. Testing for the consecutive ones property, interval graphs and graph planarity using pq-tree algorithms. J. Comput. and Syst. Sciences, 13:335–379, 1976.MATHMathSciNetGoogle Scholar
  4. [4]
    D.G Corneil, S. Olariu, and L. Stewart. The ultimate interval graph recognition algorithm. Extended abstract, 1997.Google Scholar
  5. [5]
    E. Dahlhaus, J. Gustedt, and R.M. McConnell. Efficient and practical modular decomposition. In Proc. of SODA, 1997.Google Scholar
  6. [6]
    M. Habib, R. McConnell, C. Paul, and L. Viennot. Lex-bfs and partition refinement, with applications to transitive orientation, interval graph recognition and consecutive ones testing. Theoritical Computer Science, 1997. to appear.Google Scholar
  7. [7]
    J.E. Hopcropft. A nlogn algorithm for minizing states in a finite automaton. Theory of Machine and Computations, pages 189–196, 1971.Google Scholar
  8. [8]
    W.L. Hsu. A simple test for the consecutive ones property. In LNCS 650, pages 459–468, 1992.Google Scholar
  9. [9]
    N. Korte and R. Möhring. An incremental linear-time algorithm for recognizing interval graphs. SIAM J. of Comp., 18:68–81, 1989.MATHCrossRefGoogle Scholar
  10. [10]
    A. Lubiw. Doubly lexical orderings of matrices. SIAM Journ. of Algebraic Disc.Meth., 17:854–879, 1987.MathSciNetGoogle Scholar
  11. [11]
    R.M. McConnell and J.P. Spinrad. Linear-time modular decomposition and efficient transitive orientation of comparability graphs. In Proc. of SODA, pages 536–545, 1994.Google Scholar
  12. [12]
    R.M. McConnell and J.P. Spinrad. Linear-time modular decomposition and efficient transitive orientation of undirected graphs. In Proc. of SODA, 1997.Google Scholar
  13. [13]
    R. Paige and R.E. Tarjan. Three partition refinement algorithms. SIAM Journ. of Comput., 16(6):973–989, 1987.MATHCrossRefMathSciNetGoogle Scholar
  14. [14]
    Donald J. Rose, R. Endre Tarjan, and George S. Leuker. Algorithmic aspects of vertex elimination on graphs. SIAM J. of Comp., 5(2):266–283, June 1976.MATHCrossRefGoogle Scholar
  15. [15]
    J.P. Spinrad. Graph partitioning. preprint, 1986.Google Scholar
  16. [16]
    R.E. Tarjan. Efficiency of a good but not linear set union algorithm. J. of ACM, 22:215–225, 1975.MATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag 1998

Authors and Affiliations

  • Michel Habib
    • 1
  • Christophe Paul
    • 1
  • Laurent Viennoti
    • 2
  1. 1.LIRMMMontpellierFrance
  2. 2.LIAFAParisFrance

Personalised recommendations