Your browser does not support JavaScript!
http://iet.metastore.ingenta.com
1887

Software development: two approaches to animation of Z specifications using prolog

Software development: two approaches to animation of Z specifications using prolog

For access to this article, please select a purchase option:

Buy article PDF
£12.50
(plus tax if applicable)
Buy Knowledge Pack
10 articles for £75.00
(plus taxes if applicable)

IET members benefit from discounts to all IET publications and free access to E&T Magazine. If you are an IET member, log in to your account and the discounts will automatically be applied.

Learn more about IET membership 

Recommend Title Publication to library

You must fill out fields marked with: *

Librarian details
Name:*
Email:*
Your details
Name:*
Email:*
Department:*
Why are you recommending this title?
Select reason:
 
 
 
 
 
Software Engineering Journal — Recommend this title to your library

Thank you

Your recommendation has been sent to your librarian.

Formal methods rely on the correctness of the formal requirements specification, but this correctness cannot be proved. This paper discusses the use of software tools to assist the validation of formal specifications and advocates a system by which Z specifications may be animated as Prolog programs. Two Z/Prolog translation strategies are explored; formal program synthesis and structure simulation. The paper explains why the former proved to be unsuccessful and describes the techniques developed for implementing the latter approach, with the aid of case studies.

References

    1. 1)
      • J.V. Guttag , J.J. Horning . The algebraic specification of abstract data types. Acta Inform. , 27 - 52
    2. 2)
      • Knott, R.D., Krause, P.J.: `On the derivation of an effective animation: telephone network case study', A1.3, 1988, Alvey Project SE/065.
    3. 3)
      • S. Hekmatpour , D.C. Ince . A formal specification-based prototyping system, Peter Peregrinus.
    4. 4)
      • J.W. Lloyd . (1984) , Foundations of logic programming.
    5. 5)
      • R. Venken , R. Budde . (1984) Prolog as a language for prototyping of information systems, Approach to prototyping.
    6. 6)
      • M.C. Henson . Program development in the constructive set theory TK. Formal Asp. Comput. , 2 , 173 - 192
    7. 7)
      • R. Kowalski . (1979) , Logic for problem solving.
    8. 8)
      • C.J. Hogger . (1984) , Introduction to logic programming.
    9. 9)
      • F. Kluzniak , S. Szpakowicz . (1985) , Prolog for programmers.
    10. 10)
      • P. Suppes . (1972) , Axiomatic set theory.
    11. 11)
      • R.A. Kowalski , C.A.R. Hoare , J.C. Shepherdson . (1985) The relation between logic programming and logic specification, Mathematical logic and programming languages.
    12. 12)
      • M.J. Beeson . (1984) , Foundations of constructive mathematics.
    13. 13)
      • I.M. Copi . (1979) , Symbolic logic.
    14. 14)
      • E. Mendelson . (1979) , Introduction to mathematical logic.
    15. 15)
      • `ObjEx User Reference Manual', 1988, Gerrard Software'.
    16. 16)
      • Futatsugi, K., Goguen, J.A., Jouannaud, J.P., Meseguer, J.: `Principles of OBJ2', Proc. 12th ACM Symposium on Prnciples of Programming Languages, 1985, New Orleans, p. 52–66.
    17. 17)
      • J.A. Robinson . (1979) , Logic: form and function.
    18. 18)
      • A.G. Hamilton . (1982) , Numbers, sets and axioms: the apparatus of mathmatics.
    19. 19)
      • `Draft software for computers in the application of industrial safety related systems' 65A(Secretariat)96', IEC SC65A WG9, Technical Committee No. 65: Industrial-Process Measurement and Control, 1989.
    20. 20)
      • R.E. Davies , K.L. Clark , S.A. Tarnlund . (1982) Runnable specification as a design tool, Logic programming.
    21. 21)
      • K. Blackburn , R.B. Jones . (1987) Translating Z into HOL, ICL Internal Document.
    22. 22)
      • Z. Manna , R. Waldinger . (1985) , The logical basis for computer programming: vol. 1: deductive reasoning.
    23. 23)
      • J. Malpas . (1987) , Prolog' a relational language and its applications.
    24. 24)
      • H.B. Enderton . (1977) , Elements of set theory.
    25. 25)
      • G.R. Gladden . Stop the life-cycle, I want to get off. ACM SIGSOFT Softw. Eng. Notes , 2 , 35 - 39
    26. 26)
      • D.W. Bustard , T.J. Harmer , D. Barnes , P. Brown . (1986) PEEP: an experiment in software animation, Software engineering 86.
    27. 27)
      • Dick, A.J., Krause, P.J., Cozens, J.: `Computer aided transformation of Z into Prolog (Paper number 4)', Proc. 4th Annual Z Users Meeting, 1989, Oxford University Computing Laboratory PRG.
    28. 28)
      • R.M. Burstall , J. Darlington . A transformation system for developing recursive programs. JACM , 1 , 44 - 67
    29. 29)
      • J.M. Spivey . (1992) , The Z notation: a reference manual.
    30. 30)
      • C.B. Jones . (1990) , Systematic software development using VDM.
    31. 31)
      • Knott, R.D., Pitt, D.: `Implementation of Z specifications using program transformation', University of Surrey Internal Report, 1987.
    32. 32)
      • W.S. Hatcher . (1982) , The logical foundations of mathematics.
    33. 33)
      • H. Coelho , J.C. Cotta , L.M. Pereira . (1985) Ministerio do Equipamento Social, How to solve it with Prolog.
    34. 34)
      • Knott, R.D., Krause, P.J.: `An approach to animating Z using Prolog', Report A1.1, 1988, Alvey Project SE/065.
    35. 35)
      • I. Hayes . (1993) , Specification case studies.
    36. 36)
      • Guttag, J.V., Horning, J.J.: `Formal specification as a design tool', Proc. 7th ACM Symposium, Principles of Programming Languages, 1980, Las Vegas, Nevada, p. 251–261.
    37. 37)
      • R.E. Bloomfield , P.K.D. Froome . The application of formal methods to the assessment of high integrity software. IEEE Trans. , 9 , 988 - 993
    38. 38)
      • West, M.M.: `Z/PROLOG translator', 1988, MSC Dissertation, University of Bradford.
    39. 39)
      • A. Diller . (1990) , Z: an introduction to formal methods.
    40. 40)
      • A. Thayse . (1988) , From standard logic to logic programming.
    41. 41)
      • P. Martin-Lof , C.A.R. Hoare , J.C. Sheperdson . (1985) Constructive mathematics and computer programming, Mathematical logic and programming language.
    42. 42)
      • Knott, R.D., Krause, P.J.: `LIBRARY SYSTEM: an example of rapid prototyping of a Z specification in Prolog', A1.2, 1988, Alvey, Project SE/065.
    43. 43)
      • W.F. Clocksin , C.S. Mellish . (1981) , Programming in Prolog.
    44. 44)
      • J.M. Spivey . (1988) , Understanding Z, a specification language and its formal semantics.
http://iet.metastore.ingenta.com/content/journals/10.1049/sej.1992.0027
Loading

Related content

content/journals/10.1049/sej.1992.0027
pub_keyword,iet_inspecKeyword,pub_concept
6
6
Loading
This is a required field
Please enter a valid email address