Reactive Systems: Modelling, Specification and Verification

Formal methods is the term used to describe the specification and verification of software and software systems using mathematical logic. Various methodologies have been developed and incorporated into software tools. An important subclass is distributed systems. There are many books that look at particular methodologies for such systems, e.g. CSP, process algebra. This book offers a more balanced introduction for graduate students that describes the various approaches, their strengths and weaknesses, and when they are best used. Milner CCS and its operational semantics are introduced, together with notions of behavioural equivalence based on bisimulation techniques and with variants of Hennessy-Milner modal logics. Later in the book, the presented theories are extended to take timing issues into account. The book has arisen from various courses taught in Iceland and Denmark and is designed to give students a broad introduction to the area, with exercises throughout.

[1]  Robin Milner,et al.  Algebraic laws for nondeterminism and concurrency , 1985, JACM.

[2]  Robert M. Keller,et al.  Formal verification of parallel programs , 1976, CACM.

[3]  Amir Pnueli,et al.  On the Development of Reactive Systems , 1989, Logics and Models of Concurrent Systems.

[4]  David Gelernter,et al.  Generative communication in Linda , 1985, TOPL.

[5]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[6]  R. V. Glabbeek CHAPTER 1 – The Linear Time - Branching Time Spectrum I.* The Semantics of Concrete, Sequential Processes , 2001 .

[7]  Gordon D. Plotkin,et al.  A structural approach to operational semantics , 2004, J. Log. Algebraic Methods Program..

[8]  Colin Stirling,et al.  Local model checking games (extended abstract) , 1995 .

[9]  Wolfgang Thomas,et al.  On the Ehrenfeucht-Fraïssé Game in Theoretical Computer Science , 1993, TAPSOFT.

[10]  David Park,et al.  Concurrency and Automata on Infinite Sequences , 1981, Theoretical Computer Science.

[11]  Fred Kröger,et al.  Temporal Logic of Programs , 1987, EATCS Monographs on Theoretical Computer Science.

[12]  Colin Stirling,et al.  Lokal Model Checking Games , 1995, CONCUR.

[13]  A. Tarski A LATTICE-THEORETICAL FIXPOINT THEOREM AND ITS APPLICATIONS , 1955 .

[14]  Jos C. M. Baeten,et al.  A brief history of process algebra , 2005, Theor. Comput. Sci..

[15]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[16]  Jos C. M. Baeten,et al.  Process Algebra , 2007, Handbook of Dynamic System Modeling.

[17]  R. J. vanGlabbeek The linear time - branching time spectrum , 1990 .

[18]  Gordon D. Plotkin,et al.  The origins of structural operational semantics , 2004, J. Log. Algebraic Methods Program..

[19]  Rob J. van Glabbeek,et al.  The Linear Time - Branching Time Spectrum I , 2001, Handbook of Process Algebra.

[20]  Jan A. Bergstra,et al.  On the Consistency of Koomen's Fair Abstraction Rule , 1987, Theor. Comput. Sci..

[21]  Kim G. Larsen,et al.  Proof Systems for Satisfiability in Hennessy-Milner Logic with Recursion , 1990, Theor. Comput. Sci..

[22]  Kim G. Larsen,et al.  Graphical Versus Logical Specifications , 1990, Theoretical Computer Science.

[23]  Dexter Kozen,et al.  RESULTS ON THE PROPOSITIONAL’p-CALCULUS , 2001 .

[24]  Flemming Nielson,et al.  Semantics with applications - a formal introduction , 1992, Wiley professional computing.