The Refinement Calculus

The refinement calculus, based on weakest preconditions, elaborates program developments as a series of steps linked by a mathematical refinement relation. Specifications and executable code are regarded equally as programs, allowing a gradual transformation from one to the other.

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

[2]  Mark B. Josephs The Data Refinement Calculator for Z Specifications , 1988, Inf. Process. Lett..

[3]  John B. Shoven,et al.  I , Edinburgh Medical and Surgical Journal.

[4]  H. J. Boom A Weaker Precondition for Loops , 1982, TOPL.

[5]  Jean-Raymond Abrial A Formal Approach To Large Software Construction , 1989, MPC.

[6]  C. A. R. Hoare,et al.  Data Refinement Refined , 1986, ESOP.

[7]  Greg Nelson,et al.  A generalization of Dijkstra's calculus , 1989, ACM Trans. Program. Lang. Syst..

[8]  Ralph-Johan Back,et al.  Correctness preserving program refinements: Proof theory and applications , 1980 .

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

[10]  Richard S. Bird,et al.  An introduction to the theory of lists , 1987 .

[11]  Niklaus Wirth,et al.  Programming in Modula-2 , 1985, Texts and Monographs in Computer Science.

[12]  Edsger W. Dijkstra,et al.  A Discipline of Programming , 1976 .

[13]  Carroll Morgan,et al.  Specification of the UNIX Filing System , 1984, IEEE Transactions on Software Engineering.

[14]  C. A. R. Hoare,et al.  The Weakest Prespecification , 1987, Information Processing Letters.

[15]  Ken Robinson,et al.  Specification statements and refinements , 1987 .

[16]  Carroll Morgan,et al.  Programming from specifications , 1990, Prentice Hall International Series in computer science.

[17]  J. Michael Spivey,et al.  Understanding Z : A specification language and its formal semantics , 1985, Cambridge tracts in theoretical computer science.

[18]  Friedrich L. Bauer,et al.  Revised report on the algorithm language ALGOL 60 , 1963, CACM.

[19]  Carroll Morgan,et al.  The specification statement , 1988, TOPL.

[20]  John McCarthy,et al.  Recursive functions of symbolic expressions and their computation by machine, Part I , 1959, Commun. ACM.

[21]  Carroll Morgan,et al.  Auxiliary Variables in Data Refinement , 1988, Inf. Process. Lett..

[22]  David Gries,et al.  Assignment and Procedure Call Proof Rules , 1980, TOPL.

[23]  C. A. R. Hoare,et al.  Prespecification in Data Refinement , 1987, Inf. Process. Lett..

[24]  Joseph M. Morris,et al.  A Theoretical Basis for Stepwise Refinement and the Programming Calculus , 1987, Sci. Comput. Program..

[25]  Lambert Meertens Abstracto 84: The next generation , 1979, ACM '79.

[26]  C. A. R. Hoare,et al.  Procedures and parameters: An axiomatic approach , 1971, Symposium on Semantics of Algorithmic Languages.

[27]  Tony Hoare,et al.  The Weakest Prespecification II , 1986 .