Efficient detection of restricted classes of global predicates

  • Craig M. Chase
  • Vijay K. Garg
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 972)

Abstract

We show that the problem of predicate detection in distributed systems is NP-complete. We introduce a class of predicates, linear predicates, such that for any linear predicate B there exists an efficient detection of the least cut satisfying B. The dual of linearity is postlinearity. These properties generalize several known properties of distributed systems, such as the set of consistent cuts forms a lattice, and the WCP and GCP predicate detection results given in earlier work. We define a more general class of predicates, semilinear predicates, for which efficient algorithms are known to detect whether a predicate has occurred during an execution of a distributed program. However, these methods may not identify the least such cut. Any stable predicate is an example of a semi-linear predicate. In addition, we show that certain unstable predicates can also be semi-linear, such as mutual exclusion violation.

Finally, we show application of max-flow to the predicate detection problem. This result solves a previously open problem in predicate detection, establishing the existence of an efficient algorithm to detect predicates of the form x1+x2...+ xn<k where xi are variables on different processes, k is some constant, and n is larger than 2.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [BM93]
    Ö. Babaoğlu and K. Marzullo. Consistent global states of distributed systems: fundamental concepts and mechanisms, in Distributed Systems, chapter 4. ACM Press, Frontier Series. (S.J. Mullender Ed.), 1993.Google Scholar
  2. [Bou87]
    L. Bouge. Repeated snapshots in distributed systems with synchronous communication and their implementation in CSP. Theoretical Computer Science, 49:145–169, 1987.CrossRefGoogle Scholar
  3. [BR94]
    Ö. Babaoğlu and M. Raynal. Specification and detection of behavioral patterns in distributed computations. In Proc. of 4th IFIP WG 10.4 Int. Conference on Dependable Computing for Critical Applications, San Diego, CA, January 1994. Springer Verlag Series in Dependable Computing.Google Scholar
  4. [CL85]
    K. M. Chandy and L. Lamport. Distributed snapshots: Determining global states of distributed systems. ACM Transactions on Computer Systems, 3(1):63–75, February 1985.CrossRefGoogle Scholar
  5. [CM91]
    R. Cooper and K. Marzullo. Consistent detection of global predicates. In Proc. of the Workshop on Parallel and Distributed Debugging, pages 163–173, Santa Cruz, CA, May 1991. ACM/ONR.Google Scholar
  6. [Fid89]
    C. J. Fidge. Partial orders for parallel debugging. In Proceedings of the ACM SIGPLAN/SIGOPS Workshop on Parallel and Distributed Debugging, volume 24 of SIGPLAN Notices, pages 183–194, January 1989.Google Scholar
  7. [FRGT94]
    E. Fromentin, M. Raynal, V. K. Garg, and A. I. Tomlinson. On the fly testing of regular patterns in distributed computations. In Proc. of the 23rd Intl. Conf. on Parallel Processing, St. Charles, IL, August 1994.Google Scholar
  8. [Gar92]
    V. K. Garg. Some optimal algorithms for decomposed partially ordered sets. Information Processing Letters, 44:39–43, November 1992.CrossRefGoogle Scholar
  9. [GCKM95]
    V. K. Garg, C. Chase, R. Kilgore, and J. R. Mitchell. Detecting conjunctive channel predicates in a distribute programming environment. In Proc. of the International Conference on System Sciences, volume 2, pages 232–241, Maui, Hawaii, January 1995.Google Scholar
  10. [GT86]
    A. V. Goldberg and R. E. Tarjan. A new approach to the maximum flow problem. In Proc. of the Eighteenth Annual ACM Symposium on Theory of Computing, pages 136–146, 1986.Google Scholar
  11. [GW92]
    V. K. Garg and B. Waldecker. Detection of unstable predicates in distributed programs. In Proc. of 12th Conference on the Foundations of Software Technology & Theoretical Computer Science, pages 253–264. Springer Verlag, December 1992. Lecture Notes in Computer Science 652.Google Scholar
  12. [GW94]
    V. K. Garg and B. Waldecker. Detection of weak unstable predicates in distributed programs. IEEE Transactions on Parallel and Distributed Systems, 5(3):299–307, March 1994.CrossRefGoogle Scholar
  13. [HPR93]
    M. Hurfin, N. Plouzeau, and M. Raynal. Detecting atomic sequences of predicates in distributed computations. In Proc. of the Workshop on Parallel and Distributed Debugging, pages 32–42, San Diego, CA, May 1993. ACM/ONR. (Reprinted in SIGPLAN Notices, Dec. 1993).Google Scholar
  14. [JZ90]
    D. B. Johnson and W. Zwaenepoel. Recovery in distributed systems using optimistic message logging and checkpointing. Journal of Algorithms, 11(3):462–491, September 1990.CrossRefGoogle Scholar
  15. [Mat89]
    F. Mattern. Virtual time and global states of distributed systems. In Parallel and Distributed Algorithms: Proceedings of the International Workshop on Parallel and Distributed Algorithms, pages 215–226. Elsevier Science Publishers B. V, 1989.Google Scholar
  16. [MC88]
    B. P. Miller and J. Choi. Breakpoints and halting in distributed programs. In Proc. of the 8th International Conference on Distributed Computing Systems, pages 316–323, San Jose, CA, July 1988. IEEE.Google Scholar
  17. [SK86]
    M. Spezialetti and P. Kearns. Efficient distributed snapshots. In Proc. of the 6th International Conference on Distributed Computing Systems, pages 382–388, 1986.Google Scholar
  18. [SM94]
    R. Schwartz and F. Mattern. Detecting causal relationships in distributed computations: In search of the holy grail. Distributed Computing, 7(3): 149–174, 1994.Google Scholar
  19. [SS95]
    Scott D. Stoller and Fred B. Schneider. Faster possibility detection by combining two approaches. In Proceedings of the Workshop on Distributed Algorithms, Le Mont Saint Michel, France, September 1995. available as Cornell University Computer Science Technical Report 95-1511.Google Scholar
  20. [TG93]
    A. I. Tomlinson and V. K. Garg. Detecting relational global predicates in distributed systems. In Proc. of the Workshop on Parallel and Distributed Debugging, pages 21–31, San Diego, CA, May 1993. ACM/ONR.Google Scholar

Copyright information

© Springer-Verlag 1995

Authors and Affiliations

  • Craig M. Chase
    • 1
  • Vijay K. Garg
    • 1
  1. 1.Parallel and Distributed Systems Laboratory Electrical and Computer Engineering DepartmentThe University of Texas at AustinUSA

Personalised recommendations