Owicki/Gries in Isabelle/HOL

We present a formalization of the Gries/Owicki method for correctness proofs of concurrent imperative programs with shared variables in the theorem prover Isabelle/HOL. Syntax, semantics and proof rules are defined in higher-order logic. The correctness of the proof rules w.r.t. the semantics is proved. The verification of some typical example programs like producer/consumer is presented.

[1]  Barbara Heyd,et al.  A Modular Coding of UNITY in COQ , 1996, TPHOLs.

[2]  Frank S. de Boer,et al.  A Compositional Proof System for Shared Variable Concurrency , 1997, FME.

[3]  Albert John Camilleri Mechanizing CSP Trace Theory in Higher Order Logic , 1990, IEEE Trans. Software Eng..

[4]  Lawrence Charles Paulson,et al.  Isabelle: A Generic Theorem Prover , 1994 .

[5]  David M. Goldschlag,et al.  Mechanically Verifying Concurrent Programs with the Boyer-Moore Prover , 1990, IEEE Trans. Software Eng..

[6]  Michael J. C. Gordon,et al.  Mechanizing programming logics in higher order logic , 1989 .

[7]  Stuart Anderson,et al.  Diagrams and Programming Languages for Programmable Controllers , 1997, FME.

[8]  Nancy A. Lynch,et al.  Computer-Assisted Simulation Proofs , 1993, CAV.

[9]  M. Gordon,et al.  Introduction to HOL: a theorem proving environment for higher order logic , 1993 .

[10]  Sara Kalvala,et al.  A Formulation of TLA in Isabelle , 1995, TPHOLs.

[11]  Cliff B. Jones,et al.  Developing methods for computer programs including a notion of interference , 1981 .

[12]  Leslie Lamport,et al.  Mechanical Verification of Concurrent Systems with TLA , 1992, Larch.

[13]  Steve A. Schneider,et al.  Using a PVS Embedding of CSP to Verify Authentication Protocols , 1997, TPHOLs.

[14]  Cliff B. Jones,et al.  Tentative steps toward a development method for interfering programs , 1983, TOPL.

[15]  Tobias Nipkow,et al.  Winskel is (almost) Right: Towards a Mechanized Semantics Textbook , 1996, Formal Aspects of Computing.

[16]  Monica Nesi Value-Passing CCS in HOL , 1993, HUG.

[17]  Donald Sanella What Does the Future Hold for Theoretical Computer Science , 1997 .

[18]  Barbara Heyd,et al.  Formal Verification of Concurrent Programs in LP and in COQ: A Comparative Analysis , 1997, TPHOLs.

[19]  Joakim von Wright,et al.  Using a Theorem Prover for Reasoning about Concurrent Algorithms , 1992, CAV.

[20]  Burkhart Wolff,et al.  A Corrected Failure Divergence Model for CSP in Isabelle/HOL , 1997, FME.

[21]  Joakim von Wright,et al.  Refining Reactive Systems in HOL Using Action Systems , 1997, TPHOLs.

[22]  Tobias Nipkow,et al.  Traces of I/O-Automata in Isabelle/HOLCF , 1997, TAPSOFT.

[23]  Jim Alves-Foss,et al.  Higher Order Logic Theorem Proving and its Applications 8th International Workshop, Aspen Grove, Ut, Usa, September 11-14, 1995 : Proceedings , 1995 .

[24]  Joakim von Wright,et al.  Mechanizing some advanced refinement concepts , 1992, Formal Methods Syst. Des..

[25]  Tobias Nipkow Winskel is (Almost) Right: Towards a Mechanized Semantics Textbook , 1996, FSTTCS.

[26]  Graham Birtwistle,et al.  Current Trends in Hardware Verification and Automated Theorem Proving , 1989, Springer New York.

[27]  Ross Anderson,et al.  Fast Software Encryption , 1994 .