A Powerful Transformation Rule, its Applications and Variants
This paper introduces, discusses and proves a transformation rule to convert specifications of set-valued functions defined by set comprehension into functional implementations. The power of the rule is illustrated by several examples, among them a Prolog interpreter. Also, variants of the rule for specifications involving existential quantification and arbitrary choice are presented and illustrated by representative examples.
KeywordsTransformational programming backtracking set comprehension functional implemention
- Achatz, K. and Partsch, H.A. (1996) From Descriptive Specifications to Operational ones: A powerful transformation rule, its applications and variants. Faculty for Informatics, University of Ulm, Nr. 96–13, Ulmer Informatik-Berichte, 1996.Google Scholar
- Bauer, F.L. and Berghammer, R. and Broy, M. and Dosch, W. and , F. and Gnatz, R. and Hangel, E., Hesse, W. and Krieg-Brückner, B. and Laut, A. and Matzner, T. and Möller, B. and Nickl, F. and Partsch, H. and Pepper, P. and Samelson, K. and Wirsing, M. and Wössner, H. (1985) The Munich project CIP. Volume I: The wide spectrum language CIP-L. Lecture Notes in Computer Science 183, Springer, Berlin.CrossRefGoogle Scholar
- Smith, D.R. (1987) On the design of generate-and-test algorithms: subspace generators. Technical Report KES.U.86.6. Kestrel Institute, Palo Alto, Ca., 1986. Also: Meertens, L.G.L.T. (ed.): Program specification and transformation. Amsterdam: North-Holland, 207–220.Google Scholar
- Smith, D.R. (1988) The structure and design of global search algorithms.Technical Report KES.U.87.12, Kestrel Institute, Palo Alto, Ca.Smith, D.R. (1990) KIDS: a semiautomatic program development system. IEEE Transactions on Software Engineering 16: 9, 1024–1043.Google Scholar