Toward Parametric Verification of Open Distributed Systems
A logic and proof system is introduced for specifying and proving properties of open distributed systems. Key problems that are addressed include the verification of process networks with a changing interconnection structure, and where new processes can be continuously spawned. To demonstrate the results in a realistic setting we consider a core fragment of the Erlang programming language. Roughly this amounts to a first-order actor language with data types, buffered asynchronous communication, and dynamic process spawning. Our aim is to verify quite general properties of programs in this fragment. The specification logic extends the first-order μ-calculus with Erlang-specific primitives. For verification we use an approach which combines local model checking with facilities for compositional verification. We give a specification and verification example based on a billing agent which controls and charges for user access to a given resource.
KeywordsOperational Semantic Proof System User Account Proof Rule Valid Sequent
Unable to display preview. Download preview PDF.
- [AD96]R. Amadio and M. Dam. A modal theory of types for the π-calculus. In Proc. FTRTFT’96, Lecture Notes in Computer Science, 1135:347–365, 1996.Google Scholar
- [AVWW96]J. Armstrong, R. Virding, C. Wikström, and M. Williams. Concurrent Programming in Erlang (Second Edition). Prentice-Hall International (UK) Ltd., 1996.Google Scholar
- [Dam98]M. Dam. Proving properties of dynamic process networks. To appear, Information and Computation, 1998. Preliminary version as “Compositional Proof Systems for Model Checking Infinite State Processes”, Proc. CONCUR’95, LNCS 962, pp. 12–26.Google Scholar
- [Sim95]A. Simpson. Compositionality via cut-elimination: Hennessy-Milner logic for an arbitrary GSOS. In Proceedings, Tenth Annual IEEE Symposium on Logic in Computer Science, pages 420–430, San Diego, California, 26–29 June 1995. IEEE Computer Society Press.Google Scholar