CSP-Prover – a Proof Tool for the Verification of Scalable Concurrent Systems
نویسندگان
چکیده
The process algebra Csp [1] [4] [15] [16] is a formal method devoted to the modelling as well as to the analysis and verification of concurrent systems. It is a speciality of Csp that it captures both, the concurrent system as well as its desired properties, as specifications: Let Sys be the formal Csp model of a concurrent system, let P be a property formulated in Csp – such a property could, for instance, be deadlock-freedom. In such a setting, the statement P Sys, read ‘Sys is a refinement of P ’, expresses that the property P holds for the concurrent system Sys. In the proof of such a statement the process algebraic laws of Csp play a vital role: Thanks to completeness results, see e.g. [8] [15], most refinement statements can be proven by solely applying process algebraic laws. Isabelle [13] is an interactive theorem prover that allows one to prove new theorems by semiautomatically applying rules which are pre-proven theorems. Then, successfully proved theorems can be stored and used later as new rules. Therefore, the proof-ability of Isabelle can be extended by adding new definitions and proving new theorems. Our tool Csp-Prover [6] [7] [8] [9] [10] provides a deep encoding of Csp in Isabelle. Csp-Prover contains fundamental theorems such as fixed point
منابع مشابه
Proof Principles of CSP – CSP-Prover in Practice
The process algebra Csp provides a well-established formalism for the modelling, analysis, and verification of concurrent systems. Besides being a specification language, Csp provides a valuable set of proof principles. We show in tutorial style, how these proof principles are made available in our tool Csp-Prover. Overall, Csp-Prover turns out to be an off-the-shelf proof tool ready for use in...
متن کاملVerifying the Uniform Candy Distribution Puzzle with CSP-Prover
In this paper we formally verify that the Uniform Candy Distribution Puzzle is self-stabilizing: Given a valid start configuration, eventually the Puzzle will evolve to a ‘stable’ situation in which it will remain. In terms of verification, the Uniform Candy Distribution Puzzle forms a scalable parametrized distributed system: The Puzzle comes in various sizes, for each size of the Puzzle there...
متن کاملEmbedding the Stable Failures Model of CSP in PVS
We present an embedding of the stable failures model of CSP in the PVS theorem prover. Our work, extending a previous embedding of the traces model of CSP in [6], provides a platform for the formal verification not only of safety specifications, but also of liveness specifications of concurrent systems in theorem provers. Such a platform is particularly good at analyzing infinite-state systems ...
متن کاملExtending CSP-Prover by deadlock-analysis: Towards the verification of systolic arrays
Csp-Prover provides a deep encoding of the process algebra Csp in the interactive theorem prover Isabelle. Here, we extend Csp-Prover by a framework for the deadlock-analysis of networks. As a typical example we study systolic arrays and prove in Csp-Prover that Kung's classical algorithm for matrix-multiplication is deadlock-free. 1 Introduction Among the various frameworks for the description...
متن کاملThe Stable Revivals Model in CSP-Prover
The stable revivals model R provides a new semantic framework for the process algebra Csp. The model R has recently been added to the realm of established Csp models. Within the Csp context, it enhances the analysis of systems with regards to properties such as responsiveness and stuckness. These properties are essential in component based system design. In this paper we report on the implement...
متن کامل