Efficient detection of restricted classes of global predicates
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.
Unable to display preview. Download preview PDF.
- [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
- [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
- [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
- [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
- [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
- [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
- [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
- [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
- [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
- [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
- [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
- [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
- [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
- [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
- [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