Software development: two approaches to animation of Z specifications using prolog
Software development: two approaches to animation of Z specifications using prolog
- Author(s): Margaret M. West and Barry M. Eaglestone
- DOI: 10.1049/sej.1992.0027
For access to this article, please select a purchase option:
Buy article PDF
Buy Knowledge Pack
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.
Thank you
Your recommendation has been sent to your librarian.
- Author(s): Margaret M. West 1 and Barry M. Eaglestone 2
-
-
View affiliations
-
Affiliations:
1: School of Computer Studies, University of Leeds, Leeds, UK
2: Department of Computing, University of Bradford, Bradford, UK
-
Affiliations:
1: School of Computer Studies, University of Leeds, Leeds, UK
- Source:
Volume 7, Issue 4,
July 1992,
p.
264 – 276
DOI: 10.1049/sej.1992.0027 , Print ISSN 0268-6961, Online ISSN 2053-910X
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.
Inspec keywords: computer animation; software tools; PROLOG; software engineering; program interpreters; formal specification
Other keywords:
Subjects: Software engineering techniques; Compilers, interpreters and other processors; High level languages; Programming support
References
-
-
1)
- J.V. Guttag , J.J. Horning . The algebraic specification of abstract data types. Acta Inform. , 27 - 52
-
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)
- S. Hekmatpour , D.C. Ince . A formal specification-based prototyping system, Peter Peregrinus.
-
4)
- J.W. Lloyd . (1984) , Foundations of logic programming.
-
5)
- R. Venken , R. Budde . (1984) Prolog as a language for prototyping of information systems, Approach to prototyping.
-
6)
- M.C. Henson . Program development in the constructive set theory TK. Formal Asp. Comput. , 2 , 173 - 192
-
7)
- R. Kowalski . (1979) , Logic for problem solving.
-
8)
- C.J. Hogger . (1984) , Introduction to logic programming.
-
9)
- F. Kluzniak , S. Szpakowicz . (1985) , Prolog for programmers.
-
10)
- P. Suppes . (1972) , Axiomatic set theory.
-
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)
- M.J. Beeson . (1984) , Foundations of constructive mathematics.
-
13)
- I.M. Copi . (1979) , Symbolic logic.
-
14)
- E. Mendelson . (1979) , Introduction to mathematical logic.
-
15)
- `ObjEx User Reference Manual', 1988, Gerrard Software'.
-
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)
- J.A. Robinson . (1979) , Logic: form and function.
-
18)
- A.G. Hamilton . (1982) , Numbers, sets and axioms: the apparatus of mathmatics.
-
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)
- R.E. Davies , K.L. Clark , S.A. Tarnlund . (1982) Runnable specification as a design tool, Logic programming.
-
21)
- K. Blackburn , R.B. Jones . (1987) Translating Z into HOL, ICL Internal Document.
-
22)
- Z. Manna , R. Waldinger . (1985) , The logical basis for computer programming: vol. 1: deductive reasoning.
-
23)
- J. Malpas . (1987) , Prolog' a relational language and its applications.
-
24)
- H.B. Enderton . (1977) , Elements of set theory.
-
25)
- G.R. Gladden . Stop the life-cycle, I want to get off. ACM SIGSOFT Softw. Eng. Notes , 2 , 35 - 39
-
26)
- D.W. Bustard , T.J. Harmer , D. Barnes , P. Brown . (1986) PEEP: an experiment in software animation, Software engineering 86.
-
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)
- R.M. Burstall , J. Darlington . A transformation system for developing recursive programs. JACM , 1 , 44 - 67
-
29)
- J.M. Spivey . (1992) , The Z notation: a reference manual.
-
30)
- C.B. Jones . (1990) , Systematic software development using VDM.
-
31)
- Knott, R.D., Pitt, D.: `Implementation of Z specifications using program transformation', University of Surrey Internal Report, 1987.
-
32)
- W.S. Hatcher . (1982) , The logical foundations of mathematics.
-
33)
- H. Coelho , J.C. Cotta , L.M. Pereira . (1985) Ministerio do Equipamento Social, How to solve it with Prolog.
-
34)
- Knott, R.D., Krause, P.J.: `An approach to animating Z using Prolog', Report A1.1, 1988, Alvey Project SE/065.
-
35)
- I. Hayes . (1993) , Specification case studies.
-
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)
- 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)
- West, M.M.: `Z/PROLOG translator', 1988, MSC Dissertation, University of Bradford.
-
39)
- A. Diller . (1990) , Z: an introduction to formal methods.
-
40)
- A. Thayse . (1988) , From standard logic to logic programming.
-
41)
- P. Martin-Lof , C.A.R. Hoare , J.C. Sheperdson . (1985) Constructive mathematics and computer programming, Mathematical logic and programming language.
-
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)
- W.F. Clocksin , C.S. Mellish . (1981) , Programming in Prolog.
-
44)
- J.M. Spivey . (1988) , Understanding Z, a specification language and its formal semantics.
-
1)