Proving Liveness Properties of Concurrent Programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
A Calculus of Communicating Systems
A Calculus of Communicating Systems
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
On the composition of processes
POPL '82 Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A Powerdomain for Countable Non-Determinism (Extended Abstract)
Proceedings of the 9th Colloquium on Automata, Languages and Programming
On the Semantics of Fair Parallelism
Proceedings of the Abstract Software Specifications, 1979 Copenhagen Winter School
Graph Grammars for distributed systems
Proceedings of the 2nd International Workshop on Graph-Grammars and Their Application to Computer Science
Denotational semantics of concurrency
STOC '82 Proceedings of the fourteenth annual ACM symposium on Theory of computing
A model for distributed systems based on graph rewriting
Journal of the ACM (JACM)
Ugo Montanari and Concurrency Theory
Concurrency, Graphs and Models
Fundamenta Informaticae
Hi-index | 0.00 |
Four liveness properties of concurrent programs are characterized by the fact that their computations, represented as sequences of partial orderings of events, are convergent in suitable metric spaces. The corresponding topological completions do not therefore contain the infinite computations without the desired properties. The properties are: vitality (i.e. every running process will eventually produce an observable event), global and local fairness, and deadlock freedom. This approach proves fruitful since a universal scheduler is defined, which, when supplied with a particular metric, generates all and only convergent computations. Thus, this scheduler can be used to generate all and only vital, fair or deadlock free computations.