Abstract
Reasoning about programming language semantics with an automated proof tool requires that the semantics definition be stated in a formalism that is suitable for the tool. This paper presents a method to transform a structured operational semantics (SOS) definition S, given by a special form of deduction system, into a term rewriting system R. This system R simulates Svery closely in that sense that the sets of possible configuration sequences are essentially the same. Since only standard unconditional rewrite rules are used, every theorem prover based on rewriting can be employed to implement this kind of semantics definitions, and so to reason about them.
Partially supported by Esprit BRA projects 3104 “ProCoS” and 7071 “ProCoS II” and Deutsche Forschungsgemeinschaft, grants La 426/12-1 and La 426/12-2.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
M. Abadi, L. Cardelli, P.-L. Curien, and J.-J. Lévy. Explicit substitutions. In Proceedings of the 17th ACM Symposium on Principles of Programming Languages, pages 31–46, 1990.
Luca Aceto, Bard Bloom, and Frits Vaandrager. Turning SOS rules into equations. In Proceedings of the 7th IEEE Symposium on Logic in Computer Science, Santa Cruz, CA, pages 113–124, 1992. Full version available as CWI Report CS-R 9218, Centrum voor Wiskunde en Informatica, Amsterdam, June 1992.
Doeko Bosscher. Term rewriting properties of SOS axiomatisations. In Proceedings of the Conference on Theoretical Aspects of Computer Science, LNCS. Springer-Verlag, 1994. To appear.
Jonathan Bowen et al.. A ProCoS II project description: ESPRIT Basic Research project 7071. Bulletin of the EATCS 50, 128–137, 1993.
N. De Bruijn. Lambda-calculus notation with nameless dummies. Indagationes Mathematicae 34, 381–392, 1972.
Karl-Heinz Buth. Simulation of transition systems with term rewriting systems. Bericht 9212, Institut für Informatik und Praktische Mathematik, Christian-Albrechts-Universität Kiel, 1992.
Karl-Heinz Buth. Using SOS definitions in term rewriting proofs. In Ursula H. Martin and Jeannette M. Wing, editors, Proceedings of the First International Workshop on Larch, Dedham, MA, 1992, Workshops in Computing Series, pages 36–54. Springer-Verlag, 1993.
Juanito Camilleri and Tom Melham. Reasoning with inductively defined relations in the HOL theorem prover. Technical Report 265, University of Cambridge Computer Laboratory, August 1992.
Nachum Dershowitz and Jean-Pierre Jouannaud. Rewrite systems. In Jan van Leeuwen, editor, Handbook of Theoretical Computer Science, Vol. B: Formal Models and Semantics, chapter 6, pages 243–320. Elsevier/MIT Press, 1990.
Daniel J. Dougherty. Adding algebraic rewriting to the untyped lambda calculus. In Ronald V. Book, editor, Proceedings of the 4th International Conference on Rewriting Techniques and Applications, Como, Italy, LNCS 488, pages 37–48. Springer-Verlag, April 1991.
Stephen J. Garland and John V. Guttag. An overview of LP, the Larch Prover. In Nachum Dershowitz, editor, Proceedings of the Third International Conference on Rewriting Techniques and Applications, LNCS 355, pages 137–155. Springer-Verlag, 1989.
Joseph A. Goguen. OBJ as a theorem prover with applications to hardware verification. Technical Report SRI-CSL-88-4R2, SRI International, August 1988.
Michael J. C. Gordon. HOL: A proof generating system for higher-order logic. In G. Birtwistle and P.A. Subramanyam, editors, VLSI Specification, Verification and Synthesis, pages 73–128. Kluwer, 1988.
Jan Friso Groote and Frits Vaandrager. Structured operational semantics and bisimulation as a congruence. Information and Computation 100(2), 202–260, October 1992.
Maritta Heisel, Wolfgang Reif, and Werner Stephan. Tactical theorem proving in program verification. In Mark E. Stickel, editor, Proceedings of the 10th International Conference on Automated Deduction, LNCS 449, pages 117–131. Springer-Verlag, 1990.
C. A. R. Hoare. Communicating Sequential Processes. Series in Computer Science. Prentice-Hall International, 1985.
Inmos Ltd. occam 2 Reference Manual. Series in Computer Science. Prentice-Hall International, 1988.
Stefan Kahrs. λ-rewriting. PhD thesis, Fachbereich Mathematik und Informatik, Universität Bremen, January 1991.
Donald E. Knuth and Peter B. Bendix. Simple word problems in universal algebras. In J. Leech, editor, Proceedings of the Conference on Computational Problems in Abstract Algebra, Oxford, 1967, pages 263–298. Pergamon Press, 1970.
Yassine Lakhneche. Equivalence of denotational and structural operational semantics of PL0/R. ProCoS Technical Report Kiel YL1, Christian-Albrechts-Universität Kiel, 1991.
Gordon D. Plotkin. An operational semantics for CSP. In Dines Bjørner, editor, Formal Description of Programming Concepts — II, pages 199–225. North-Holland, 1983.
John Rushby. A tutorial on specification and verification using PVS. In James C. P. Woodcock and Peter Gorm Larsen, editors, Tutorial Material for FME '93: Industrial-Strength Formal Methods. Proceedings of the First International Symposium of Formal Methods Europe, Odense, Denmark, pages 357–406, April 1993.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Buth, KH. (1994). Simulation of SOS definitions with term rewriting systems. In: Sannella, D. (eds) Programming Languages and Systems — ESOP '94. ESOP 1994. Lecture Notes in Computer Science, vol 788. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57880-3_10
Download citation
DOI: https://doi.org/10.1007/3-540-57880-3_10
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-57880-2
Online ISBN: 978-3-540-48376-2
eBook Packages: Springer Book Archive