Faster possibility detection by combining two approaches

  • Scott D. Stoller
  • Fred B. Schneider
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 972)


A new algorithm is presented for detecting whether a particular computation of an asynchronous distributed system satisfies Poss Φ (read “possibly Φ”), meaning the system could have passed through a global state satisfying Φ. Like the algorithm of Cooper and Marzullo, Φ may be any global state predicate; and like the algorithm of Garg and Waldecker, Poss Φ is detected quite efficiently if Φ has a certain structure. The new algorithm exploits the structure of some predicates Φ not handled by Garg and Waldecker's algorithm to detect Poss Φ more efficiently than is possible with any algorithm that, like Cooper and Marzullo's, evaluates Φ on every global state through which the system could have passed. A second algorithm is also presented for off-line detection of Poss Φ. It uses Strassen's scheme for fast matrix multiplication. The intrinsic complexity of off-line and on-line detection of Poss Φ is discussed.




Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [AHU74]
    Alfred V. Aho, John E. Hopcroft, and Jeffrey D. Ullman. The design and analysis of computer algorithms. Addison Wesley, 1974.Google Scholar
  2. [BDG88]
    José Luis Balcázar, Josep Díaz, and Joaquim Gabarró. Structural Complexity I. Springer-Verlag, 1988.Google Scholar
  3. [BM93]
    Özalp Babaoğlu and Keith Marzullo. Consistent global states of distributed systems: Fundamental concepts and mechanisms. In Sape Mullender, editor, Distributed Systems, chapter 5, pages 97–145. Addison Wesley, 2nd ed., 1993.Google Scholar
  4. [CG94]
    Craig M. Chase and Vijay K. Garg. On techniques and their limitations for the global predicate detection problem in distributed systems. Technical Report ECE-PDS-1994-04, Parallel and Distributed Systems Laboratory, University of Texas at Austin, 1994.Google Scholar
  5. [CM91]
    Robert Cooper and Keith Marzullo. Consistent detection of global predicates. In Proceedings of the ACM/ONR Workshop on Parallel and Distributed Debugging, 1991. Appeared as ACM SIGPLAN Notices 26(12):167–174, December 1991.Google Scholar
  6. [CW87]
    D. Coppersmith and S. Winograd. Matrix multiplication via arithmetic progressions. In Conference Proceedings of the 19th Annual ACM Symposium on Theory of Computing, pages 1–6, 1987.Google Scholar
  7. [DJR93]
    Claire Diehl, Claude Jard, and Jean-Xavier Rampon. Reachability analysis on distributed executions. In J.-P. Jouannaud and M.-C. Gaudel, editors, TAPSOFT '93: Theory and Practice of Software Development, volume 668 of Lecture Notes in Computer Science, pages 629–643. Springer-Verlag, 1993.Google Scholar
  8. [FH94]
    Michael L. Fredman and Monika Rauch Henzinger. Lower bounds for dynamic connectivity problems in graphs. Technical Report TR 94-1420, Cornell University, April 1994. Also appeared in extended abstract: Monika Rauch. Improved Data Structures for Fully Dynamic Biconnectivity. In Proc. 26th Annual Symposium on Theory of Computing (STOC '94), pages 686–695, 1994.Google Scholar
  9. [Fid88]
    C. Fidge. Timestamps in message-passing systems that preserve the partial ordering. In Proceedings of the 11th Australian Computer Science Conference, pages 56–66, 1988.Google Scholar
  10. [FR94]
    Eddy Fromentin and Michel Raynal. Inevitable global states: a concept to detect properties of distributed computations. Internal Publication PI-842, IRISA, June 1994.Google Scholar
  11. [GJ79]
    Michael R. Garey and David S. Johnson. Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman and Company, New York, 1979.Google Scholar
  12. [GW92]
    Vijay K. Garg and Brian Waldecker. Detection of unstable predicates in distributed programs. In Proceedings of the 12th International Conference on Foundations of Software Technology and Theoretical Computer Science, volume 652 of Lecture Notes in Computer Science, pages 253–264. Springer-Verlag, 1992.Google Scholar
  13. [GW94]
    Vijay K. Garg and Brian Waldecker. Detection of weak unstable predicates in distributed programs. IEEE Transactions on Parallel and Distributed Systems, 5(3):299–307, 1994.CrossRefGoogle Scholar
  14. [JMN95]
    R. Jegou, R. Medina, and L. Nourine. Linear space algorithm for on-line detection of global predicates. To appear in Proc. International Workshop on Structures in Concurrency Theory (STRICT '95), 1995.Google Scholar
  15. [Lam78]
    Leslie Lamport. Time, clocks, and the ordering of events in a distributed system. Communications of the ACM, 21(7):558–564, 1978.CrossRefGoogle Scholar
  16. [Mat89]
    Friedemann Mattern. Virtual time and global states of distributed systems. In M. Corsnard, editor, Proceedings of the International Workshop on Parallel and Distributed Algorithms, pages 120–131. North-Holland, 1989.Google Scholar
  17. [MN91]
    Keith Marzullo and Gil Neiger. Detection of global state predicates. In Proceedings of the 5th International Workshop on Distributed Algorithms, volume 579 of Lecture Notes in Computer Science, pages 254–272. Springer-Verlag, 1991.Google Scholar
  18. [Str69]
    Volker Strassen. Gaussian elimination is not optimal. Numerische Mathematik, 13:354–356, 1969.CrossRefGoogle Scholar
  19. [TG94]
    Alexander I. Tomlinson and Vijay K. Garg. Monitoring functions on global states of distributed programs. Technical Report TR-PDS-1994-006, Parallel and Distributed Systems Laboratory, University of Texas at Austin, 1994.Google Scholar

Copyright information

© Springer-Verlag 1995

Authors and Affiliations

  • Scott D. Stoller
    • 1
  • Fred B. Schneider
    • 1
  1. 1.Dept. of Computer ScienceCornell UniversityIthacaUSA

Personalised recommendations