Abstract
Kamperman and Walters proposed the notion of a simulation of one rewrite system by another one, whereby each term of the simulating rewrite system is related to a term in the original rewrite system. In this paper it is shown that if such a simulation is sound and complete and preserves termination, then the transformation of the original into the simulating rewrite system constitutes a correct step in the compilation of the original rewrite system. That is, the normal forms of a term in the original rewrite system can then be obtained by computing the normal forms of a related term in the simulating rewrite system.
Preview
Unable to display preview. Download preview PDF.
References
J.A. Bergstra, J. Heering, and P. Klint, eds. Algebraic Specification. ACM Press in cooperation with Addison Wesley, 1989.
R.M. Burstall and P.J. Landin. Programs and their proofs: an algebraic approach. In Machine Intelligence, Volume 4, pp. 17–43. Edinburgh University Press, 1969.
N. Dershowitz and J.-P. Jouannaud. Rewrite systems. In J. van Leeuwen, ed., Handbook of Theoretical Computer Science, Volume B, pp. 243–320. Elsevier, 1990.
H. Ehrig, H.-J. Kreowski, and P. Padawitz. Stepwise specification and implementation of abstract data types. In Proceedings ICALP'78, LNCS 62, pp. 205–226. Springer, 1978.
W.J. Fokkink and J.C. van de Pol. Correct transformation of rewrite systems for implementation purposes. Logic Group Preprint Series 164, Utrecht University, 1996. Available at http://www.phil.ruu.nl.
J.F.Th. Kamperman. Compilation of Term Rewriting Systems. PhD thesis, University of Amsterdam, 1996.
J.F.Th. Kamperman and H.R. Walters. Minimal term rewriting systems. In Proceedings WADT'95, LNCS 1130, pp. 274–290. Springer, 1996.
J.F.Th. Kamperman and H.R. Walters. Simulating TRSs by minimal TRSs: a simple, efficient, and correct compilation technique. Report CS-119605, CWI, 1996. Available at http://www.cwi.nl/epic.
J.W. Klop. Term rewriting systems. In Handbook of Logic in Computer Science, Volume I, pp. 1–116. Oxford University Press, 1992.
A. Laville.Lazy pattern matching in the ML language. In Proceedings FSTTCS'87, LNCS 287, pp. 400–419. Springer, 1987.
B. Luttik. Transformation of reduction systems: a view on proving correctness. Master's Thesis, University of Amsterdam, 1996.
J. McCarthy. Towards a mathematical science of computation. In Proceedings Information Processing '62, pp. 21–28. North-Holland, 1963.
F.L. Morris. Advice on structuring compilers and proving them correct. In Proceedings POPL'73, pp. 144–152. ACM Press, 1973.
C.F. Nourani. Abstract implementations and their correctness proofs. Journal of the ACM, 30:343–359, 1983.
M.J. O'Donnell. Equational Logic as a Programming Language. MIT Press, 1985.
R.C. Sekar, S. Pawagi, and I.V. Ramakrishnan. Transforming strongly sequential rewrite systems with constructors for efficient parallel execution. In Proceedings RTA'89, LNCS 355, pp. 404–418. Springer, 1989.
S.R. Thatte. On the correspondence between two classes of reduction systems. Information Processing Letters, 20(2):83–85, 1985.
S.R. Thatte. Implementing first-order rewriting with constructor systems. Theoretical Computer Science, 61(1):83–92, 1988.
R.M. Verma. Transformations and confluence for rewrite systems. Theoretical Computer Science, 152(2):269–283, 1995.
H.R. Walters and J.F.Th. Kamperman. EPIC: an equational language — abstrac machine and supporting tools. In Proceedings RTA'96, LNCS 1103, pp. 424–427. Springer, 1996.
H.R. Walters and J.F.Th. Kamperman. EPIC 1.0 (unconditional), an equational programming language. Report CS-119604, CWI, 1996. Available at http://www.cwi.nl/epic.
H. Zantema. Termination of term rewriting by semantic labelling. Fundamenta Informaticae, 24(1,2):89–105, 1995.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1997 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Fokkink, W., van de Pol, J. (1997). Simulation as a correct transformation of rewrite systems. In: Prívara, I., Ružička, P. (eds) Mathematical Foundations of Computer Science 1997. MFCS 1997. Lecture Notes in Computer Science, vol 1295. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0029968
Download citation
DOI: https://doi.org/10.1007/BFb0029968
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-63437-9
Online ISBN: 978-3-540-69547-9
eBook Packages: Springer Book Archive