Abstraction and specification in program development
Abstraction and specification in program development
Specification of computer programs
Specification of computer programs
Logic programming: systematic program development
Logic programming: systematic program development
The Z notation: a reference manual
The Z notation: a reference manual
Programming from specifications (2nd ed.)
Programming from specifications (2nd ed.)
On Specification Frameworks and Deductive Synthesis of Logic Programs
LOPSTR '94/META '94 Proceedings of the 4th International Workshops on Logic Programming Synthesis and Transformation - Meta-Programming in Logic
Forms of Logic Specifications: A Preliminary Study
LOPSTR '96 Proceedings of the 6th International Workshop on Logic Programming Synthesis and Transformation
Refining Specifications to Logic Programs
LOPSTR '96 Proceedings of the 6th International Workshop on Logic Programming Synthesis and Transformation
Specware: Formal Support for Composing Software
MPC '95 Mathematics of Program Construction
Hi-index | 0.00 |
A refinement calculus provides a method for transforming specifications to executable code, maintaining the correctness of the code with respect to its specification. In this paper we introduce modules into a logic programming refinement calculus. Modules allow data types to be grouped together with sets of procedures that manipulate the data types. By placing restrictions on the way a program uses a module, we develop a technique for refining the module so that it uses a more efficient representation of the data type.