Unifying Theories of Undefinedness in UTP

In previous work, based on an original idea due to Saaltink, we proposed a unifying theory of undefined expressions in logics used for formally specifying software systems. In our current paper, we instantiate these ideas in Hoare and He’s Unifying Theories of Programming, with each different treatment of undefinedness formalized as a UTP theory. In this setting, we show how to use classical logic to prove facts in a monotonic partial logic with guards, and we describe the guards for several different UTP theories. We show how classical logic can be used to prove semi-classical facts. We apply these ideas to the COMPASS Modelling Language (CML), which is an integration of VDM and CSP in the Circus tradition. We link CML, which uses McCarthy’s left-to-right expression evaluation, and to VDM, which uses Jones’s three-valued Logic of Partial Functions.

[1]  Nick Battle,et al.  The overture initiative integrating tools for VDM , 2010, ACM SIGSOFT Softw. Eng. Notes.

[2]  David Aspinall,et al.  Formalising Java's Data Race Free Guarantee , 2007, TPHOLs.

[3]  Jim Woodcock,et al.  Unifying Theories of Undefinedness , 2009 .

[4]  Merrie Bergmann,et al.  An Introduction to Many-Valued and Fuzzy Logic: Semantics, Algebras, and Derivation Systems , 2008 .

[5]  Jan A. Bergstra,et al.  A propositional logic with 4 values: true, false, divergent and meaningless , 1995, J. Appl. Non Class. Logics.

[6]  Alan Rose,et al.  A Lattice-Theoretic Characterisation of Three-Valued Logic , 1950 .

[7]  Jonathan P. Bowen,et al.  ZUM '97: The Z Formal Specification Notation , 1997, Lecture Notes in Computer Science.

[8]  Jim Woodcock,et al.  Linking VDM and Z , 2008, 13th IEEE International Conference on Engineering of Complex Computer Systems (iceccs 2008).

[9]  Sten Agerholm,et al.  An Isabelle-Based Theorem Prover for VDM-SL , 1997, TPHOLs.

[10]  Takeo Kanade,et al.  Unifying Theories of Programming , 2010, Lecture Notes in Computer Science.

[11]  Merrie Bergmann,et al.  On a three-valued logical calculus and its application to the analysis of the paradoxes of the classical extended functional calculus , 1981 .

[12]  Mark Saaltink,et al.  The Z/EVES System , 1997, ZUM.

[13]  Shlomo Nir,et al.  NATO ASI Series , 1995 .

[14]  Robin Milner,et al.  Edinburgh LCF , 1979, Lecture Notes in Computer Science.