The IFAD VDM Tools: Lightweight Formal Methods

The services and tools supporting the ISO Standard VDM-SL notation and its object-oriented extension VDM++ are commonly known as the VDM Technology. For both notations the company IFAD provides leading edge technology tools, training and consultancy. Users of the VDM Technology typically report on their work in the Toolbox Newsletter which is issued on a regular basis. This note provides a brief overview of the capabilities of the tools.

[1]  Jonathan Jacky,et al.  The Way of Z: Practical Programming with Formal Methods , 1996 .

[2]  G. Stålmarck,et al.  Modeling and Verifying Systems and Software in Propositional Logic , 1990 .

[3]  Michael D. Ernst,et al.  Automatic SAT-Compilation of Planning Problems , 1997, IJCAI.

[4]  Cliff B. Jones,et al.  Scientific Decisions which Characterize VDM , 1999, World Congress on Formal Methods.

[5]  Bart Selman,et al.  Planning as Satisfiability , 1992, ECAI.

[6]  Kevin Lano,et al.  Specification in B: An Introduction Using the B Toolkit , 1996 .

[7]  Daniel Jackson Boolean Compilation of Relational Specifications , 1998 .

[8]  Jim Woodcock,et al.  Using Z - specification, refinement, and proof , 1996, Prentice Hall international series in computer science.

[9]  John Wordsworth Software development with Z - a practical approach to formal methods in software engineering , 1992, International computer science series.

[10]  Ernest J. H. Chang,et al.  An improved algorithm for decentralized extrema-finding in circular configurations of processes , 1979, CACM.

[11]  Eric C. R. Hehner,et al.  Bunch Theory: A Simple Set Theory for Computer Science , 1981, Inf. Process. Lett..

[12]  Somesh Jha,et al.  Checking relational specifications with binary decision diagrams , 1996, SIGSOFT '96.

[13]  Zohar Manna,et al.  The Temporal Logic of Reactive and Concurrent Systems , 1991, Springer New York.

[14]  John Mylopoulos,et al.  On the Frame Problem in Procedure Specifications , 1995, IEEE Trans. Software Eng..

[15]  Cliff B. Jones,et al.  Systematic software development using VDM , 1986, Prentice Hall International Series in Computer Science.

[16]  Daniel Jackson,et al.  An intermediate design language and its analysis , 1998, SIGSOFT '98/FSE-6.

[17]  James J. Horning,et al.  Formal specification as a design tool , 1980, POPL '80.

[18]  Jean-Raymond Abrial,et al.  The B-book - assigning programs to meanings , 1996 .

[19]  Ian J. Hayes,et al.  Specification case studies , 1987 .

[20]  J. J. Horning,et al.  Introduction to LCL, A Larch/C Interface Language , 1991 .

[21]  Raymond Reiter,et al.  The Frame Problem in the Situation Calculus: A Simple Solution (Sometimes) and a Completeness Result for Goal Regression , 1991, Artificial and Mathematical Theory of Computation.

[22]  Bo Stig Hansen,et al.  Information technology - Programming languages, their environments and system software interfaces: Vienna DevelopmentMethod - Specification Language - Part 1: Base language , 1996 .

[23]  Albert L. Baker,et al.  JML: A Notation for Detailed Design , 1999, Behavioral Specifications of Businesses and Systems.

[24]  Martin Gogolla,et al.  On Formalizing the UML Object Constraint Language OCL , 1998, ER.

[25]  J. Michael Spivey,et al.  The Z notation - a reference manual , 1992, Prentice Hall International Series in Computer Science.

[26]  Daniel Jackson,et al.  Elements of style: analyzing a software design feature with a counterexample detector , 1996, ISSTA '96.

[27]  Martin Gogolla,et al.  Validating UML Models and OCL Constraints , 2000, UML.

[28]  A. Tarski,et al.  A Formalization Of Set Theory Without Variables , 1987 .

[29]  C. A. R. Hoare,et al.  The emperor's old clothes , 1981, CACM.

[30]  E. F. CODD,et al.  A relational model of data for large shared data banks , 1970, CACM.

[31]  J. J. Horning,et al.  PRELIMINARY REPORT ON THE LARCH SHARED LANGUAGE , 1983 .

[32]  J. B. Wordsworth Software Engineering with B , 1996 .

[33]  Jim Woodcock,et al.  More Powerful Z Data Refinement: Pushing the State of the Art in Industrial Refinement , 1998, ZUM.

[34]  Jim Woodcock,et al.  An Electronic Purse: Specification, Refinement and Proof , 2000 .

[35]  Robert K. Brayton,et al.  Combinational test generation using satisfiability , 1996, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[36]  Armin Biere,et al.  Symbolic Model Checking without BDDs , 1999, TACAS.

[37]  John Daniels,et al.  Designing object systems: object-oriented modelling with Syntropy , 1995 .

[38]  Jane Sinclair,et al.  Introduction to formal specification and Z , 1991, Prentice Hall International Series in Computer Science.

[39]  Yishai A. Feldman,et al.  Algorithmics: The Spirit of Computing , 1987 .

[40]  Paul R. Halmos Problems for mathematicians, young and old , 1991 .

[41]  Somesh Jha,et al.  Isomorph-free model enumeration: a new method for checking relational specifications , 1998, TOPL.

[42]  Kaisa Sere,et al.  Program Development by Refinement: Case Studies Using The B Method , 1998 .

[43]  Carrol Morgan Telephone network , 1987 .

[44]  Yuri Gurevich,et al.  The Classical Decision Problem , 1997, Perspectives in Mathematical Logic.

[45]  J. McCarthy Situations, Actions, and Causal Laws , 1963 .

[46]  Sharon L. Milgram,et al.  The Small World Problem , 1967 .

[47]  Peter Gorm Larsen,et al.  Modelling Systems: Practical Tools and Techniques in Software Development , 1998 .