Sven Kloppenburg and Felix C. Gärtner: Consistent detection of global predicates in asynchronous systems with crash failures. Technical Report TUD-BS-2000-01, Department of Computer Science, Darmstadt University of Technology, Darmstadt, Germany, Feb. 2000.


Abstract

A fundamental problem in testing and analysis of distributed systems is detecting whether the global state of a system satisfies some predicate throughout a computation. There exist some well-developed methods for detecting predicates in fault-free systems (e.g., the predicate transformers possibly and definitely of Cooper, Marzullo and Neiger), but for systems running in faulty environments findings are rare.

We study the problem of detecting global predicates in distributed systems which may be opposed to process crashes. Process crashes introduce a new form of uncertainty---the problem of reliable failure detection. We first show that this turns the previously observer-invariant notions of possibly and definitely into observer dependent notions and thus renders these predicate transformers useless in faulty environments. Then we introduce a new pair of predicate transformers called negotiably and discernibly tailored to the new system model in the following sense: Building on the notion of possibly, we show that negotiably retains the same type of ``pessimistic'' semantics and thus can be used to detect the violation of special types of safety properties. In analogy to definitely, we show that our notion of discernibly has similar ``optimistic'' semantics and thus can be used to detect certain forms of liveness properties. We give several examples for predicates to which our new predicate transformers are useful and present algorithms to detect negotiably and discernibly in asynchronous distributed systems.


Available as gnuzipped Postscript file, BibTeX entry.


Felix Gärtner (felix@informatik.tu-darmstadt.de)