Abstract
In 1994 Gerard Huet formalized in Coq the cube property of ł-calculus residuals. His development is based on a clever idea, a beautiful inductive definition of residuals. However, in his formalization there is a lot of noise concerning the representation of terms with binders. We re-interpret his work in Abella, a recent proof assistant based on higher-order abstract syntax and provided with a nominal quantifier. By revisiting Huet’s approach and exploiting the features of Abella, we get a strikingly compact and natural development, which makes Huet’s idea really shine.
Keywords
- Deductive System
- Proof Theory
- Development Property
- Proof Assistant
- Parallel Reduction
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.
This is a preview of subscription content, access via your institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Accattoli, B.: Sources, https://sites.google.com/site/beniaminoaccattoli/residuals
Baelde, D.: On the expressivity of minimal generic quantification. Electr. Notes Theor. Comput. Sci. 228, 3–19 (2009)
Barendregt, H.P.: The Lambda Calculus – Its Syntax and Semantics, vol. 103. North-Holland (1984)
Berry, G., Lévy, J.J.: Minimal and optimal computations of recursive programs. In: POPL, pp. 215–226 (1977)
Brotherston, J., Vestergaard, R.: A formalised first-order confluence proof for the ł-calculus using one-sorted variable names. Inf. Comput. 183(2), 212–244 (2003)
Dunfield, J., Pientka, B.: Beluga: A Framework for Programming and Reasoning with Deductive Systems (System Description). In: Giesl, J., Hähnle, R. (eds.) IJCAR 2010. LNCS, vol. 6173, pp. 15–21. Springer, Heidelberg (2010)
Elliott, C., Pfenning, F.: Higher-order abstract syntax. In: PLDI, pp. 199–208 (1988)
Gacek, A.: The Abella Interactive Theorem Prover (System Description). In: Armando, A., Baumgartner, P., Dowek, G. (eds.) IJCAR 2008. LNCS (LNAI), vol. 5195, pp. 154–161. Springer, Heidelberg (2008)
Gacek, A.: A framework for specifying, prototyping, and reasoning about computational systems. Ph.D. thesis, University of Minnesota (September 2009)
Gacek, A.: Relating nominal and higher-order abstract syntax specifications. In: PPDP 2010, pp. 177–186. ACM (July 2010)
Gacek, A., Miller, D., Nadathur, G.: Combining generic judgments with recursive definitions. In: LICS, pp. 33–44 (2008)
Gacek, A., Miller, D., Nadathur, G.: Reasoning in Abella about structural operational semantics specifications. ENTCS 228, 85–100 (2009)
Gacek, A., Miller, D., Nadathur, G.: Nominal abstraction. Inf. Comput. 209(1), 48–73 (2011)
Gacek, A., Miller, D., Nadathur, G.: A two-level logic approach to reasoning about computations. J. Autom. Reasoning 49(2), 241–273 (2012)
Glauert, J.R.W., Khasidashvili, Z.: Relating conflict-free stable transition and event models via redex families. Theor. Comput. Sci. 286(1), 65–95 (2002)
Homeier, P.V.: A proof of the Church-Rosser theorem for the λ-calculus in higher order logic. In: TPHOLs 2001: Supplemental Proceedings, pp. 207–222 (2001)
Huet, G.P.: Residual theory in λ-calculus: A formal development. J. Funct. Program. 4(3), 371–394 (1994)
Huet, G.P., Lévy, J.J.: Computations in orthogonal rewriting systems, I. In: Computational Logic - Essays in Honor of Alan Robinson, pp. 395–414 (1991)
Huet, G.P., Lévy, J.J.: Computations in orthogonal rewriting systems, II. In: Computational Logic - Essays in Honor of Alan Robinson, pp. 415–443 (1991)
Lévy, J.J.: Réductions correctes et optimales dans le lambda-calcul. Thése d’Etat, Univ. Paris VII, France (1978)
McKinna, J., Pollack, R.: Pure Type Systems Formalized. In: Bezem, M., Groote, J.F. (eds.) TLCA 1993. LNCS, vol. 664, pp. 289–305. Springer, Heidelberg (1993)
Melliès, P.-A.: Axiomatic Rewriting Theory VI Residual Theory Revisited. In: Tison, S. (ed.) RTA 2002. LNCS, vol. 2378, pp. 24–50. Springer, Heidelberg (2002)
Miller, D., Nadathur, G.: A logic programming approach to manipulating formulas and programs. In: SLP, pp. 379–388 (1987)
Miller, D., Tiu, A.: A proof theory for generic judgments. ACM Trans. Comput. Log. 6(4), 749–783 (2005)
Miller, D., Tiu, A.: Proof search specifications of bisimulation and modal logics for the π-calculus. ACM Trans. Comput. Log. 11(2) (2010)
Nipkow, T.: More Church-Rosser proofs (in Isabelle/HOL). Journal of Automated Reasoning, 733–747 (1996)
Pfenning, F.: A proof of the Church-Rosser theorem and its representation in a logical framework. Tech. Rep. CMU-CS-92-186, Carnegie Mellon University (1992)
Pfenning, F., Schürmann, C.: System Description: Twelf - A Meta-Logical Framework for Deductive Systems. In: Ganzinger, H. (ed.) CADE 1999. LNCS (LNAI), vol. 1632, pp. 202–206. Springer, Heidelberg (1999)
Pientka, B.: Beluga: Programming with Dependent Types, Contextual Data, and Contexts. In: Blume, M., Kobayashi, N., Vidal, G. (eds.) FLOPS 2010. LNCS, vol. 6009, pp. 1–12. Springer, Heidelberg (2010)
Pollack, R.: Polishing up the Tait-Martin-Löf proof of the Church-Rosser theorem (1995)
Rasmussen, O.: The Church-Rosser theorem in Isabelle: a proof porting experiment. Tech. Rep. 164, University of Cambridge (1995)
Shankar, N.: A mechanical proof of the Church-Rosser theorem. J. ACM 35(3), 475–522 (1988)
Takahashi, M.: Parallel reductions in λ-calculus. Inf. Comput. 118(1), 120–127 (1995)
Terese: Term Rewriting Systems, Cambridge Tracts in Theoretical Computer Science, vol. 55. Cambridge University Press (2003)
Vestergaard, R.: The Primitive Proof Theory of the lambda-Calculus. Ph.D. thesis, Heriot-Watt University, Edinburgh, Scotland (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Accattoli, B. (2012). Proof Pearl: Abella Formalization of λ-Calculus Cube Property. In: Hawblitzel, C., Miller, D. (eds) Certified Programs and Proofs. CPP 2012. Lecture Notes in Computer Science, vol 7679. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-35308-6_15
Download citation
DOI: https://doi.org/10.1007/978-3-642-35308-6_15
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-35307-9
Online ISBN: 978-3-642-35308-6
eBook Packages: Computer ScienceComputer Science (R0)
