Program simplification via symbolic interpretation
We investigate a specific program transformation technique, called simplification, which is a generalization of the "mixed computation" technique due to Ershov. Our technique allows one to develop truly generalized programs to be reused several times, for particular cases of their expected inputs.
Given a subset D' of an input domain D, specified via predicates on program variables, and a generalized program P, simplification yields a program P' which implements the same transformation as P on input data restriced to D', but is considerably more efficient than P. We give examples and outline the structure of a prototype implementation, which is built on top of a symbolic intepreter for Pascal.
KeywordsGeneralize Program Conditional Statement Sorting Algorithm Program Variable Prototype Implementation
Unable to display preview. Download preview PDF.
- /Aho and Ullman 1977/.Aho, A.V. and J.D. Ullman Principles of Compiler Design Addison Wesley, Reading, MA 1977.Google Scholar
- /Colombo et al. 1985/Colombo, M., F. Furlani, G. Geretto "Un Semplificatore di Programmi Pascal Basato su Esecutore Simbolico", Dip. Elettronica, Politecnico di Milano, Tesi di Laurea 1985.Google Scholar
- /Ershov 1977/.Ershov, A.P. "On The Partial Computation Principle", Information Processing Letters, 6,2, 1977.Google Scholar
- /Ershov 1982/.Ershov, A.P., "Mixed Computation Potential Applications and Problems for Study", Theoretical Computer Science, 18, 1982.Google Scholar
- /Kemmerer and Eckmann 1983/.Kemmerer, R.A., and S.T. Eckmann A User's Manual for the UNISEX System", UCSB, Dept. of Computer Science, TRCS83-05, Dec. 1983.Google Scholar
- /King 1976/.
- /Bauer and Wossner 1982/.Bauer, F. and Wossner, H. "Algorithmic Languadge and Program Development", Springer Verlag, New York 1982.Google Scholar
- /Partsch and Steinbruggen 1983/.