Checking global properties for local computations in graphs with applications to invariant testing

Mohamed E. Mosbah, Rodrigue Ossamy · 2004

Global predicates in distributed systems are predicates considering the state of more than one process. They are a useful concept for debugging parallel programs, e.g., for specifying assertions, breakpoints or termination. In This work, we propose an algorithm for detecting the validity of local and global state predicates in distributed algorithms encoded by means of local computations. This algorithm is based on ideas introduced by Cooper and Marzullo and on the approach of Garg and Waldecker. It uses the Lamport's happened-before ordering relationship to construct a partial sorted sequence of all the events that have changed the local state of any process during a computation. While the sequence is traversed, all the global states through which the system has passed are computed and the validity of the given properties is checked. Under the same assumptions, our algorithm is significantly more efficient than the algorithms by Cooper and Marzullo and by Garg and Waldecker.

Read the paper · More papers on PaperTik