Abstract
Combining Higher Order Abstract Syntax (HOAS) and induction is well known to be problematic. We have implemented a tool called Hybrid, within Isabelle HOL, which does allow object logics to be represented using HOAS, and reasoned about using tactical theorem proving in general and principles of (co)induction in particular. In this paper we describe Hybrid, and illustrate its use with case studies. We also provide some theoretical adequacy results which underpin our practical work.
This work was supported by EPSRC grant number GR/M98555.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
A. Gordon. A mechanisation of name-carrying syntax up to alpha-conversion. In J.J. Joyce and C.-J.H. Seger, editors, International Workshop on Higher Order Logic Theorem Proving and its Applications, volume 780 of Lecture Notes in Computer Science, pages 414–427, Vancouver, Canada, Aug. 1993. University of British Columbia, Springer-Verlag, published 1994.
S. Abramsky. The lazy lambda calculus. In D. Turner, editor, Research Topics in Functional Programming, pages 65–116. Addison-Wesley, 1990.
N. Benton and A. Kennedy. Monads, effects and transformations. In Proceedings of the 3rd International Workshop in Higher Order Operational Techniques in Semantics, volume 26 of Electronic Notes in Theoretical Computer Science. Elsevier, 1998.
N. de Bruijn. Lambda-calculus notation with nameless dummies: A tool for automatic formula manipulation with application to the Church-Rosser theorem. Indag. Math., 34(5):381–392, 1972.
J. Despeyroux, A. Felty, and A. Hirschowitz. Higher-order abstract syntax in Coq. In M. Dezani-Ciancaglini and G. Plotkin, editors, Proceedings of the International Conference on Typed Lambda Calculi and Applications, pages 124–138, Edinburgh, Scotland, Apr. 1995. Springer-Verlag LNCS 902.
J. Despeyroux and P. Leleu. Metatheoretic results for a modal λ-calculus. Journal of Functional and Logic Programming, 2000(1), 2000.
J. Despeyroux, F. Pfenning, and C. Schürmann. Primitive recursion for higher-order abstract syntax. In R. Hindley, editor, Proceedings of the Third International Conference on Typed Lambda Calculus and Applications (TLCA’ 97), pages 147–163, Nancy, France, Apr. 1997. Springer-Verlag LNCS.
M. Fiore, G.D. Plotkin, and D. Turi. Abstract Syntax and Variable Binding. In G. Longo, editor, Proceedings of the 14th Annual Symposium on Logic in Computer Science (LICS’99), pages 193–202, Trento, Italy, 1999. IEEE Computer Society Press.
J. Ford and I.A. Mason. Operational Techniques in PVS-A Preliminary Evaluation. In Proceedings of the Australasian Theory Symposium, CATS’ 01, 2001.
M. Gabbay and A. Pitts. A new approach to abstract syntax involving binders. In G. Longo, editor, Proceedings of the 14th Annual Symposium on Logic in Computer Science (LICS’99), pages 214–224, Trento, Italy, 1999. IEEE Computer Society Press.
S. Gay. A framework for the formalisation of pi-calculus type systems in Isabelle/HOL. In Proceedings of the 14th International Conference on Theorem Proving in Higher Order Logics (TPHOLs 2001, LNCS. Springer-Verlag, 2001.
A.D. Gordon and T. Melham. Five axioms of alpha-conversion. In J. von Wright, J. Grundy, and J. Harrison, editors, Proceedings of the 9th International Conference on Theorem Proving in Higher Order Logics (TPHOLs’96), volume 1125 of Lecture Notes in Computer Science, pages 173–190, Turku, Finland, August 1996. Springer-Verlag.
E.L. Gunter. Why we can’t have SML style datatype declarations in HOL. In L.J.M. Claese and M.J.C. Gordon, editors, Higher Order Logic Theorem Proving and Its Applications, volume A-20 of IFIP Transactions, pages 561–568. North-Holland Press, Sept. 1992.
L. Hallnas. Partial inductive definitions. Theoretical Computer Science, 87(1):115–147, July 1991.
R. Harper, F. Honsell, and G. Plotkin. A framework for defining logics. Journal of the Association for Computing Machinery, 40(1):143–184, Jan. 1993.
M. Hofmann. Semantical analysis for higher-order abstract syntax. In G. Longo, editor, Proceedings of the 14th Annual Symposium on Logic in Computer Science (LICS’99), pages 204–213, Trento, Italy, July 1999. IEEE Computer Society Press.
F. Honsell, M. Miculan, and I. Scagnetto. An axiomatic approach to metareasoning on systems in higher-order abstract syntax. In Proc. ICALP 2001, volume 2076 in LNCS, pages 963–978. Springer-Verlag, 2001.
F. Honsell, M. Miculan, and I. Scagnetto. π-calculus in (co)inductive type theories. Theoretical Computer Science, 2(253):239–285, 2001.
R. McDowell. Reasoning in a Logic with Definitions and Induction. PhD thesis, University of Pennsylvania, 1997.
R. McDowell and D. Miller. Reasoning with higher-order abstract syntax in a logical framework. ACM Transaction in Computational Logic, 2001. To appear.
J. McKinna and R. Pollack. Some Type Theory and Lambda Calculus Formalised. To appear in Journal of Automated Reasoning, Special Issue on Formalised Mathematical Theories (F. Pfenning, Ed.)
T.F. Melham. A mechanized theory of the π-calculus in HOL. Nordic Journal of Computing, 1(1):50–76, Spring 1994.
M. Miculan. Developing (meta)theory of lambda-calculus in the theory of contexts. In S. Ambler, R. Crole, and A. Momigliano, editors, MERLIN 2001: Proceedings of the Workshop on MEchanized Reasoning about Languages with variable bINding, volume 58 of Electronic Notes in Theoretical Computer Scienc, pages 1–22, November 2001.
J. Parrow. An introduction to the pi-calculus. In J. Bergstra, A. Ponse, and S. Smolka, editors, Handbook of Process Algebra, pages 479–543. Elsevier Science, 2001.
F. Pfenning. Computation and deduction. Lecture notes, 277 pp. Revised 1994, 1996, to be published by Cambridge University Press, 1992.
F. Pfenning and C. Elliott. Higher-order abstract syntax. In Proceedings of the ACM SIGPLAN’88 Symposium on Language Design and Implementation, pages 199–208, Atlanta, Georgia, June 1988.
F. Pfenning and C. Schürmann. System description: Twelf— A metalogical framework for deductive systems. In H. Ganzinger, editor, Proceedings of the 16th International Conference on Automated Deduction (CADE-16), pages 202–206, Trento, Italy, July 1999. Springer-Verlag LNAI 1632.
A. M. Pitts. Nominal logic: A first order theory of names and binding. In N. Kobayashi and B. C. Pierce, editors, Theoretical Aspects of Computer Software, 4th International Symposium, TACS 2001, Sendai, Japan, October 29–31, 2001, Proceedings, volume 2215 of Lecture Notes in Computer Science, pages 219–242. Springer-Verlag, Berlin, 2001.
R. Vestergaard and J. Brotherson. A formalized first-order conflence proof for the λ-calculus using one sorted variable names. In A. Middelrop, editor, Proceedings of RTA 2001, volume 2051 of LNCS, pages 306–321. Springer-Verlag, 2001.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Ambler, S.J., Crole, R.L., Momigliano, A. (2002). Combining Higher Order Abstract Syntax with Tactical Theorem Proving and (Co)Induction. In: Carreño, V.A., Muñoz, C.A., Tahar, S. (eds) Theorem Proving in Higher Order Logics. TPHOLs 2002. Lecture Notes in Computer Science, vol 2410. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45685-6_3
Download citation
DOI: https://doi.org/10.1007/3-540-45685-6_3
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-44039-0
Online ISBN: 978-3-540-45685-8
eBook Packages: Springer Book Archive