Abstract
This paper describes a semantical embedding of the relation based language Ruby in Zermelo-Fraenkel set theory (ZF) using the Isabelle theorem prover. A small subset of Ruby, called Pure Ruby, is embedded as a conservative extension of ZF and many useful structures used in connection with VLSI design are defined in terms of Pure Ruby. The inductive package of Isabelle is used to characterise the Pure Ruby subset to allow proofs to be performed by structural induction over the Pure Ruby elements.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
R. Boulton, A. Gordon, M. Gordon, J. Harrison, J. Herbert, and J. Van Tassel. Experience with embedding hardware description languages in HOL. In V. Stavridou, T. F. Melham, and R. T. Boute, editors, IFIP TC10/WG 10.2 International Conference on Theorem Provers in Circuit Design: Theory, Practice and Experience, pages 129–156, Nijmegen, June 1992. North-Holland/Elsevier.
A. Dent and K. Hanna. Reasoning about array structures using a dependently typed logic. In CHDL '93. Elsevier Publishers, 1993.
M. J. C. Gordon and T. F. Melham. Introduction to HOL: A Theorem Proving Environment for Higher Order Logic. Cambridge University Press, 1993.
F. K. Hanna, M. Longley, and N. Daeche. Formal synthesis of digital systems. In Luc Claesen, editor, VLSI Design Methods. Elsevier Publishers, 1990.
G. Jones and M. Sheeran. Circuit design in Ruby. In J. Staunstrup, editor, Formal Methods for VLSI Design. Elsevier Publishers, 1990.
G. Jones and M. Sheeran. Relations and refinement in circuit design. In Morgan, editor, Proc. BCS FACS Workshop on Refinement. Springer-Verlag Workshop in Computing, 1990.
Mariam Leeser. Using Nuprl for the verification and synthesis of hardware. Philosophical Trans. of the Royal Soc. London A, 339:49–68, 1992.
R. Milner. A theory of type polymorphism in programming. Journal of Computer and System Sciences, 17:348–375, 1978.
L. C. Paulson. Set theory for verification: I. from foundations to functions. Journal of Automated Reasoning, 11(3):353–389, 1993.
L. C. Paulson. A fixedpoint approach to implementing (co)inductive definitions. In Alan Bundy, editor, Proceedings of the 12th International Conference on Automated Deduction, pages 148–161, Nancy, France, June 1994. Springer-Verlag LNAI 814.
L. C. Paulson. Isabelle: A Generic Theorem Prover. Springer-Verlag LNCS 828, 1994.
O. Rasmussen. A Ruby proof system. Technical Report ID-TR: 1995-161, Dept. of Computer Science, Technical University of Denmark, 1995.
Lars Rossen. Ruby algebra. In G. Jones and M. Sheeran, editors, Designing Correct Circuits, Oxford 1990, Workshops in Computing, pages 297–312. Springer-Verlag Workshop in Computing, 1991.
R. Sharp and O. Rasmussen. Transformational rewriting with Ruby. In CHDL '93, pages 231–248. Elsevier Science Publishers (North-Holland), 1993.
R. Sharp and O. Rasmussen. Using a language of functions and relations for VLSI specification. In Functional programming and Computer Architecture, FPCA '95, pages 45–54, June 1995.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Rasmussen, O. (1996). An embedding of Ruby in Isabelle. In: McRobbie, M.A., Slaney, J.K. (eds) Automated Deduction — Cade-13. CADE 1996. Lecture Notes in Computer Science, vol 1104. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-61511-3_80
Download citation
DOI: https://doi.org/10.1007/3-540-61511-3_80
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-61511-8
Online ISBN: 978-3-540-68687-3
eBook Packages: Springer Book Archive