Communicating sequential processes
Communicating sequential processes
Fairness
Parallel program design: a foundation
Parallel program design: a foundation
Verifying temporal properties without temporal logic
ACM Transactions on Programming Languages and Systems (TOPLAS)
On verifying that a concurrent program satisfies a nondeterministic specification
Information Processing Letters
A hierarchy of temporal properties (invited paper, 1989)
PODC '90 Proceedings of the ninth annual ACM symposium on Principles of distributed computing
Process algebra
Completing the temporal picture
Selected papers of the 16th international colloquium on Automata, languages, and programming
The existence of refinement mappings
Theoretical Computer Science
Proving correctness with respect to nondeterministic safety specifications
Information Processing Letters
The temporal logic of reactive and concurrent systems
The temporal logic of reactive and concurrent systems
Providing high availability using lazy replication
ACM Transactions on Computer Systems (TOCS)
Model checking and modular verification
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Transactions on Programming Languages and Systems (TOPLAS)
A behavioral notion of subtyping
ACM Transactions on Programming Languages and Systems (TOPLAS)
Forward and backward simulations I.: untimed systems
Information and Computation
Liveness in timed and untimed systems
Information and Computation
Eventually-serializable data services
Theoretical Computer Science
Modalities for model checking (extended abstract): branching time strikes back
POPL '85 Proceedings of the 12th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Communicating and mobile systems: the &pgr;-calculus
Communicating and mobile systems: the &pgr;-calculus
Using I/O automata for developing distributed systems
Foundations of component-based systems
The Online Transportation Problem
SIAM Journal on Discrete Mathematics
Proving Liveness Properties of Concurrent Programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Verification by augmented finitary abstraction
Information and Computation
Verification by Augmented abstraction: the automata---theoretic view
Journal of Computer and System Sciences
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Communication and Concurrency
How to cook a temporal proof system for your pet language
POPL '83 Proceedings of the 10th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers
Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers
Temporal Verification Diagrams
TACS '94 Proceedings of the International Conference on Theoretical Aspects of Computer Software
Visual Abstractions for Temporal Verification
AMAST '98 Proceedings of the 7th International Conference on Algebraic Methodology and Software Technology
CONCUR '97 Proceedings of the 8th International Conference on Concurrency Theory
Dynamic Input/Output Automata: A Formal Model for Dynamic Systems
CONCUR '01 Proceedings of the 12th International Conference on Concurrency Theory
A Compositional Trace-Based Semantics for Probabilistic Automata
CONCUR '95 Proceedings of the 6th International Conference on Concurrency Theory
Generalized Temporal Verification Diagrams
Proceedings of the 15th Conference on Foundations of Software Technology and Theoretical Computer Science
Local Liveness for Compositional Modeling of Fair Reactive Systems
Proceedings of the 7th International Conference on Computer Aided Verification
PVS: A Prototype Verification System
CADE-11 Proceedings of the 11th International Conference on Automated Deduction: Automated Deduction
ICDCS '02 Proceedings of the 22 nd International Conference on Distributed Computing Systems (ICDCS'02)
LIVENESS IN TIMED AND UNTIMED SYSTEMS
LIVENESS IN TIMED AND UNTIMED SYSTEMS
Correctness of Communications Protocols, A case Study
Correctness of Communications Protocols, A case Study
Abstraction-based deductive-algorithmic verification of reactive systems
Abstraction-based deductive-algorithmic verification of reactive systems
Information and Computation
Synthesis of fault-tolerant concurrent programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
A theory of normed simulations
ACM Transactions on Computational Logic (TOCL)
Proving the Correctness of Multiprocess Programs
IEEE Transactions on Software Engineering
The temporal logic of programs
SFCS '77 Proceedings of the 18th Annual Symposium on Foundations of Computer Science
Hi-index | 0.00 |
We present a new approach, based on simulation relations, for reasoning about liveness properties of distributed systems. Our contribution consists of (1) a formalism for defining liveness properties, (2) a proof method for liveness properties based on that formalism, and (3) two expressive completeness results: our formalism can express any liveness property which satisfies a natural "robustness" condition; and also any liveness property at all, provided that history variables can be used. To define liveness, we generalize complemented-pairs (Streett) automata to an infinite state-space, and an infinite number of complemented-pairs. Our proof method provides two techniques: one for refining liveness properties across levels of abstraction, and another for refining liveness properties within a level of abstraction. The first is based on extending simulation relations so that they relate the liveness properties of an abstract automaton to those of a concrete automaton. The second is based on a deductive method for inferring new liveness properties of an automaton from already established liveness properties of the same automaton. This deductive method is diagrammatic, and is based on constructing "lattices" of liveness properties.