CSP and Kripke Structures

A runtime verification technique has been developed for CSP via translation of CSP models to Kripke structures. With this technique, we can check that a system under test satisfies properties of traces and refusals of its CSP model. This complements analysis facilities available for CSP and for all languages with a CSP-based semantics:i¾?Safety-Critical Java, Simulink, SysML, and so on. Soundness of the verification depends on the soundness of the translation and on the traceability of the Kripke structure analysis back to the CSP models and to the property specifications. Here, we present a formalisation of soundness by unifying the semantics of the languages involved:i¾?normalised graphs used in CSP model checking, action systems, and Kripke structures. Our contributions are the unified semantic framework and the formal argumenti¾?itself.

[1]  Gabriel Ciobanu,et al.  UTP and Temporal Logic Model Checking , 2008, UTP.

[2]  A. W. Roscoe,et al.  FDR3 - A Modern Refinement Checker for CSP , 2014, TACAS.

[3]  A. W. Roscoe Understanding Concurrent Systems , 2010, Texts in Computer Science.

[4]  Jim Woodcock,et al.  A Tutorial Introduction to CSP in Unifying Theories of Programming , 2004, PSSE.

[5]  C. A. R. Hoare,et al.  Unifying theories of programming , 1998, RelMiCS.

[6]  Gary T. Leavens,et al.  The design of SafeJML, a specification language for SCJ with support for WCET specification , 2010, JTRES '10.

[7]  Jim Woodcock,et al.  A UTP semantics for Circus , 2009, Formal Aspects of Computing.

[8]  Jim Woodcock,et al.  A Theory of Pointers for the UTP , 2008, ICTAC.

[9]  Michael D. Ernst,et al.  An overview of JML tools and applications , 2003, International Journal on Software Tools for Technology Transfer.

[10]  Augusto Sampaio,et al.  A Modular Theory of Object Orientation in Higher-Order UTP , 2014, FM.

[11]  Andrew Butterfield,et al.  A denotational semantics for Handel-C , 2011, Formal Aspects of Computing.

[12]  Jifeng He,et al.  rCOS: Refinement of Component and Object Systems , 2004, FMCO.

[13]  Andy J. Wellings,et al.  Safety-critical Java programs from Circus models , 2013, Real-Time Systems.

[14]  Ana Cavalcanti,et al.  Formal Models of SysML Blocks , 2013, ICFEM.

[15]  Ralph-Johan Back,et al.  Distributed cooperation with action systems , 1988, TOPL.

[16]  Jan Peleska,et al.  Translating Testing Theories for Concurrent Systems , 2015, Correct System Design.

[17]  Shengchao Qin,et al.  Denotational semantics and its algebraic derivation for an event-driven system-level language , 2014, Formal Aspects of Computing.

[18]  A classical mind: essays in honour of C. A. R. Hoare , 1994 .

[19]  Augusto Sampaio,et al.  A process algebraic framework for specification and validation of real-time systems , 2010, Formal Aspects of Computing.

[20]  Ana Cavalcanti,et al.  From control law diagrams to Ada via Circus , 2011, Formal Aspects of Computing.