Debugging Parallel Programs with Instant Replay
IEEE Transactions on Computers
Partial orders for parallel debugging
PADD '88 Proceedings of the 1988 ACM SIGPLAN and SIGOPS workshop on Parallel and distributed debugging
Consistent detection of global predicates
PADD '91 Proceedings of the 1991 ACM/ONR workshop on Parallel and distributed debugging
Efficient algorithms for distributed snapshots and global virtual time approximation
Journal of Parallel and Distributed Computing - Special issue on parallel and discrete event simulation
Local and temporal predicates in distributed systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
Model checking using net unfoldings
TAPSOFT '93 Selected papers of the colloquium on Formal approaches of software engineering
Distributed snapshots: determining global states of distributed systems
ACM Transactions on Computer Systems (TOCS)
Efficient detection of channel predicates in distributed systems
Journal of Parallel and Distributed Computing
Efficient Distributed Detection of Conjunctions of Local Predicates
IEEE Transactions on Software Engineering
Time, clocks, and the ordering of events in a distributed system
Communications of the ACM
Elements of distributed computing
Elements of distributed computing
Symbolic Model Checking
Detection of Weak Unstable Predicates in Distributed Programs
IEEE Transactions on Parallel and Distributed Systems
Detecting Temporal Logic Predicates on the Happened-Before Model
IPDPS '02 Proceedings of the 16th International Parallel and Distributed Processing Symposium
Computation Slicing: Techniques and Theory
DISC '01 Proceedings of the 15th International Conference on Distributed Computing
On Slicing a Distributed Computation
ICDCS '01 Proceedings of the The 21st International Conference on Distributed Computing Systems
Efficient dependency tracking for relevant events in shared-memory systems
Proceedings of the twenty-fourth annual ACM symposium on Principles of distributed computing
Scalable algorithms for global snapshots in distributed systems
Proceedings of the 20th annual international conference on Supercomputing
The temporal logic of programs
SFCS '77 Proceedings of the 18th Annual Symposium on Foundations of Computer Science
Detecting temporal logic predicates on distributed computations
DISC'07 Proceedings of the 21st international conference on Distributed Computing
Hi-index | 0.00 |
The earlier work on predicate detection has assumed that the given computation is finite. Detecting violation of a liveness predicate requires that the predicate be evaluated on an infinite computation. In this work, we develop the theory and associated algorithms for predicate detection in infinite runs. In practice, an infinite run can be determined in finite time only if it consists of a recurrent behavior with some finite prefix. Therefore, our study is restricted to such runs. We introduce the concept of d-diagram, which is a finite representation of infinite directed graphs. Given a d-diagram that represents an infinite distributed computation, we solve the problem of determining if a global predicate ever became true in the computation. The crucial aspect of this problem is the stopping rule that tells us when to conclude that the predicate can never become true in future. We also provide an algorithm to provide vector timestamps to events in the computation for determining the dependency relationship between any two events in the infinite run.