SPECIFICATION STATEMENTS AND REFINEMENT

被引:16
作者
MORGAN, C [1 ]
ROBINSON, K [1 ]
机构
[1] UNIV NEW S WALES,DEPT COMP SCI,KENSINGTON,NSW 2033,AUSTRALIA
关键词
COMPUTER METATHEORY;
D O I
10.1147/rd.315.0546
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
We discuss the development of executable programs from state-based specifications written in the language of first-order predicate calculus. Notable examples of such specifications are those written using the techniques Z and VDM; but our interest is in the derivation of the algorithms from which they deliberately abstract. This is, the role of a development method. We propose a development method based on specification statements with which specifications are embedded in programs - standing in for developments 'yet to be done. ' We show that specification statements allow description, development, and execution to be carried out within a single language: programs/specifications become hybrid constructions in which both predicates and directly executable operations can appear. The use of a single language - embracing both high- and low-level constructs - has a considerable influence on the development style, and it is that influence we discuss: the specification statement is described, its associated calculus of refinement is given, and the use of that calculus is illustrated.
引用
收藏
页码:546 / 555
页数:10
相关论文
共 13 条
[1]  
BACK RJ, 1978, A19784 U HELS DEP CO
[2]  
Dijkstra E. W., 1976, DISCIPLINE PROGRAMMI
[3]  
Hayes I. J, 1987, SPECIFICATION CASE S
[4]  
HEHNER ECR, 1984, LOGIC PROGRAMMING
[5]  
Hoare C. A. R., 1986, Fundamenta Informaticae, V9, P51
[6]  
JONES CB, 1986, SYSTEMATIC SOFTWARE
[7]  
JOSEPHS MB, FORMAL METHODS STEPW
[8]  
MEERTENS L, 1979 P ANN C ACM
[9]  
MORGAN C, UNPUB T PROGRAMMING
[10]  
MORGAN C, SOFTWARE ENG COURSE