Abstract
We present a general framework for specifying and reasoning about syntax with bindings. Abstract binder types are modeled using a universe of functors on sets, subject to a number of operations that can be used to construct complex binding patterns and binding-aware datatypes, including non-well-founded and infinitely branching types, in a modular fashion. Despite not committing to any syntactic format, the framework is ``concrete'' enough to provide definitions of the fundamental operators on terms (free variables, alpha-equivalence, and capture-avoiding substitution) and reasoning and definition principles. This work is compatible with classical higher-order logic and has been formalized in the proof assistant Isabelle/HOL.
Supplemental Material
- Michael Gordon Abbott, Thorsten Altenkirch, and Neil Ghani. 2005. Containers: Constructing Strictly Positive Types. Theor. Comput. Sci. 342, 1 (2005), 3–27. Google Scholar
Digital Library
- Michael Gordon Abbott, Thorsten Altenkirch, Neil Ghani, and Conor McBride. 2004. Constructing Polymorphic Programs with Quotient Types. In Mathematics of Program Construction (MPC) 2004, Dexter Kozen and Carron Shankland (Eds.). LNCS, Vol. 3125. Springer, 2–15.Google Scholar
Cross Ref
- Andreas Abel and Thorsten Altenkirch. 1999. A Predicative Strong Normalisation Proof for a λ-Calculus with Interleaving Inductive Types. In Types for Proofs and Programs (TYPES) 1999, Thierry Coquand, Peter Dybjer, Bengt Nordström, and Jan M. Smith (Eds.). LNCS, Vol. 1956. Springer, 21–40. Google Scholar
Digital Library
- Andreas Abel, Alberto Momigliano, and Brigitte Pientka. 2017. POPLMark Reloaded. In Logical Frameworks and MetaLanguages: Theory and Practice (LFMTP) 2017, Marino Miculan and Florian Rabe (Eds.). https://lfmtp.org/workshops/ 2017/inc/papers/paper_8_abel.pdfGoogle Scholar
- Peter Aczel and Nax Paul Mendler. 1989. A Final Coalgebra Theorem. In Category Theory and Computer Science 1989, David H. Pitt, David E. Rydeheard, Peter Dybjer, Andrew M. Pitts, and Axel Poigné (Eds.). LNCS, Vol. 389. Springer, 357–365. Google Scholar
Digital Library
- Benedikt Ahrens, André Hirschowitz, Ambroise Lafont, and Marco Maggesi. 2018. High-Level Signatures and Initial Semantics. In Computer Science Logic (CSL) 2018, Dan R. Ghica and Achim Jung (Eds.). LIPIcs, Vol. 119. Schloss Dagstuhl— Leibniz-Zentrum fuer Informatik, 4:1–4:22.Google Scholar
- Guillaume Allais, Robert Atkey, James Chapman, Conor McBride, and James McKinna. 2018. A Type and Scope Safe Universe of Syntaxes with Binding: Their Semantics and Proofs. Proc. ACM Program. Lang. 2, International Conference on Functional Programming (ICFP) (2018), 90:1–90:30. Google Scholar
Digital Library
- Thorsten Altenkirch, Neil Ghani, Peter Hancock, Conor McBride, and Peter Morris. 2015. Indexed Containers. J. Funct. Program. 25 (2015).Google Scholar
- Thorsten Altenkirch and Bernhard Reus. 1999. Monadic Presentations of Lambda Terms using Generalized Inductive Types. In Computer Science Logic (CSL) 1999, Jörg Flum and Mario Rodríguez-Artalejo (Eds.). LNCS, Vol. 1683. Springer, 453–468. Google Scholar
Digital Library
- Brian E. Aydemir, Aaron Bohannon, Matthew Fairbairn, J. Nathan Foster, Benjamin C. Pierce, Peter Sewell, Dimitrios Vytiniotis, Geoffrey Washburn, Stephanie Weirich, and Steve Zdancewic. 2005. Mechanized Metatheory for the Masses: The PoplMark Challenge. In Theorem Proving in Higher Order Logics (TPHOLs) 2005, Joe Hurd and Thomas F. Melham (Eds.). LNCS, Vol. 3603. Springer, 50–65. Google Scholar
Digital Library
- Brian E. Aydemir, Aaron Bohannon, and Stephanie Weirich. 2007. Nominal Reasoning Techniques in Coq (Extended Abstract). Electr. Notes Theor. Comput. Sci. 174, 5 (2007), 69–77. Google Scholar
Digital Library
- Brian E. Aydemir, Arthur Charguéraud, Benjamin C. Pierce, Randy Pollack, and Stephanie Weirich. 2008. Engineering Formal Metatheory. In Principles of Programming Languages (POPL) 2008, George C. Necula and Philip Wadler (Eds.). ACM, 3–15. Google Scholar
Digital Library
- David Baelde, Kaustuv Chaudhuri, Andrew Gacek, Dale Miller, Gopalan Nadathur, Alwen Tiu, and Yuting Wang. 2014. Abella: A System for Reasoning about Relational Specifications. J. Formalized Reasoning 7, 2 (2014), 1–89.Google Scholar
- Henk P. Barendregt. 1984. The Lambda Calculus: Its Syntax and Semantics. Studies in Logic, Vol. 40. Elsevier.Google Scholar
- François Bergeron, Gilbert Labelle, and Pierre Leroux. 1997. Combinatorial Species and Tree-Like Structures. Number 67 in Encyclopedia of Mathematics and Its Applications. Cambridge University Press. Translated by Margaret Readdy.Google Scholar
- Stefan Berghofer and Christian Urban. 2007. A Head-to-Head Comparison of de Bruijn Indices and Names. Electr. Notes Theor. Comput. Sci. 174, 5 (2007), 53–67. Google Scholar
Digital Library
- Richard S. Bird and Ross Paterson. 1999. De Bruijn Notation as a Nested Datatype. J. Funct. Program. 9, 1 (1999), 77–91. Google Scholar
Digital Library
- Jasmin Christian Blanchette, Lorenzo Gheri, Andrei Popescu, and Dmitriy Traytel. 2019a. Bindings as Bounded Natural Functors (Extended Version). https://github.com/dtraytel/Bindings- as- BNFs/blob/master/bindings_extended.pdf .Google Scholar
- Jasmin Christian Blanchette, Lorenzo Gheri, Andrei Popescu, and Dmitriy Traytel. 2019b. Formalization associated with this paper. https://github.com/dtraytel/Bindings- as- BNFs .Google Scholar
- Jasmin Christian Blanchette, Johannes Hölzl, Andreas Lochbihler, Lorenz Panny, Andrei Popescu, and Dmitriy Traytel. 2014. Truly Modular (Co)datatypes for Isabelle/HOL. In Interactive Theorem Proving (ITP) 2014, Gerwin Klein and Ruben Gamboa (Eds.). LNCS, Vol. 8558. Springer, 93–110.Google Scholar
- Jasmin Christian Blanchette, Fabian Meier, Andrei Popescu, and Dmitriy Traytel. 2017. Foundational Nonuniform (Co)datatypes for Higher-Order Logic. In Logic in Computer Science (LICS) 2017. IEEE Computer Society, 1–12.Google Scholar
- Arthur Charguéraud. 2012. The Locally Nameless Representation. J. Autom. Reasoning 49, 3 (2012), 363–408.Google Scholar
Cross Ref
- Adam Chlipala. 2008. Parametric Higher-Order Abstract Syntax for Mechanized Semantics. In International Conference on Functional Programming (ICFP) 2008, James Hook and Peter Thiemann (Eds.). ACM, 143–156. Google Scholar
Digital Library
- Alonzo Church. 1940. A Formulation of the Simple Theory of Types. J. Symb. Log. 5, 2 (1940), 56–68.Google Scholar
Cross Ref
- Ernesto Copello, Nora Szasz, and Álvaro Tasistro. 2018. Formalisation in Constructive Type Theory of Barendregt’s Variable Convention for Generic Structures with Binders. In Logical Frameworks and Meta-Languages: Theory and Practice (LFMTP) 2018, Frédéric Blanqui and Giselle Reis (Eds.). EPTCS, Vol. 274. 11–26.Google Scholar
- N. G. de Bruijn. 1972. Lambda Calculus Notation with Nameless Dummies, a Tool for Automatic Formula Manipulation, with Application to the Church–Rosser Theorem. Indag. Math 75, 5 (1972), 381–392.Google Scholar
Cross Ref
- Joëlle Despeyroux, Amy P. Felty, and André Hirschowitz. 1995. Higher-Order Abstract Syntax in Coq. In Typed Lambda Calculi and Applications (TLCA) 1995, Mariangiola Dezani-Ciancaglini and Gordon D. Plotkin (Eds.). LNCS, Vol. 902. Springer, 124–138. Google Scholar
Digital Library
- Amy P. Felty and Alberto Momigliano. 2012. Hybrid: A Definitional Two-Level Approach to Reasoning with Higher-Order Abstract Syntax. J. Autom. Reasoning 48, 1 (2012), 43–105. Google Scholar
Digital Library
- Amy P. Felty, Alberto Momigliano, and Brigitte Pientka. 2015a. The Next 700 Challenge Problems for Reasoning with Higher-Order Abstract Syntax Representations: Part 2—a Survey. J. Autom. Reasoning 55, 4 (2015), 307–372. Google Scholar
Digital Library
- Amy P. Felty, Alberto Momigliano, and Brigitte Pientka. 2015b. An Open Challenge Problem Repository for Systems Supporting Binders. In Logical Frameworks and Meta-Languages: Theory and Practice (LFMTP) 2015, Iliano Cervesato and Kaustuv Chaudhuri (Eds.). EPTCS, Vol. 185. 18–32.Google Scholar
- Amy P. Felty and Brigitte Pientka. 2010. Reasoning with Higher-Order Abstract Syntax and Contexts: A Comparison. In Interactive Theorem Proving (ITP) 2010, Matt Kaufmann and Lawrence C. Paulson (Eds.). LNCS, Vol. 6172. Springer, 227–242. Google Scholar
Digital Library
- Francisco Ferreira and Brigitte Pientka. 2017. Programs Using Syntax with First-Class Binders. In European Symposium on Programming (ESOP) 2017, Hongseok Yang (Ed.). LNCS, Vol. 10201. Springer, 504–529.Google Scholar
- M. Fiore, N. Gambino, M. Hyland, and G. Winskel. 2008. The Cartesian Closed Bicategory of Generalised Species of Structures. J. London Math. Soc. 77, 1 (2008), 203–220.Google Scholar
Cross Ref
- Marcelo P. Fiore, Gordon D. Plotkin, and Daniele Turi. 1999. Abstract Syntax and Variable Binding. In Logic in Computer Science (LICS) 1999. IEEE Computer Society, 193–202. Google Scholar
Digital Library
- Denis Firsov and Aaron Stump. 2018. Generic Derivation of Induction for Impredicative Encodings in Cedille. In Certified Programs and Proofs (CPP) 2018, June Andronick and Amy P. Felty (Eds.). ACM, 215–227. Google Scholar
Digital Library
- Murdoch Gabbay. 2007. A General Mathematics of Names. Inf. Comput. 205, 7 (2007), 982–1011. Google Scholar
Digital Library
- Murdoch Gabbay and Andrew M. Pitts. 1999. A New Approach to Abstract Syntax Involving Binders. In Logic in Computer Science (LICS) 1999. IEEE Computer Society, 214–224. Google Scholar
Digital Library
- Murdoch Gabbay and Andrew M. Pitts. 2002. A New Approach to Abstract Syntax with Variable Binding. Formal Asp. Comput. 13, 3-5 (2002), 341–363. Google Scholar
Digital Library
- Nicola Gambino and Martin Hyland. 2003. Wellfounded Trees and Dependent Polynomial Functors. In Types for Proofs and Programs (TYPES) 2003, Stefano Berardi, Mario Coppo, and Ferruccio Damiani (Eds.). LNCS, Vol. 3085. Springer, 210–225.Google Scholar
- Neil Ghani, Patricia Johann, and Clément Fumex. 2013. Indexed Induction and Coinduction, Fibrationally. Logical Methods in Computer Science 9, 3 (2013).Google Scholar
- Neil Ghani, Tarmo Uustalu, and Makoto Hamana. 2006. Explicit Substitutions and Higher-Order Syntax. Higher-Order and Symbolic Computation 19, 2-3 (2006), 263–282. Google Scholar
Digital Library
- Lorenzo Gheri and Andrei Popescu. 2017. A Formalized General Theory of Syntax with Bindings. In Interactive Theorem Proving (ITP) 2017, Mauricio Ayala-Rincón and César A. Muñoz (Eds.). LNCS, Vol. 10499. Springer, 241–261.Google Scholar
Cross Ref
- M. J. C. Gordon and T. F. Melham (Eds.). 1993. Introduction to HOL: A Theorem Proving Environment for Higher Order Logic. Cambridge University Press. Google Scholar
Digital Library
- Elsa L. Gunter, Christopher J. Osborn, and Andrei Popescu. 2009. Theory Support for Weak Higher Order Abstract Syntax in Isabelle/HOL. In Logical Frameworks and Meta-Languages: Theory and Practice (LFMTP) 2009, James Cheney and Amy P. Felty (Eds.). ACM, 12–20. Google Scholar
Digital Library
- Robert Harper, Furio Honsell, and Gordon D. Plotkin. 1987. A Framework for Defining Logics. In Logic in Computer Science (LICS) 1987. IEEE Computer Society, 194–204.Google Scholar
- Matthew Hennessy and Robin Milner. 1980. On Observing Nondeterminism and Concurrency. In International Colloquium on Automata, Languages, and Programming (ICALP) 1980, J. W. de Bakker and Jan van Leeuwen (Eds.). LNCS, Vol. 85. Springer, 299–309. Google Scholar
Digital Library
- Ulrich Hensel and Bart Jacobs. 1997. Proof Principles for Datatypes with Iterated Recursion. In Category Theory and Computer Science 1997, Eugenio Moggi and Giuseppe Rosolini (Eds.). LNCS, Vol. 1290. Springer, 220–241. Google Scholar
Digital Library
- André Hirschowitz and Marco Maggesi. 2012. Initial Semantics for Strengthened Signatures. In Fixed Points in Computer Science (FICS) 2012, Dale Miller and Zoltán Ésik (Eds.). EPTCS, Vol. 77. 31–38.Google Scholar
- Martin Hofmann. 1999. Semantical Analysis of Higher-Order Abstract Syntax. In Logic in Computer Science (LICS) 1999. IEEE Computer Society, 204–213. Google Scholar
Digital Library
- Paul F. Hoogendijk and Oege de Moor. 2000. Container Types Categorically. J. Funct. Program. 10, 2 (2000), 191–225. Google Scholar
Digital Library
- Gérard P. Huet and Bernard Lang. 1978. Proving and Applying Program Transformations Expressed with Second-Order Patterns. Acta Inf. 11 (1978), 31–55. Google Scholar
Digital Library
- Felix Joachimski. 2001. Reduction Properties of ΠIE-Systems. Ph.D. Dissertation. LMU München.Google Scholar
- P. T. Johnstone. 1983. Quotients of Decidable Objects in a Topos. Math. Proc. Cambridge Philosophical Society 93 (1983), 409–419.Google Scholar
Cross Ref
- André Joyal. 1981. Une théorie combinatoire des séries formelles. Adv. Math. 42 (1981), 1–82.Google Scholar
Cross Ref
- André Joyal. 1986. Foncteurs analytiques et espèces de structures. In Combinatoire Énumérative. LNM, Vol. 1234. Springer, 126–159.Google Scholar
- Jonas Kaiser, Brigitte Pientka, and Gert Smolka. 2017. Relating System F and λ2: A Case Study in Coq, Abella and Beluga. In Formal Structures for Computation and Deduction (FSCD) 2017, Dale Miller (Ed.). LIPIcs, Vol. 84. Schloss Dagstuhl—Leibniz-Zentrum fuer Informatik, 21:1–21:19.Google Scholar
- H. Jerome Keisler. 1971. Model Theory for Infinitary Logic: Logic with Countable Conjunctions and Finite Quantifiers. Studies in Logic and the Foundations of Mathematics, Vol. 62. North Holland.Google Scholar
- Richard Kennaway, Jan Willem Klop, M. Ronan Sleep, and Fer-Jan de Vries. 1997. Infinitary Lambda Calculus. Theor. Comput. Sci. 175, 1 (1997), 93–125. Google Scholar
Digital Library
- Steven Keuchel and Johan Jeuring. 2012. Generic Conversions of Abstract Syntax Representations. In Workshop on Generic Programming 2012, Andres Löh and Ronald Garcia (Eds.). ACM, 57–68. Google Scholar
Digital Library
- Steven Keuchel, Stephanie Weirich, and Tom Schrijvers. 2016. Needle & Knot: Binder Boilerplate Tied Up. In European Symposium on Programming (ESOP) 2016, Peter Thiemann (Ed.). LNCS, Vol. 9632. Springer, 419–445.Google Scholar
- Joachim Kock. 2012. Data Types with Symmetries and Polynomial Functors over Groupoids. Electr. Notes Theor. Comput. Sci. 286 (2012), 351–365. Google Scholar
Digital Library
- Ondřej Kunčar and Andrei Popescu. 2018. Safety and Conservativity of Definitions in HOL and Isabelle/HOL. Proc. ACM Program. Lang. 2, Principles of Programming Languages (POPL) (2018), 24:1–24:26. Google Scholar
Digital Library
- Alexander Kurz, Daniela Petrisan, Paula Severi, and Fer-Jan de Vries. 2012. An Alpha-Corecursion Principle for the Infinitary Lambda Calculus. In Coalgebraic Methods in Computer Science (CMCS) 2012, Dirk Pattinson and Lutz Schröder (Eds.). LNCS, Vol. 7399. Springer, 130–149.Google Scholar
Cross Ref
- Alexander Kurz, Daniela Petrisan, Paula Severi, and Fer-Jan de Vries. 2013. Nominal Coalgebraic Data Types with Applications to Lambda Calculus. Logical Methods in Computer Science 9, 4 (2013).Google Scholar
- Gyesik Lee, Bruno C. d. S. Oliveira, Sungkeun Cho, and Kwangkeun Yi. 2012. GMeta: A Generic Formal Metatheory Framework for First-Order Representations. In European Symposium on Programming (ESOP) 2012, Helmut Seidl (Ed.). LNCS, Vol. 7211. Springer, 436–455. Google Scholar
Digital Library
- Pierre Lescanne and Jocelyne Rouyer-Degli. 1995. Explicit Substitutions with de Bruijn’s Levels. In Rewriting Techniques and Applications (RTA) 1995, Jieh Hsiang (Ed.). LNCS, Vol. 914. Springer, 294–308. Google Scholar
Digital Library
- Daniel R. Licata and Robert Harper. 2009. A Universe of Binding and Computation. In International Conference on Functional Programming (ICFP) 2009, Graham Hutton and Andrew P. Tolmach (Eds.). ACM, 123–134. Google Scholar
Digital Library
- Michael Makkai and Robert Paré. 1990. Accessible Categories: The Foundations of Categorical Model Theory. Contemporary Mathematics, Vol. 104. American Mathematical Society.Google Scholar
- Ralph Matthes and Tarmo Uustalu. 2004. Substitution in Non-Wellfounded Syntax with Variable Binding. Theor. Comput. Sci. 327, 1-2 (2004), 155–174. Google Scholar
Digital Library
- Conor McBride. 2004. Epigram: Practical Programming with Dependent Types. In Advanced Functional Programming 2004, Varmo Vene and Tarmo Uustalu (Eds.). LNCS, Vol. 3622. Springer, 130–170. Google Scholar
Digital Library
- Robin Milner. 1978. A Theory of Type Polymorphism in Programming. J. Comput. Syst. Sci. 17, 3 (1978), 348–375.Google Scholar
Cross Ref
- Robin Milner. 1989. Communication and Concurrency. Prentice Hall. Google Scholar
Digital Library
- Robin Milner. 1999. Communicating and Mobile Systems: The π -Calculus. Cambridge University Press. Google Scholar
Digital Library
- Peter Morris, Thorsten Altenkirch, and Neil Ghani. 2009. A Universe of Strictly Positive Families. Int. J. Found. Comput. Sci. 20, 1 (2009), 83–107.Google Scholar
Cross Ref
- Bengt Nordström, Kent Petersson, and Jan M. Smith. 1990. Programming in Martin-Löf’s Type Theory: An Introduction. Oxford University Press.Google Scholar
Digital Library
- Michael Norrish. 2004. Recursive Function Definition for Types with Binders. In Theorem Proving in Higher Order Logics (TPHOLs) 2004, Konrad Slind, Annette Bunker, and Ganesh Gopalakrishnan (Eds.). LNCS, Vol. 3223. Springer, 241–256.Google Scholar
Cross Ref
- Lawrence C. Paulson. 1989. The Foundation of a Generic Theorem Prover. J. Autom. Reasoning 5, 3 (1989), 363–397. Google Scholar
Digital Library
- Frank Pfenning and Conal Elliott. 1988. Higher-Order Abstract Syntax. In Programming Language Design and Implementation (PLDI) 1988, Richard L. Wexelblat (Ed.). ACM, 199–208. Google Scholar
Digital Library
- Frank Pfenning and Carsten Schürmann. 1999. System Description: Twelf—A Meta-Logical Framework for Deductive Systems. In Conference on Automated Deduction (CADE) 1999, Harald Ganzinger (Ed.). LNCS, Vol. 1632. Springer, 202–206. Google Scholar
Digital Library
- Brigitte Pientka. 2010. Beluga: Programming with Dependent Types, Contextual Data, and Contexts. In Functional and Logic Programming (FLOPS) 2010, Matthias Blume, Naoki Kobayashi, and Germán Vidal (Eds.). LNCS, Vol. 6009. Springer, 1–12. Google Scholar
Digital Library
- Benjamin C. Pierce. 2002. Types and Programming Languages. MIT Press. Google Scholar
Digital Library
- A. Pitts. 1993. In Introduction to HOL: A Theorem Proving Environment for Higher Order Logic. Cambridge University Press, Chapter The HOL Logic, 191–232.Google Scholar
- Andrew M. Pitts. 2003. Nominal Logic, a First Order Theory of Names and Binding. Inf. Comput. 186, 2 (2003), 165–193. Google Scholar
Digital Library
- Andrew M. Pitts. 2006. Alpha-Structural Recursion and Induction. J. ACM 53, 3 (2006), 459–506. Google Scholar
Digital Library
- Andrei Popescu, Elsa L. Gunter, and Christopher J. Osborn. 2010. Strong Normalization for System F by HOAS on Top of FOAS. In Logic in Computer Science (LICS) 2010. IEEE Computer Society, 31–40. Google Scholar
Digital Library
- Adam Poswolsky and Carsten Schürmann. 2009. System Description: Delphin—A Functional Programming Language for Deductive Systems. Electr. Notes Theor. Comput. Sci. 228 (2009), 113–120. Google Scholar
Digital Library
- François Pottier. 2006. An Overview of C α ml. Electr. Notes Theor. Comput. Sci. 148, 2 (2006), 27–52.Google Scholar
Digital Library
- Jan J. M. M. Rutten. 1998. Relators and Metric Bisimulations. Electr. Notes Theor. Comput. Sci. 11 (1998), 252–258. Google Scholar
Digital Library
- Steven Schäfer, Tobias Tebbi, and Gert Smolka. 2015. Autosubst: Reasoning with de Bruijn Terms and Parallel Substitutions. In Interactive Theorem Proving (ITP) 2015, Christian Urban and Xingyuan Zhang (Eds.). LNCS, Vol. 9236. Springer, 359–374.Google Scholar
- Carsten Schürmann, Joëlle Despeyroux, and Frank Pfenning. 2001. Primitive Recursion for Higher-Order Abstract Syntax. Theor. Comput. Sci. 266, 1-2 (2001), 1–57. Google Scholar
Digital Library
- Peter Sewell, Francesco Zappa Nardelli, Scott Owens, Gilles Peskine, Thomas Ridge, Susmit Sarkar, and Rok Strniša. 2010. Ott: Effective Tool Support for the Working Semanticist. J. Funct. Program. 20, 1 (2010), 71–122. Google Scholar
Digital Library
- Sam Staton. 2007. Name-Passing Process Calculi: Operational Models and Structural Operational Semantics. Technical Report UCAM-CL-TR-688. University of Cambridge, Computer Laboratory. https://www.cl.cam.ac.uk/techreports/ UCAM- CL- TR- 688.pdfGoogle Scholar
- Dmitriy Traytel, Andrei Popescu, and Jasmin Christian Blanchette. 2012. Foundational, Compositional (Co)datatypes for Higher-Order Logic: Category Theory Applied to Theorem Proving. In Logic in Computer Science (LICS) 2012. IEEE Computer Society, 596–605. Google Scholar
Digital Library
- Christian Urban and Stefan Berghofer. 2006. A Recursion Combinator for Nominal Datatypes Implemented in Isabelle/HOL. In International Joint Conference on Automated Reasoning (IJCAR) 2006, Ulrich Furbach and Natarajan Shankar (Eds.). LNCS, Vol. 4130. Springer, 498–512. Google Scholar
Digital Library
- Christian Urban, Stefan Berghofer, and Michael Norrish. 2007. Barendregt’s Variable Convention in Rule Inductions. In Conference on Automated Deduction (CADE) 2007, Frank Pfenning (Ed.). LNCS, Vol. 4603. Springer, 35–50. Google Scholar
Digital Library
- Christian Urban and Cezary Kaliszyk. 2012. General Bindings and Alpha-Equivalence in Nominal Isabelle. Logical Methods in Computer Science 8, 2 (2012).Google Scholar
- Christian Urban and Christine Tasson. 2005. Nominal Techniques in Isabelle/HOL. In Conference on Automated Deduction (CADE) 2005, Robert Nieuwenhuis (Ed.). LNCS, Vol. 3632. Springer, 38–53. Google Scholar
Digital Library
- Hendrik van Antwerpen, Pierre Neron, Andrew P. Tolmach, Eelco Visser, and Guido Wachsmuth. 2016. A Constraint Language for Static Semantic Analysis Based on Scope Graphs. In Partial Evaluation and Program Manipulation (PEPM) 2016, Martin Erwig and Tiark Rompf (Eds.). ACM, 49–60. Google Scholar
Digital Library
- Stephanie Weirich, Brent A. Yorgey, and Tim Sheard. 2011. Binders Unbound. In International Conference on Functional Programming (ICFP) 2011, Manuel M. T. Chakravarty, Zhenjiang Hu, and Olivier Danvy (Eds.). ACM, 333–345. Google Scholar
Digital Library
- Brent Abraham Yorgey. 2014. Combinatorial Species and Labelled Structures. Ph.D. Dissertation. University of Pennsylvania.Google Scholar
Index Terms
Bindings as bounded natural functors
Recommendations
Soundness and Completeness Proofs by Coinductive Methods
We show how codatatypes can be employed to produce compact, high-level proofs of key results in logic: the soundness and completeness of proof systems for variations of first-order logic. For the classical completeness result, we first establish an ...
Psi-Calculi in Isabelle
This paper presents a mechanisation of psi-calculi, a parametric framework for modelling various dialects of process calculi including (but not limited to) the pi-calculus, the applied pi-calculus, and the spi calculus. psi-calculi are significantly ...
Recursion principles for syntax with bindings and substitution
ICFP '11We characterize the data type of terms with bindings, freshness and substitution, as an initial model in a suitable Horn theory. This characterization yields a convenient recursive definition principle, which we have formalized in Isabelle/HOL and ...






Comments