Providing user-oriented support for software development by formal methods

Existing tools for software development by formal methods lack the user-oriented properties necessary to their effective use in software engineering. A strategy for overcoming these deficiencies by interposing a user-oriented front-end editor between the user and the formal method tool itself is proposed. The feasibility of this approach is demonstrated by adapting an existing generic language-based editor to provide a front-end to an existing theorem prover. To cater for the full range of structures which arise in formal methods, a generic model of formal method documents is defined and a corresponding front-end editor for such documents that is capable of real-time interaction with a corresponding variety of tools supporting formal methods is developed as a way of catering to the full range of structures that arise in formal methods.

[1]  David R. Musser,et al.  Abstract Data Type Specification in the Affirm System , 1980, IEEE Transactions on Software Engineering.

[2]  Sentot Kromodimoeljo,et al.  EVES: An Overview , 1991, VDM Europe.

[3]  M. Gordon HOL: A Proof Generating System for Higher-Order Logic , 1988 .

[4]  A. Wood,et al.  Incorporating Constructive Tools into a Generic Language-Based , 1993 .

[5]  Donald I. Good,et al.  Mechanical proofs about computer programs , 1984, Philosophical Transactions of the Royal Society of London. Series A, Mathematical and Physical Sciences.

[6]  Peter A. Lindsay,et al.  mural: A Formal Development Support System , 1991, Springer London.

[7]  David R. Musser,et al.  An Overview of AFFIRM: A Specification and Verification System , 1980, IFIP Congress.

[8]  Ian A. Mason,et al.  An overview of the Edinburgh logical framework , 1989 .

[9]  John Rushby,et al.  An Introduction to Formal Specification and Verification using EHDM , 1991 .

[10]  Yun Yang,et al.  Tool Integration Techniques , 1991 .

[11]  David R. Musser,et al.  Automated Theorem Proving for Analysis and Synthesis of Computations , 1989 .

[12]  Peter J. Robinson,et al.  The demonstration interactive theorem prover Demo3.3 , 1993 .

[13]  Jim Welsh,et al.  An Adaptive Program Editor , 1986, Aust. Comput. J..

[14]  J. Welsh,et al.  ANOTHER APPROACH TO LITERATE PROGRAMMING. , 1988 .

[15]  T Vickers An Overview of a Refinement Editor , 1990 .

[16]  Rance Cleaveland,et al.  Implementing mathematics with the Nuprl proof development system , 1986 .