Advertisement

Owicki/Gries in Isabelle/HOL

  • Tobias Nipkow
  • Leonor Prensa Nieto
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1577)

Abstract

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.

Keywords

Theorem Prover Operational Semantic Proof System Component Program Schematic Program 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

References

  1. 1.
    Andersen, F., Petersen, K., Pettersson, J.: Program verification using HOLUNITY. In: Joyce, J., Seger, C. (eds.) HUG 1993. LNCS, vol. 780, pp. 1–15. Springer, Heidelberg (1994)Google Scholar
  2. 2.
    Apt, K.R., Olderog, E.-R.: Verification of Sequential and Concurrent Programs. Springer, Heidelberg (1991)zbMATHGoogle Scholar
  3. 3.
    Camillieri, A.: Mechanizing CSP trace theory in higher order logic. IEEE Transactions on Software Engineering 16, 993–1004 (1990)CrossRefGoogle Scholar
  4. 4.
    Chetali, B., Heyd, B.: Formal verification of concurrent programs in LP and COQ: A comparative analysis. In: Gunter, E., Felty, A. (eds.) TPHOLs 1997. LNCS, vol. 1275, pp. 69–85. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  5. 5.
    de Boer, F., Hannemann, U., de Roever, W.-P.: A compositional proof system for shared variable concurrency. In: Fitzgerald, J., Jones, C., Lucas, P. (eds.) FME 1997. LNCS, vol. 1313, pp. 515–532. Springer, Heidelberg (1997)Google Scholar
  6. 6.
    Dutertre, B., Schneider, S.: Using a PVS embedding of CSP to verify authentication protocols. In: Gunter, E., Felty, A. (eds.) TPHOLs 1997. LNCS, vol. 1275, pp. 121–136. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  7. 7.
    Engberg, U., Grønning, P., Lamport, L.: Mechanical verification of concurrent systems with TLA. In: Bochmann, G.v., Probst, D. (eds.) CAV 1992. LNCS, vol. 663, pp. 44–55. Springer, Heidelberg (1993)Google Scholar
  8. 8.
    Goldschlag, D.: Mechanically verifying concurrent programs with the Boyer-Moore Prover. IEEE Transactions on Software Engineering 16, 1005–1022 (1990)CrossRefGoogle Scholar
  9. 9.
    Gordon, M.: Mechanizing programming logics in higher order logic. In: Birtwistle, G., Subrahmanyam, P. (eds.) Current Trends in Hardware Verification and Automated Theorem Proving. Springer, Heidelberg (1989)Google Scholar
  10. 10.
    Gordon, M., Melham, T.: Introduction to HOL: a theorem-proving environment for higher order logic. Cambridge University Press, Cambridge (1993)zbMATHGoogle Scholar
  11. 11.
    Heyd, B., Cregut, P.: A modular coding of Unity in Coq. In: von Wright, J., Grundy, J., Harrison, J. (eds.) TPHOLs 1996. LNCS, vol. 1125, pp. 251–266. Springer, Heidelberg (1996)Google Scholar
  12. 12.
  13. 13.
    Jones, C.B.: Development methods for computer programs including a notion of interference. Technical Report PRG-25, Programming Research Group, Oxford University Computing Laboratory (1981) Google Scholar
  14. 14.
    Jones, C.B.: Tentative steps toward a development method for interfering programs. ACM Trans. Programming Languages and Systems 5, 596–619 (1983)zbMATHCrossRefGoogle Scholar
  15. 15.
    Kalvala, S.: A formulation of TLA in isabelle. In: Schubert, E., Windley, P., Alves-Foss, J. (eds.) HUG 1995. LNCS, vol. 971, pp. 214–228. Springer, Heidelberg (1995)Google Scholar
  16. 16.
    Langbacka, T., von Wright, J.: Refining reactive systems in HOL using action systems. In: Gunter, E., Felty, A. (eds.) TPHOLs 1997. LNCS, vol. 1275, pp. 183–197. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  17. 17.
    Müller, O., Nipkow, T.: Traces of I/O automata in Isabelle/HOLCF. In: Bidoit, M., Dauchet, M. (eds.) CAAP 1997, FASE 1997, and TAPSOFT 1997. LNCS, vol. 1214, pp. 580–594. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  18. 18.
    Nesi, M.: Value-passing CCS in HOL. In: Joyce, J.J., Seger, C.-J.H. (eds.) HUG 1993. LNCS, vol. 780, pp. 352–365. Springer, Heidelberg (1994)Google Scholar
  19. 19.
    Nipkow, T.: Winskel is (almost) right: Towards a mechanized semantics textbook. In: Chandru, V., Vinay, V. (eds.) FSTTCS 1996. LNCS, vol. 1180, pp. 180–192. Springer, Heidelberg (1996)Google Scholar
  20. 20.
    Nipkow, T.: Isabelle/HOL. The Tutorial (1998) Unpublished Manuscript, Available at www.in.tum.de/~nipkow/pubs/HOL.html
  21. 21.
    Nipkow, T.: Winskel is (almost) right: Towards a mechanized semantics textbook. Formal Aspects of Computing? 1998 (to appear) Google Scholar
  22. 22.
    Owicki, S., Gries, D.: An axiomatic proof technique for parallel programs. Acta Informatica 6, 319–340 (1976)zbMATHCrossRefMathSciNetGoogle Scholar
  23. 23.
    Paulson, L.C.: Isabelle: A Generic Theorem Prover. Lect. Notes in Comp. Sci., vol. 828. Springer, Heidelberg (1994)zbMATHGoogle Scholar
  24. 24.
    Søgaard-Andersen, J., Garland, S., Guttag, J., Lynch, N., Pogosyants, A.: Computer-assisted simulation proofs. In: Courcoubetis, C. (ed.) CAV 1993. LNCS, vol. 697, pp. 305–319. Springer, Heidelberg (1993)Google Scholar
  25. 25.
    Stølen, K.: Development of Parallel Programs on Shared Data-Structures. PhD thesis, Computer Science Department, Manchester University (1990) Google Scholar
  26. 26.
    Tej, H., Wolff, B.: A corrected failure-divergence model for CSP in Isabelle/HOL. In: Fitzgerald, J., Jones, C., Lucas, P. (eds.) FME 1997. LNCS, vol. 1313, pp. 318–337. Springer, Heidelberg (1997)Google Scholar
  27. 27.
    von Wright, J., Hekanaho, J., Luostarinen, P., Langbacka, T.: Mechanizing some advanced refinement concepts. Formal Methods in System Design 3, 49–81 (1993)zbMATHCrossRefGoogle Scholar
  28. 28.
    von Wright, J., Langbacka, T.: Using a theorem prover for reasoning about concurrent algorithms. In: Bochmann, G.v., Probst, D. (eds.) CAV 1992. LNCS, vol. 663, pp. 56–68. Springer, Heidelberg (1993)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1999

Authors and Affiliations

  • Tobias Nipkow
    • 1
  • Leonor Prensa Nieto
    • 1
  1. 1.Institut für InformatikTechnische Universität MünchenMünchenGermany

Personalised recommendations