Communicating sequential processes
Communicating sequential processes
Proofs and types
The formal semantics of programming languages: an introduction
The formal semantics of programming languages: an introduction
Foundations of programming languages
Foundations of programming languages
Communication and Concurrency
The Theory and Practice of Concurrency
The Theory and Practice of Concurrency
ACM Transactions on Computational Logic (TOCL)
Types, or: Where's the Difference Between CCS and pi?
CONCUR '02 Proceedings of the 13th International Conference on Concurrency Theory
Dependency Analysis for Control Flow Cycles in Reactive Communicating Processes
SPIN '08 Proceedings of the 15th international workshop on Model Checking Software
A CSP approach to control in event-B
IFM'10 Proceedings of the 8th international conference on Integrated formal methods
Understanding Concurrent Systems
Understanding Concurrent Systems
A livelock freedom analysis for infinite state asynchronous reactive systems
CONCUR'06 Proceedings of the 17th international conference on Concurrency Theory
CAV'12 Proceedings of the 24th international conference on Computer Aided Verification
Static analysis of concurrent programs by adapted vector clock
Proceedings of the International C* Conference on Computer Science and Software Engineering
Hi-index | 0.00 |
In a process algebra with hiding and recursion it is possible to create processes which compute internally without ever communicating with their environment. Such processes are said to diverge or livelock. In this paper we show how it is possible to conservatively classify processes as livelock-free through a static analysis of their syntax. In particular, we present a collection of rules, based on the inductive structure of terms, which guarantee livelock-freedom of the denoted process. This gives rise to an algorithm which conservatively flags processes that can potentially livelock. We illustrate our approach by applying both BDD-based and SAT-based implementations of our algorithm to a range of benchmarks, and show that our technique in general substantially outperforms the model checker FDR whilst exhibiting a low rate of inconclusive results.