Advertisement

Overview of Formal Methods

  • Gerard O’Regan
Chapter
Part of the Undergraduate Topics in Computer Science book series (UTICS)

Abstract

This chapter discusses formal methods, which consist of a set of mathematic techniques that provide an extra level of confidence in the correctness of the software. They consist of a formal specification language and employ a collection of tools to support the syntax checking of the specification, as well as the proof of properties of the specification. They allow questions to be asked about what the system does independently of the implementation, and they may be employed to formally state the requirements of the proposed system, and to derive a program from its mathematical specification. They may be used to provide a rigorous proof that the implemented program satisfies its specification, and they have been applied mainly to the safety critical field.

References

  1. 1.
    J.M. Spivey, in The Z Notation. A Reference Manual. International Series in Computer Science (Prentice Hall, Englewood Cliffs, 1992)Google Scholar
  2. 2.
    M.J.D Brown, Rational for the development of the U.K. Defence Standards for Safety Critical software, in Compass Conference (1990)Google Scholar
  3. 3.
    M. Hinchey, J. Bowen (eds.), in Applications of Formal Methods. Prentice Hall International Series in Computer Science (1995)Google Scholar
  4. 4.
    UK Ministry of Defence, The Procurement of Safety Critical Software in Defence Equipment. Part 1: Requirements. Interim Defence Standard -55 (Part 1)/Issue 1 (1991a)Google Scholar
  5. 5.
    UK Ministry of Defence, The Procurement of Safety Critical Software in Defence Equipment. Part 2: Guidance. Interim Defence Standard -55 (Part 2)/Issue 1 (1991b)Google Scholar
  6. 6.
    M. Tierney, The Evolution of Def Stan -55 and -56. An intensification of the formal methods debate in the UK. Research Centre for Social Sciences, University of Edinburgh (1991)Google Scholar
  7. 7.
    S. Gerhart, D. Craighen, T. Ralston, Experience with formal methods in critical systems. IEEE Softw. (January 1994)Google Scholar
  8. 8.
    J. Woodcock, P.G. Larsen, J. Bicarregui, J. Fitzgerald, Formal methods: practice and experience. ACM Comput. Surv. 29 Google Scholar
  9. 9.
    T. Kuhn, The Structure of Scientific Revolutions (University of Chicago Press, Chicago, 1970)Google Scholar
  10. 10.
    D. Bjørner, C. Jones, in The Vienna Development Method. The Meta language. Lecture Notes in Computer Science, vol 61 (Springer, Berlin, 1978)Google Scholar
  11. 11.
    D. Bjørner, C. Jones, in Formal Specification and Software Development. Prentice Hall International Series in Computer Science (1982)Google Scholar
  12. 12.
    M. Mac An Airchinnigh, Computation Models and Computing, Ph.D. Thesis, Department of Computer Science, Trinity College DublinGoogle Scholar
  13. 13.
    G. Polya, How to Solve It. A New Aspect of Mathematical Method (Princeton University Press, Princeton, 1957)Google Scholar
  14. 14.
    I. Lakatos, Proof and Refutations. The Logic of Mathematical Discovery (Cambridge University Press, Cambridge, 1976)Google Scholar
  15. 15.
    E. McDonnell, M.Sc. Thesis. Department of Computer Science, Trinity College DublinGoogle Scholar
  16. 16.
    J.P. Hoare, Application of the B method to CICS, in Applications of Formal Methods. Prentice Hall International Series in Computer Science (1995)Google Scholar
  17. 17.
    D. Gries, The Science of Programming (Springer, Berlin, 1981)Google Scholar
  18. 18.
    G. O’ Regan, Mathematical Approaches to Software Quality, vol 26 (Springer, London)Google Scholar
  19. 19.
    C.A.R. Hoare, in Communicating Sequential Processes. Prentice Hall International Series in Computer Science (1985)Google Scholar
  20. 20.
    R. Milner et al., in A Calculus of Mobile Processes. Part 1. LFCS Report Series. ECS-LFCS-89-85. Department of Computer Science, University of EdinburghGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  1. 1.SQC ConsultingMallow, County CorkIreland

Personalised recommendations