Hostname: page-component-cd9895bd7-gbm5v Total loading time: 0 Render date: 2024-12-26T09:47:32.813Z Has data issue: false hasContentIssue false

Two-level nominal sets and semantic nominal terms: an extension of nominal set theory for handling meta-variables

Published online by Cambridge University Press:  27 May 2011

MURDOCH J. GABBAY*
Affiliation:
School of Mathematical and Computer Sciences, Heriot-Watt University, Edinburgh, Scotland

Abstract

Nominal sets are a sets-based first-order denotation for variables in logic and programming. In this paper we extend nominal sets to two-level nominal sets. These preserve much of the behaviour of nominal sets, including notions of variable and abstraction, but they include a denotation for both variables and meta-variables. Meta-variables are interpreted as infinite lists of distinct variable symbols. We use two-level sets to define, amongst other things, a denotation for meta-variable abstraction, and nominal style datatypes of syntax-with-binding with meta-variables. We discuss the connections between this and nominal terms and prove a soundness result.

Type
Paper
Copyright
Copyright © Cambridge University Press 2011

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

References

Bognar, M. (2002) Contexts in Lambda Calculus, Ph.D. thesis, Vrije Universiteit Amsterdam.Google Scholar
Cardelli, L., Gardner, P. and Ghelli, G. (2003) Manipulating trees with hidden labels. In: FoSSaCS 2003 216–232.CrossRefGoogle Scholar
Cheney, J. (2006) Completeness and Herbrand theorems for nominal logic. Journal of Symbolic Logic 71 299320.CrossRefGoogle Scholar
Cheney, J. and Urban, C. (2008) Nominal logic programming. ACM Transactions on Programming Languages and Systems (TOPLAS) 30 (5)147.CrossRefGoogle Scholar
de Bruijn, N. G. (1972) Lambda calculus notation with nameless dummies, a tool for automatic formula manipulation, with application to the Church–Rosser theorem. Indagationes Mathematicae 5 (34)381392.CrossRefGoogle Scholar
Dowek, G. and Gabbay, M. J. (2010) Permissive Nominal Logic. In Principles and Practice of Declarative Programming, 12th International ACM SIGPLAN Symposium (PPDP 2010), ACM.Google Scholar
Dowek, G., Hardin, T. and Kirchner, C. (2002) Binding logic: Proofs and models. In: Baaz, M. and Voronkov, A. (eds.) Proceedings of the 9th International Conference on Logic for Programming, Artificial Intelligence and Reasoning (LPAR 2002). Springer-Verlag Lecture Notes in Computer Science 2514 130144.CrossRefGoogle Scholar
Dowek, G., Gabbay, M. J. and Mulligan, D. P. (2009) Permissive Nominal Terms and their Unification. In: Proceedings of the 24th Italian Conference on Computational Logic (CILC'09).Google Scholar
Dowek, G., Gabbay, M. J. and Mulligan, D. P. (2010) Permissive Nominal Terms and their Unification: an infinite, co-infinite approach to nominal techniques. Logic Journal of the IGPL 18 (6)769822.CrossRefGoogle Scholar
Fernández, M. and Gabbay, M. J. (2007) Nominal rewriting. Information and Computation 205 (6)917965.CrossRefGoogle Scholar
Fine, K. (1985) Reasoning with Arbitrary Objects, Blackwell.Google Scholar
Fiore, M. and Hur, C.-K. (2008) Term equational systems and logics. Electronic Notes in Theoretical Computer Science 218 171192.CrossRefGoogle Scholar
Fiore, M. P., Plotkin, G. D. and Turi, D. (1999) Abstract syntax and variable binding. In: Proceedings of the 14th IEEE Symposium on Logic in Computer Science (LICS 1999), IEEE Computer Society Press 193202.Google Scholar
Gabbay, M. J. (2001) A Theory of Inductive Definitions with alpha-Equivalence, Ph.D. thesis, University of Cambridge. (Available at http://www.gabbay.org.uk/papers.html#thesis.)Google Scholar
Gabbay, M. J. (2002) FM-HOL, a higher-order theory of names. In: Kamareddine, F. (ed.) 35 Years of Automath. (Available at http://www.gabbay.org.uk/paper.html#fmhotn.)Google Scholar
Gabbay, M. J. (2007) A General Mathematics of Names. Information and Computation 205 (7)9821011.CrossRefGoogle Scholar
Gabbay, M. J. (2009) A study of substitution, using nominal techniques and Fraenkel–Mostowski sets. Theoretical Computer Science 410 (12-13)11591189.CrossRefGoogle Scholar
Gabbay, M. J. (2010a) Meta-variables as infinite lists: computational properties in nominal unification and rewriting. (Available at http://www.gabbay.org.uk/papers.html#metvil.)Google Scholar
Gabbay, M. J. (2010b) Permissive-nominal algebra with infinite name-restriction, using semantic-nominal terms. (Available at http://www.gabbay.org.uk/papers.html#pernai.)Google Scholar
Gabbay, M. J. (2011) Foundations of nominal techniques: logic and semantics of variables in abstract syntax. Bulletin of Symbolic Logic (In Press). (Available at http://www.gabbay.org.uk/papers.html#fountl.)CrossRefGoogle Scholar
Gabbay, M. J. and Lengrand, S. (2008) The lambda-context calculus. Electronic Notes in Theoretical Computer Science 196 1935.CrossRefGoogle Scholar
Gabbay, M. J. and Mathijssen, A. (2006) Capture-avoiding Substitution as a Nominal Algebra. In: Barkaoui, K., Cavalcanti, A. and Cerone, A. (eds.) ICTAC 2006: Theoretical Aspects of Computing. Springer-Verlag Lecture Notes in Computer Science 4281 198212.CrossRefGoogle Scholar
Gabbay, M. J. and Mathijssen, A. (2008a) Capture-Avoiding Substitution as a Nominal Algebra. Formal Aspects of Computing 20 (4-5)451479.CrossRefGoogle Scholar
Murdoch, J. Gabbay and Mathijssen, Aad (2008b) One-and-a-halfth-order Logic. Journal of Logic and Computation 18 (4)521562.Google Scholar
Gabbay, M. J. and Mathijssen, A. (2009) Nominal universal algebra: equational logic with names and binding. Journal of Logic and Computation 19 (6)14551508.CrossRefGoogle Scholar
Gabbay, M. J. and Mathijssen, A. (2010) A nominal axiomatisation of the lambda-calculus. Journal of Logic and Computation 20 (2)501531.CrossRefGoogle Scholar
Gabbay, M. J. and Mulligan, D. P. (2009a) Semantic nominal terms. In: TAASN 2009. (Available at http://www.gabbay.org.uk/papers.html#semnt.)Google Scholar
Gabbay, M. J. and Mulligan, D. P. (2009b) Two-level lambda-calculus. In: Proceedings of the 17th International Workshop on Functional and (Constraint) Logic Programming (WFLP 2008). Electronic Notes in Theoretical Computer Science 246 107129.CrossRefGoogle Scholar
Gabbay, M. J. and Pitts, A. M. (1999) A New Approach to Abstract Syntax Involving Binders. In: Proceedings of the 14th Annual Symposium on Logic in Computer Science (LICS 1999), IEEE Computer Society Press 214224.Google Scholar
Gabbay, M. J. and Pitts, A. M. (2001) A New Approach to Abstract Syntax with Variable Binding. Formal Aspects of Computing 13 (3-5)341363.CrossRefGoogle Scholar
Gacek, A., Miller, D. and Nadathur, G. (2009) A two-level logic approach to reasoning about computations.Google Scholar
Hendriks, D. and van Oostrom, V. (2003) λ. In: CADE 136–150. (The title of this paper is also commonly spelled out as Adbmal.)CrossRefGoogle Scholar
Henkin, L., Monk, J. D. and Tarski, A. (1971) Cylindric Algebras, Part I, North Holland.Google Scholar
Henkin, L., Monk, J. D. and Tarski, A. (1985) Cylindric Algebras, Part II, North Holland.Google Scholar
Hindley, J. R. and Seldin, J. P. (2008) Lambda-Calculus and Combinators, An Introduction, 2nd editionCambridge University Press.CrossRefGoogle Scholar
Jojgov, G. I. (2002) Holes with binding power. In: Geuvers, H. and Wiedijk, F. (eds.) Types for Proofs and Programs: Proceedings TYPES 2002. Springer-Verlag Lecture Notes in Computer Science 2646 162181.CrossRefGoogle Scholar
Levy, J. and Villaret, M. (2008) Nominal unification from a higher-order perspective. In: Voronkov, A. (ed.) Rewriting Techniques and Applications: Proceedings of RTA 2008. Springer-Verlag Lecture Notes in Computer Science 5117.CrossRefGoogle Scholar
Manzonetto, G. and Salibra, A. (2010) Applying universal algebra to lambda calculus. Journal of Logic and computation 20 (4)877915.CrossRefGoogle Scholar
McBride, C. (1999) Dependently Typed Functional Programs and their Proofs, Ph.D. thesis, University of Edinburgh.Google Scholar
Moggi, E., Taha, W., Benaissa, Z.-E.-A. and Sheard, T. (1999) An idealized MetaML: Simpler and more expressive. In: Swierstra, S. D (ed.) Programming Languages and Systems: Proceedings of the 8th European Symposium on Programming Languages and Systems (ESOP'99). Springer-Verlag Lecture Notes in Computer Science 1576 193207.CrossRefGoogle Scholar
Mulligan, D. P. (2009) Implementation of permissive nominal terms. (Available at http://www2.macs.hw.ac.uk/~dpm8/permissive/perm.htm.)Google Scholar
Muñoz, C. (1997) A calculus of substitutions for incomplete-proof representation in type theory. Technical Report 3309, INRIA.Google Scholar
Nanevski, A., Pfenning, F. and Pientka, B. (2008) Contextual modal type theory. ACM Transactions on Computational Logic (TOCL) 9 (3).CrossRefGoogle Scholar
Paulson, L. C. (1990) Isabelle: the next 700 theorem provers. In: Odifreddi, P. (ed.) Logic and Computer Science, Academic Press 361386.Google Scholar
Pitts, A. M. (2003) Nominal logic, a first order theory of names and binding. Information and Computation 186 (2)165193.CrossRefGoogle Scholar
Sato, M., Sakurai, T., Kameyama, Y. and Igarashi, A. (2003) Calculi of meta-variables. In: Baaz, M. and Makowsky, J. A. (eds.) Computer Science Logic: Proceedings CSL 2003. Springer-Verlag Lecture Notes in Computer Science 2803 484497.CrossRefGoogle Scholar
Sun, Y. (1999) An algebraic generalization of Frege structures – binding algebras. Theoretical Computer Science 211 189232.CrossRefGoogle Scholar
Talcott, C. (1993) A theory of binding structures and applications to rewriting. Theoretical computer science 112 (1)99143.CrossRefGoogle Scholar
Tiu, A. (2007) A logic for reasoning about generic judgments. Electronic Notes in Theoretical Computer Science 174 (5)318.CrossRefGoogle Scholar
Tzevelekos, N. (2007) Full abstraction for nominal general references. In: Proceedings of the 22nd IEEE Symposium on Logic in Computer Science (LICS 2007), IEEE Computer Society Press 399410.Google Scholar
Urban, C., Pitts, A. M. and Gabbay, M. J. (2003) Nominal Unification. In: Baaz, M. and Makowsky, J. A. (eds.) Computer Science Logic: Proceedings CSL 2003. Springer-Verlag Lecture Notes in Computer Science 2803 513527.CrossRefGoogle Scholar
Urban, C., Pitts, A. M. and Gabbay, M. J. (2004) Nominal Unification. Theoretical Computer Science 323 (1-3)473497.CrossRefGoogle Scholar
Wirth, C.-P. (2004) Descente infinie + Deduction. Logic Journal of the IGPL 12 (1)196.CrossRefGoogle Scholar