Proof-based development of specifications with KIDS/VDM
The KIDS/VDM environment supports the development of executable prototypes from VDM specifications. This prototyping process is seen here in the perspective of the proof of the implementability of the specification. This technique can be extended to the demonstration of invariant preservation by encapsulation of the proof obligation into a boolean function. The satisfaction of these proof obligations and the development of a prototype are integrated here as complementary techniques to validate specifications.
The proposed environment is build on the Kestrel Institute Development System (KIDS). A VDM mode has been added to the tool to support the transformation of VDM specifications. These transformations prepare the subsequent translation of these specifications into the specification language of KIDS. The program synthesis capabilities of the tool may then be used for the development of prototypes.
KeywordsBoolean Function User Interaction Theorem Prover Specification Language Versus Versus Versus Versus Versus
Unable to display preview. Download preview PDF.
- [ABD+93]D.J. Andrews, H. Bruun, F. Damm, J. Dawes, B.S. Hansen, C.B. Jones, G. Parkin, N. Plat, and H. Toetenel. Information Technology Programming Languages — VDM-SL. Technical Report First Committee Draft Standard: CD 13817-1 Document ISO/IEC JTC1/SC22/WG19 N-20, ISO, November 1993.Google Scholar
- [Abr88]J.R. Abrial. The B Tool (Abstract). In R. Bloomfield, L. Marshall, and R. Jones, editors, VDM '88 — The Way Ahead, volume 328 of Lecture Notes in Computer Science. Springer-Verlag, 1988.Google Scholar
- [Abr89]J.R. Abrial. A formal approach to large software construction. In J.L.A. van de Snepscheut, editor, Mathematics of Program Construction, volume 375 of Lecture Notes in Computer Science. Springer-Verlag, 1989.Google Scholar
- [BFL+94]J. C. Bicarregui, J. S. Fitzgerald, P. A. Lindsay, R. Moore, and B. Ritchie. Proof in VDM: A Practitioner's Guide. FACIT. Springer-Verlag, 1994. ISBN 3-540-19813-X.Google Scholar
- [BS92]J. Bowen and V. Stavridou. Safety-critical systems, formal methods and standards. Technical Report PRG-TR-5-92, Oxford University Computing Laboratory, 1992.Google Scholar
- [CGR93]D. Craigen, S. Gerhart, and T. Ralston. An international survey of industrial applications of formal methods. Technical Report NISTGCR 93/626, U.S. National Institute of Standards and technology, 1993.Google Scholar
- [CK93]E.M. Clarke and R.P. Kurshan, editors. Computer-Aided Verification, volume 531 of Lecture Notes in Computer Science. Springer-Verlag, 1993.Google Scholar
- [Gro92]RAISE Language Group. The RAISE Specification Language. Prentice Hall — BCS Practioner series, 1992.Google Scholar
- [Hay93]I. J. Hayes. Specification Case Studies. Prentice Hall, 1993.Google Scholar
- [HJ89]I. J. Hayes and C. B. Jones. Specifications are not (necessarily) executable. IEE, Software Engineering Journal, 4(6):320–338, November 1989.Google Scholar
- [ISO88]ISO. Lotos, a formal description technique based on the temporal ordering of observational behaviour. Technical Report ISO-DP-8807, International Organization for Standardisation, 1988.Google Scholar
- [JJLM91]C.B. Jones, K.D. Jones, P.A. Lindsay, and R. Moore. Mural: A Formal Development Support System. Springer-Verlag, 1991.Google Scholar
- [Jon90]C. B. Jones. Systematic Software Development Using VDM (Second Edition). Prentice-Hall, London, 1990.Google Scholar
- [JS90]C. B. Jones and R.C. Shaw. Case studies in systematic software development. Prentice-Hall, London, 1990.Google Scholar
- [LL92]Y. Ledru and M.-H. Liégeois. Prototyping VDM specifications with KIDS. In Proceedings of the 7th Knowledge-Based Software Engineering Conference. IEEE Computer Society Press, 1992.Google Scholar
- [LLS91]C. Lafontaine, Y. Ledru, and P.-Y. Schobbens. An experiment in formal software development. Communications of the ACM, 34(5):62–71, May 1991.Google Scholar
- [Smi90]D.R. Smith. KIDS: a semi-automatic program development system. IEEE Transactions on Software Engineering — Special Issue on Formal Methods, 16(9), 1990.Google Scholar
- [SP93]D.R. Smith and E.A. Parra. Transformational approach to transportation scheduling. In Proceedings of the 8th Knowledge-Based Software Engineering Conference, pages 60–68, Chicago, IL, September 1993. IEEE Computer Society Press.Google Scholar
- [Spi92]J.M. Spivey. The Z notation — A Reference Manual (Second Edition). Prentice Hall, 1992.Google Scholar