Nominal Terms and Nominal Logics: From Foundations to Meta-mathematics

• Chapter
• First Online:

Part of the book series: Handbook of Philosophical Logic ((HALO,volume 17))

• 1319 Accesses

Abstract

Nominal techniques concern the study of names using mathematical semantics. Whereas in much previous work names in abstract syntax were studied, here we will study them in meta-mathematics. More specifically, we survey the application of nominal techniques to languages for unification, rewriting, algebra, and first-order logic.What characterises the languages of this chapter is that they are first-order in character, and yet they can specify and reason on names. In the languages we develop, it will be fairly straightforward to give first-order ‘nominal’ axiomatisations of name-related things like alpha-equivalence, capture-avoiding substitution, beta- and eta-equivalence, first-order logic with its quantifiers—and as we shall see, also arithmetic. The formal axiomatisations we arrive at will closely resemble ‘natural behaviour’; the specifications we see typically written out in normal mathematical usage.This is possible because of a novel name-carrying semantics in nominal sets, through which our languages will have name-permutations and term-formers that can bind as primitive built-in features.This chapter draws together material from several papers to deliver a coherent account of a journey from the foundations of a mathematics with names, via logical systems based on those foundations, to concrete applications in axiomatising systems with binding. Definitions and proofs have been improved, generalised, and shortened, and placed into an overall narrative.On the way we touch on a variety of definitions and results. These include: the nominal unification algorithm; nominal rewriting and its confluence proofs; nominal algebra, its soundness, completeness, and an HSP theorem; permissive-nominal logic and its soundness and completeness; various axiomatisations with pointers to proofs of their correctness; and we conclude with a case study stating and proving correct a finite first-order axiomatisation of arithmetic in permissive-nominal logic.

This is a preview of subscription content, log in via an institution to check access.

Subscribe and save

Springer+ Basic
\$34.99 /Month
• Get 10 units per month
• 1 Unit = 1 Article or 1 Chapter
• Cancel anytime

Chapter
USD 29.95
Price excludes VAT (USA)
• Available as PDF
• Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
• Available as EPUB and PDF
• Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
• Compact, lightweight edition
• Dispatched in 3 to 5 business days
• Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
• Durable hardcover edition
• Dispatched in 3 to 5 business days
• Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Notes

1. 1.

In other papers, such as Urban et al. (2004), permission sets are presented instead as syntactic freshness assumptions.

2. 2.

The development here is a little different from that in Dowek et al. (2010) because we take permission sets to be sets of the form $$\pi \cdot {\mathbb{A}}^{<}$$ instead of sets of the form $$({\mathbb{A}}^{<} \setminus A) \cup B$$.

3. 3.

This example modified from an example by Bartek Klin; private communication from Alexander Kurz.

4. 4.

If all permutations in $$\mathbb{P}$$ are finite then we have as a Technical Lemma that the existence of some supporting set implies the existence of a unique least small supporting set.

In the more general case where infinite permutations are allowed, it is possible to construct a set with a permutation action X and x ∈ | X | such that x has a supporting set but does not have a unique least small supporting set. See (Gabbay 2007b, Lemma 21) for an example.

An intermediate state is to admit infinite permutations but restrict the notion of support to consider only the finite ones. We do this in Definitions 3.1 and 3.2 and Remark 3.3 of Dowek and Gabbay (2012a).

For this paper, none of this will matter directly.

5. 5.

Using possibly repeated powersets, arbitrarily complex structures may be constructed. Thus this example guarantees an inexhaustible supply of arbitrarily large and complex structures with which to model …almost anything we can imagine. The survey Gabbay (2011b) explores this in detail.

6. 6.

For clarity, note that we intend this set to not have a permutation action. Or, we can take this to be a nominal set with the trivial action (Definition 2.24). We have in mind $$\mathbb{N}$$.

7. 7.

Details of how induction on nominal abstract syntax allows us to α-convert and make freshness assumptions, are the topic of Gabbay (2011b). A less fancy proof of both implications by a standard induction—so not this new-fangled nominal nonsense—on terms not quotiented by α-equivalence, is in Appendix A of Dowek et al. (2010), proof of Lemma 4.15 on page 50. We leave it to the reader to judge which is the nicer proof.

8. 8.

Taking the inverse here saves writing -1 quite so many times in Definition 2.87, and is harmless since permutations are invertible.

9. 9.

We write typewriter font to avoid confusion between the symbols used in Urban et al. (2004) (which have no support) and the elements $$X \in \mathcal{X}$$ used in this paper (which do have support). To see how to travel between these two worlds see part 2 of Example 2.45, or Dowek et al. (2010).

10. 10.

The specific choice does not matter. Intuitively this is because permutations are invertible so any one choice and be undone and redone at will. A more formal statement of this is Theorem 2.112. For an example of a shift-permutation concretely constructed, see Definition 2.87.

This algorithm generates shifts just like in Urban et al. (2004) we generated freshness conditions, and for the same reason.

11. 11.

We do not make this formal, but since constants are structurally just like unknowns the definitions can easily be constructed by proceeding exactly as we did when we defined substitution for unknowns.

12. 12.

There is a deeper reason for this: they are also closed. See Example 2.164 and Theorem 2.165.

13. 13.

The interested reader can begin by comparing our notion of closed terms in Definition 2.159, based on two simpler inductive definitions, with that used in (Fernández and Gabbay 2007, Definition 68), based on a renamed variant of a term and an equality derivable in an extended freshness context. See also an inductive characterisation of closed terms in unpublished notes Clouston (2007).

14. 14.

In words: ‘a is fresh for x if for some/any fresh b, (b a) ⋅x = x’ and ‘for some/any fresh b, [b](b a) ⋅x = [a]x’.

15. 15.

In Gabbay and Mathijssen (2009) to build the free term model we enriched syntax with n-ary term-formers applied to atoms. This idea goes back to a completeness proof in Gabbay (2007a).

16. 16.

That is:

• $${a}^{\mathcal{X}} = {a}^{\mathcal{Y}}$$ for every atom a.

• $${(x_{1},\ldots,x_{n})}^{\mathcal{X}} = {(x_{1},\ldots,x_{n})}^{\mathcal{Y}}$$ for every $$x_{1} \in \vert {[[\alpha _{1}]]}^{\mathcal{X}}\vert$$, …, $$x_{n} \in \vert {[[\alpha _{n}]]}^{\mathcal{Y}}\vert$$.

• $${[a]}^{\mathcal{X}}x = {[a]}^{\mathcal{Y}}x$$ for every $$x \in \vert {[[\alpha ]]}^{\mathcal{X}}\vert$$.

• For every term-former f in $$\mathcal{F}$$, $${\mathsf{f}}^{\mathcal{X}}(x) ={ \mathsf{f}}^{\mathcal{Y}}(x)$$ for every $$x \in \vert {[[\alpha ]]}^{\mathcal{X}}\vert$$ where ar(f) = (α)τ.

17. 17.

The reader who would answer ‘Can you pass the salt?’ with ‘Yes.’ should note that we have to adjust ar to remove $$\mathcal{P}$$ and add $$\mathcal{X}$$ mapping X to α where (π, X α ) ∈ X.

18. 18.

For instance, in permissive-nominal sets it is possible represent a well-order of each permission set, but not to represent a well-ordering of the set of all atoms (which is a limit of permission sets). This is also the feature which Fraenkel and Mostowksi used to prove the independence of the axiom of choice from the other axioms of set theory.

19. 19.

Essentially, Gabbay and Pitts (2001) is the first third of the author’s thesis; Pitts (2003) is the same but minus the cumulative sets hierarchy; and Urban (2008) is an extensive implementation in higher-order logic, with a library of powerful macros. One reason this is non-trivial has to do with automatically deriving the equivariance properties described e.g. in (Gabbay, 2011b, Section 4.2).

20. 20.

Sometimes, authors write ‘nominal logic’ for that logic obtained by adding for each atom a constant symbol to the syntax of first-order logic, and adding infinitely many axioms reflecting nominal sets (equalities of swapping atoms, fresh atoms, and so on). This is nominal sets wearing a ‘syntactic disguise’: consider by analogy a theory of arithmetic with a constant symbol for each number and an axiom for every arithmetic equality.

21. 21.

At the same time, Fiore Plotkin and Turi developed an approach to abstract syntax which was really exactly the same thing Fiore et al. (1999). The key difference turned out to be that nominal sets admit a relatively elementary sets-based interpretation of the presheaves. As argued in Gabbay and Hofmann (2008) there are ‘fewer presheaves’ in the nominal semantics, we feel that an elementary presentation of the mathematics—where this is possible—is a powerful advantage not just for the reader but also for the practicing theorist.

Fiore has continued this line of research in collaboration and produced logics which in some sense which has never been made formal, parallel the development here. For an example of this see Fiore and Hur (2010).

22. 22.

James Cheney, private communication.

23. 23.

Actually, this is a simplification. There is a significant difference, which is described in Fernández and Gabbay (2010): nominal rewriting does not have an explicit rule to generate fresh atoms, whereas nominal algebra does. To the level of detail we wish to go into here, this does not matter. The permissive-nominal syntax of this survey makes the issue obsolete because fresh atoms are a structural fact of the permission sets.

24. 24.

Syntactic freshness appears in this paper as a ∉ fa(r). We considered semantic freshness in Sect. 2.4.3. See also Proposition 2.201.

References

• Abadi, M., L. Cardelli, P.-L. Curien, and J.-J. Lévy. 1991. Explicit substitutions. Journal of Functional Programming 1(4):375–416.

• Baader, F., and T. Nipkow. 1998. Term rewriting and all that. Great Britain: Cambridge University Press.

• Birkhoff, G. 1935. On the structure of abstract algebras. Proceedings of the Cambridge Philosophical Society 31:433–454.

• Burris, S.N., and H.P. Sankappanavar. 1981. A course in universal algebra. In Graduate texts in mathematics. Springer: New York.

• Calvès, C. 2010. Complexity and implementation of nominal algorithms. Ph.D. thesis, King’s College London.

• Cheney, J. 2004. The complexity of equivariant unification. In Proceedings of the 31st International Colloquium on Automata, Languages and Programming (ICALP 2004), vol. 3142 of Lecture notes in computer science, 332–344. Berlin/New York: Springer.

• Cheney, J. 2005a. Relating nominal and higher-order pattern unification. In Proceedings of the 19th international workshop on Unification (UNIF 2005), 104–119. LORIA research report A05-R-022.

• Cheney, J. 2005b. A simpler proof theory for nominal logic. In FoSSaCS, vol. 3441 of Lecture notes in computer science, 379–394. Berlin/New York: Springer.

• Cheney, J. 2006. Completeness and Herbrand theorems for nominal logic. Journal of Symbolic Logic 71:299–320.

• Cheney, J. 2010, October. Equivariant unification. Journal of Automated Reasoning 45(3):267–300.

• Cheney, J., and C. Urban. 2003. System description: Alpha-Prolog, a fresh approach to logic programming modulo alpha-equivalence. In UNIF’03, 15–19. Universidad Politécnica de Valencia.

• Cheney, J., and C. Urban. 2008. Nominal logic programming. ACM Transactions on Programming Languages and Systems (TOPLAS) 30(5):1–47.

• Clouston, R. 2007. Closed terms (unpublished notes). http://users.cecs.anu.edu.au/~rclouston/closedterms.pdf.

• Clouston, R. 2009. Equational logic for names and binding. Ph.D. thesis, University of Cambridge, UK.

• Clouston, R. 2011. Nominal Lawvere theories. In Proceedings of the 18th international Workshop on Logic, Language, and Information (WoLLIC), vol. 6642 of Lecture notes in computer science. Berlin/Heidelberg/New York: Springer.

• Clouston, R.A., and A.M. Pitts. 2007. Nominal equational logic. In Computation, meaning and logic: Articles dedicated to Gordon Plotkin, vol. 172 of Electronic notes in theoretical computer science, 223–257. Amsterdam: Elsevier.

• Dershowitz, N., and J.-P. Jouannaud. 1989. Rewrite systems. In Handbook of theoretical computer science: Formal methods and semantics, vol. B, ed. J. van Leeuwen. Amsterdam/ New York/Cambridge: Elsevier and MIT Press.

• Dowek, G. 2001. Higher-order unification and matching. In Handbook of automated reasoning, 1009–1062. Amsterdam: Elsevier.

• Dowek, G. and M.J. Gabbay. 2010. http://www.gabbay.org.uk/papers.html#pernl-cvPermissive nominal logic. In Proceedings of the 12th international ACM SIGPLAN symposium on Principles and Practice of Declarative Programming (PPDP 2010), 165–176. New York: ACM Press.

• Dowek, G., and M.J. Gabbay. 2012a. http://www.gabbay.org.uk/papers.html#pernl-jvPermissive nominal logic (journal version). http://dl.acm.org/citation.cfm?doid=2287718.2287720. Transactions on Computational Logic 13(3).

• Dowek, G., and M.J. Gabbay. 2012b. http://www.gabbay.org.uk/papers.html#pnlthfPNL to HOL: from the logic of nominal sets to the logic of higher-order functions. Theoretical Computer Science 451:38–69.

• Dowek, G., M.J. Gabbay, and D.P. Mulligan. 2009. http://www.gabbay.org.uk/papers.html#perntuPermissive nominal terms and their unification. In Proceedings of the 24th Italian Conference on Computational Logic (CILC’09).

• Dowek, G., M.J. Gabbay, and D.P. Mulligan. 2010. http://www.gabbay.org.uk/papers.html#perntu-jvPermissive nominal terms and their unification: An infinite, co-infinite approach to nominal techniques (journal version). Logic Journal of the IGPL 18(6):769–822.

• Dummett, M. 1977. Elements of intuitionism, 1st ed. Oxford: Clarendon Press.

• Felleisen, M., and R. Hieb. 1992. The revised report on the syntactic theories of sequential control and state. Theoretical Computer Science 103(2):235–271.

• Fernández, M., and M.J. Gabbay. 2007. http://www.gabbay.org.uk/papers.html#nomr-jvNominal rewriting (journal version). Information and Computation 205(6):917–965.

• Fernández, M., and M.J. Gabbay. 2010. http://www.gabbay.org.uk/papers.html#clonreClosed nominal rewriting and efficiently computable nominal algebra equality. http://arxiv.org/abs/1009.2791v1. In Electronic proceedings in theoretical computer science, vol. 34, 37–51.

• Fernández, M., M.J. Gabbay, and I. Mackie. 2004. http://www.gabbay.org.uk/papers.html#nomrNominal rewriting systems. In Proceedings of the 6th ACM SIGPLAN symposium on Principles and Practice of Declarative Programming (PPDP 2004), 108–119. New York: ACM Press.

• Fiore, M., and C.-K. Hur. 2010. Second-order equational logic. In Proceedings of the 19th EACSL annual conference on Computer Science Logic (CSL 2010), Lecture notes in computer science. Berlin: Springer.

• Fiore, M.P., G.D. Plotkin, and D. Turi. 1999. Abstract syntax and variable binding. In Proceedings of the 14th IEEE symposium on Logic in Computer Science (LICS 1999), 193–202. Los Alamitos: IEEE Computer Society Press.

• Gabbay, M.J. 2001. http://www.gabbay.org.uk/papers.html#thesisA theory of inductive definitions with alpha-equivalence. Ph.D. thesis, University of Cambridge, UK.

• Gabbay, M.J. 2005. Axiomatisation of first-order logic (talk). In Second workshop on Computational Aspects of Nominal sets (CANS’05). London: King’s College.

• Gabbay, M.J. 2007a. http://www.gabbay.org.uk/papers.html#frelogFresh logic. Journal of Applied Logic 5(2):356–387.

• Gabbay, M.J. 2007b. http://www.gabbay.org.uk/papers.html#genmnA general mathematics of names. Information and Computation 205(7):982–1011.

• Gabbay, M.J. 2009. http://www.gabbay.org.uk/papers.html#nomahsNominal algebra and the HSP theorem. Journal of Logic and Computation 19(2):341–367.

• Gabbay, M. 2011a. A proof-theoretic treatment of lambda-reduction with cut-elimination: Lambda calculus as a logic programming language. Journal of Symbolic Logic 76(2):673–699.

• Gabbay, M.J. 2011b. http://www.gabbay.org.uk/papers.html#fountlFoundations of nominal techniques: Logic and semantics of variables in abstract syntax. Bulletin of Symbolic Logic 17:(2):161–229.

• Gabbay, M.J. 2011c. http://www.gabbay.org.uk/papers.html#twolnsTwo-level nominal sets and semantic nominal terms: An extension of nominal set theory for handling meta-variables. Mathematical Structures in Computer Science 21:997–1033.

• Gabbay, M.J. 2012a. http://www.gabbay.org.uk/papers.html#metvilMeta-variables as infinite lists in nominal terms unification and rewriting. Logic Journal of the IGPL 20:967–1000.

• Gabbay, M.J. 2012b. http://www.gabbay.org.uk/papers.html#uninerUnity in nominal equational reasoning: The algebra of equality on nominal sets. Journal of Applied Logic 10:199–217.

• Gabbay, M.J., and J. Cheney. 2004. http://www.gabbay.org.uk/papers.html#seqcnlA sequent calculus for nominal logic. In Proceedings of the 19th IEEE symposium on Logic in Computer Science (LICS 2004), 139–148. Los Alamitos: IEEE Computer Society.

• Gabbay, M.J., and M. Hofmann. 2008. http://www.gabbay.org.uk/papers.html#rensNominal renaming sets. In Proceedings of the 15th international conference on Logic for Programming, Artificial Intelligence, and Reasoning (LPAR 2008), 158–173. Berlin: Springer.

• Gabbay, M.J., and A. Mathijssen. 2006a. http://www.gabbay.org.uk/papers.html#capasnCapture-avoiding substitution as a nominal algebra. In ICTAC 2006: Theoretical aspects of computing, vol. 4281 of Lecture notes in computer science, 198–212. Berlin: Springer.

• Gabbay, M.J., and A. Mathijssen. 2006b. http://www.gabbay.org.uk/papers.html#noma-nwptNominal algebra. In 18th Nordic workshop on programming theory.

• Gabbay, M.J., and A. Mathijssen. 2006c. http://www.gabbay.org.uk/papers.html#oneaahOne-and-a-halfth-order logic. In Proceedings of the 8th ACM-SIGPLAN international symposium on Principles and Practice of Declarative Programming (PPDP 2006), 189–200. New York: ACM.

• Gabbay, M.J., and A. Mathijssen. 2007. http://www.gabbay.org.uk/papers.html#forcieA formal calculus for informal equality with binding. In WoLLIC’07: 14th Workshop on Logic, Language, Information and Computation, vol. 4576 of Lecture notes in computer science, 162–176. Berlin/New York: Springer.

• Gabbay, M.J., and A. Mathijssen. 2008a. http://www.gabbay.org.uk/papers.html#capasn-jvCapture-avoiding substitution as a nominal algebra. Formal Aspects of Computing 20(4-5):451–479.

• Gabbay, M.J., and A. Mathijssen. 2008b. http://www.gabbay.org.uk/papers.html#lamcnaThe lambda-calculus is nominal algebraic. In Reasoning in simple type theory: Festschrift in Honour of Peter B. Andrews on his 70th Birthday, Studies in logic and the foundations of mathematics, ed. C. Benzmüller, C. Brown, J. Siekmann, and R. Statman. London: IFCoLog.

• Gabbay, M.J., and A. Mathijssen. 2008c. http://www.gabbay.org.uk/papers.html#oneaah-jvOne-and-a-halfth-order logic. Journal of Logic and Computation 18(4):521–562.

• Gabbay, M.J., and A. Mathijssen. 2009. http://www.gabbay.org.uk/papers.html#nomuaeNominal universal algebra: Equational logic with names and binding. Journal of Logic and Computation 19(6):1455–1508.

• Gabbay, M.J., and D.P. Mulligan. 2009. http://www.gabbay.org.uk/papers/unialt.pdfUniversal algebra over lambda-terms and nominal terms: The connection in logic between nominal techniques and higher-order variables. In Proceedings of the 4th international workshop on Logical Frameworks and Meta-Languages (LFMTP 2009), 64–73. New York: ACM.

• Gabbay, M.J., and A. Mathijssen. 2010. http://www.gabbay.org.uk/papers.html#nomalcA nominal axiomatisation of the lambda-calculus. Journal of Logic and Computation 20(2):501–531.

• Gabbay, M.J., and A.M. Pitts. 1999. http://www.gabbay.org.uk/papers.html#newaasA new approach to abstract syntax involving binders. In Proceedings of the 14th annual symposium on Logic in Computer Science (LICS 1999), 214–224. Los Alamitos: IEEE Computer Society Press.

• Gabbay, M.J., and A.M. Pitts. 2001. http://www.gabbay.org.uk/papers.html#newaas-jvA new approach to abstract syntax with variable binding. Formal Aspects of Computing 13:(3–5):341–363.

• Gentzen, G. 1935. Untersuchungen über das logische Schließen [Investigations into logical deduction]. Mathematische Zeitschrift 39:176–210,405–431. Translated in Szabo (1969), pp. 68–131.

• Kurz, A., and D. Petrişan. 2010. On universal algebra over nominal sets. Mathematical Structures in Computer Science 20:285–318.

• Levy, J., and M. Villaret. 2008. Nominal unification from a higher-order perspective. In Rewriting Techniques and Applications, proceedings of RTA 2008, vol. 5117 of Lecture notes in computer science. Berlin/New York: Springer.

• Levy, J., and M. Villaret. 2010. An efficient nominal unification algorithm. In Proceedings of the 21st international conference on Rewriting Techniques and Applications (RTA 2010), vol. 6 of Leibniz International Proceedings in Informatics (LIPIcs), 209–226. Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik.

• Levy, J., and M. Villaret. 2012. Nominal unification from a higher-order perspective. Transactions on Computational logic (TOCL) 13(2):10.

• Mac Lane, S., and I. Moerdijk. 1992. Sheaves in geometry and logic: A first introduction to topos theory. Universitext. New York: Springer.

• Mathijssen, A. 2007. Logical calculi for reasoning with binding. Ph.D. thesis, Technische Universiteit Eindhoven.

• Melliès, P.-A., 1995. Typed lambda-calculi with explicit substitutions may not terminate. In Proceedings of the 2nd international conference on Typed Lambda Calculi and Applications, (TLCA 1995), vol. 902 of Lecture notes in computer science, ed. M. Dezani-Ciancaglini, and G.D. Plotkin, 328–334. Berlin/New York: Springer.

• Miller, D., G. Nadathur, F. Pfenning, and A. Scedrov. 1989. Uniform proofs as a foundation for logic programming. Technical report, Durham, NC.

• Pitts, A. 2011. Nominal sets and their applications. In Midlands Graduate School (MGS 2011). Available online at cl.cam.ac.uk/~amp12/talks/MGS2011_nominal_sets_slides.pdf.

• Pitts, A.M. 2001. Nominal logic: A first order theory of names and binding. In Proceedings of the 4th international symposium on Theoretical Aspects of Computer Software (TACS 2001), vol. 2215 of Lecture notes in computer science, ed. N. Kobayashi, and B.C. Pierce, 219–242. Berlin/New York: Springer.

• Pitts, A.M. 2003. Nominal logic, a first order theory of names and binding. Information and Computation 186(2):165–193.

• Prawitz, D. 1965. Natural deduction: A prooof-theoretical study. Stockholm: Almquist and Wiksell. Reprinted by Dover, 2006.

• Smullyan, R. 1968. First-order logic. Berlin/New York: Springer. Reprinted by Dover, 1995.

• Turner, D.C. 2009. Nominal Domain theory for concurrency. Ph.D. thesis, University of Cambridge.

• Tzevelekos, N. 2007. Full abstraction for nominal general references. In Proceedings of the 22nd IEEE symposium on Logic in Computer Science (LICS 2007), 399–410. Los Alamitos: IEEE Computer Society Press.

• Urban, C. 2008. Nominal reasoning techniques in Isabelle/HOL. Journal of Automatic Reasoning 40(4):327–356.

• Urban, C., A.M. Pitts, and M.J. Gabbay. 2003. http://www.gabbay.org.uk/papers.html#nomuNominal unification. In Proceedings of the 17th international workshop on Computer Science Logic (CSL 2003), vol. 2803 of Lecture notes in computer science, 513–527. Berlin/New York: Springer.

• Urban, C., A.M. Pitts, and M.J. Gabbay. 2004. http://www.gabbay.org.uk/papers.html#nomu-jvNominal unification. Theoretical Computer Science 323(1–3):473–497.

Authors

Appendices

A An Atlas of Nominal Languages

The reader coming to the nominal literature could be forgiven for finding it perplexing. What are ‘Fraenkel-mostowski sets’, ‘nominal sets’, ‘nominal terms’, ‘nominal logic’, ‘nominal rewriting and algebra’, ‘αProlog’, ‘nominal equational logic’, ‘permissive-nominal algebra’, ‘permissive-nominal logic’ (with/without shift-permutations)? In this Appendix we will give a brief annotated bibliography covering, loosely, the relevant publications. This list is not meant to be exhaustive.

Traditionally, nominal sets are understood as a tool for the mathematical analysis of syntax, as described for instance in the author’s previous survey/research paper Gabbay (2011b), or in slides of an excellent course of lectures by Pitts (2011). This author takes a view of nominal sets not just as a foundation for syntax with binding, but as a foundation for mathematics itself—names and binding, after all, appear everywhere. The atlas below surveys relevant publications.

For each item in the list below, we reference where the idea was introduced to the ‘nominal’ literature, and any other relevant conference and journal papers.

2.2.1 A.1 FM Set Theory (Gabbay and Pitts 1999, 2001)

Fraenkel-Mostowski set theory (FM) and nominal sets (called ‘equivariant FM sets’ in that paper) are the foundational semantics for nominal techniques.

Fraenkel-Mostowski sets were already known and had been used for other purposes; see (Gabbay, 2011b, Remark 2.22) for more detailed historical comments. Nominal sets were familiar as e.g. the Schanuel topos. So both semantics were known.

What was new to Gabbay and Pitts (2001) was the observation by the author and Pitts of the notions of support, atoms-abstraction, the self-dual behaviour of the

quantifier, and the application to what is now called nominal abstract syntax.Footnote 21

2.2.2 A.2 Nominal Logic (Pitts 2001, 2003)

The constructions of Gabbay and Pitts (2001) are repeated, but in a first-order axiomatisation of nominal sets rather than one of the FM cumulative hierarchy. Pitts also coined the catchy label ‘nominal’.

Sometimes authors identify the nominal logic of Pitts (2003) with nominal techniques in general. This is limiting, and it gets the mathematical development the wrong way round. Nominal logic is a Hilbert-style axiomatisation in first-order logic. These axioms have meaning because of the underlying nominal sets models, and not the other way around; nor does the axiomatisation per se contribute to new syntax or proof-theory with which to study names.

In order to make progress, we needed new syntax that more explicitly represents atoms and their properties.

Thus for instance the nominal logic programming developed by Cheney and Urban (2008) (also referenced below) is called logic-programming in nominal logic, but we also see from Figures 6, 7, and 8 of Cheney and Urban (2008) that the syntax and axioms used are a variant of nominal terms.

2.2.3 A.3 Proof-Theories for the -quantifier (Gabbay 2007a; Gabbay and Cheney 2004; Cheney 2005b)

Some attempts have been made to give the distinctive

-quantifier of nominal techniques, a proof-theory. In arguably increasing order of elegance these are Gabbay (2007a) (this was received by the journal in 2003 but took 4 years to get printed), Gabbay and Cheney (2004) (written with Cheney to develop on Gabbay (2007a)), and Cheney (2005b).

The permissive-nominal logic (PNL) of this survey is another item on that list, and perhaps it is one of the nicest; certainly the PNL treatment of

is very different from what has come before, see Sect. 2.4.3.1.

Complete semantics for this family of logics are in Gabbay (2007a), Cheney (2006), and in Dowek and Gabbay (2012a). See also Sect. 2.4.1.4 of this survey.

2.2.4 A.4 Nominal Terms (Urban et al. 2003, 2004)

This new syntax introduced the distinctive freshness side-conditions and the nominal terms syntax, with its separation of atoms a and unknowns X into two syntactic classes. Urban et al. (2004) is where the syntactic ideas of this survey were born, if not the specific ‘permissive’ implementation, which came later (permissive-nominal terms below).

There is now quite a substantial body of work devoted to computing efficiently on nominal terms; notably Calvès (2010), Levy and Villaret (2010). There is also a body of work devoted to translating between nominal terms and higher-order patterns Miller et al. (1989). We are far from exhaustive, but good places to start reading are Cheney (2005a), Levy and Villaret (20082012), Gabbay and Mulligan (2009), and Dowek et al. (2010).

2.2.5 A.5 Nominal Rewriting (Fernández et al. 2004; Fernández and Gabbay 2007) and αProlog (Cheney and Urban 2003, 2008)

These were the first logical languages using nominal terms as a general-purpose assertion language; nominal rewriting was designed explicitly to allow us to assert (directed) equalities between terms such as β or η-equivalence. αProlog was intended by its designers for reasoning on nominal abstract syntax, and explicitly presented as such—but in retrospect it can also be viewed as a general-purpose ‘nominal’ reasoning system in the same family as nominal rewriting and later work.Footnote 22

2.2.6 A.6 Nominal Algebra (Gabbay 2005; Gabbay and Mathijssen 2006a, 2007, 2009)

Nominal algebra is simply the undirected version of nominal rewriting.Footnote 23 What makes nominal algebra interesting above and beyond nominal rewriting is the different theorems we prove about equality instead of rewriting; for instance the HSPA theorem of Gabbay (2009) (much simplified here in Sect. 2.3.5), and various correctness results for axiomatisations of e.g. substitution, λ-calculus, and first-order logic Gabbay and Mathijssen (2006a,c2008a,b,c2010).

The paper Gabbay and Mathijssen (2006a) is where the permutative convention of Definition 2.2 was introduced, used by the author consistently since then. This comes from the author’s work formalising nominal reasoning in Isabelle in Gabbay (2001) and spares us from having to explicitly enumerate all inequalities between atoms. Thus, if pressed to be entirely formal, ‘a and b’ refers to two meta-variables ranging over distinct atoms.

Kurz and Petrişan proved an HSP theorem for nominal algebra by treating nominal algebra as a kind of many-sorted first-order logic Kurz and Petrişan (2010)—the sorts are finite sets of atoms and come from the categorical view of nominal sets as presheaves. The effect of nominal theories can thus be attained in many-sorted first-order syntax. That syntax is just standard first-order syntax is potentially a big advantage, for instance if one wants to transfer results directly from universal algebra. This offers alternative and effective methods of semantic proof; e.g. Kurz and Petrişan (2010) significantly simplifies the proofs of Gabbay (2009). We pay for this convenience with infinities; e.g. even the simplest theory is infinite since equalities are replicated at every sort. Of course, the theory may still be finitely presentable. Section 2.3.5 of the current paper contains another, further simplified, HSP proof.

2.2.7 A.7 Nominal Equational Logic (Clouston and Pitts 2007; Clouston 2011)

Call the judgement ‘a is fresh for the syntax ssyntactic freshness and ‘a is fresh for the denotation of ssemantic freshness. Nominal Equational Logic (NEL) closely resembles NA, but whereas both have a semantic equality judgement (s = t), NEL adds a semantic freshness judgement.

In Clouston and Pitts (2007) Clouston and Pitts claimed that NEL was significantly more complete than NA because of this, but they had missed that semantic freshness is expressible using equality and syntactic freshness (see for instance (Gabbay and Mathijssen 2007, Theorem 5.5) and (Gabbay and Mathijssen 2009, Lemma 4.51)).Footnote 24

Note that two distinct logics have been called NEL: one in Clouston and Pitts (2007), and one in Clouston (2011) which restricts semantic freshness to the left of the turnstile; compare Figure 5 of Clouston and Pitts (2007) with Figure 1 of Clouston (2011). Both have syntactic freshness: see the side-condition $$a\#(\bar{a},t,t^{\prime})$$ in the Atm-Intro and Atm-Elim rules of Figure 5, and similar side-conditions in Figure 1. Thus, when Clouston writes in Clouston (2011) that “[syntactic] freshness in NA is sound, but not complete, for freshness in the underlying nominal sets interpretation [semantic freshness]”, echoing similar comments in Clouston and Pitts (2007), this omits mention that NEL also has a syntactic freshness.

It is in any case a red herring. If we can choose fresh atoms and compare elements for semantic equality, then semantic freshness makes the logic ‘do equality twice’ and just adds complexity Gabbay (2012b)—without equality, the story can be different; this was encountered in the first attempt at a nominal functional programming language, in which we included freshness information in the types Gabbay (2001).

2.2.8 A.8 Permissive-Nominal Terms (Gabbay and Mulligan 2009; Dowek et al. 2009, 2010)

These simplify and improve classical nominal terms in two ways: we give explicitly the (countably infinite) atoms that may be free/are guaranteed to be fresh in every unknown, and since freshness information is stored directly we eliminate the need for freshness contexts. Thus good properties emerge: permissive-nominal terms can be constructed as nominal abstract syntax, we can directly choose a name fresh for a term (which is not possible in nominal terms without expanding the freshness context), and properties and proofs can then be expressed for terms alone, rather than for terms-in-freshness-context.

For instance, in classical nominal terms a solution of a nominal unification problem is a pair of a substitution and a freshness context; a nominal rewrite rule is a left and a right-hand side term and a freshness context; the proof-theory of nominal algebra requires an explicit freshness rule to generate fresh atoms, and so on. In fact, manipulating nominal terms almost always requires us to manipulate an external structure representing freshness constraints.

In contrast permissive terms are ‘self-sufficient’, like ordinary syntax. Proofs and algorithms have more of the look and feel of ordinary syntax. We have seen how, in the body of this survey. A detailed treatment of permissive-nominal syntax, including a simple translation from the nominal terms of Urban et al. (2004) into permissive-nominal terms, is also in Dowek et al. (2010).

2.2.9 A.9 Permissive-Nominal Algebra (Gabbay and Mulligan 2009, and Sect. 2.3.4)

The permissive-nominal algebra of Sect. 2.3.4 uses permissive-nominal terms and has a significantly different proof-theory.

The notable differences are, aside from being permissive-nominal, the inclusion (if we want them) of infinitely-supported constant symbols and of infinitely-supported permutations. So previous work is a special case of the general framework of this survey, but what we do here goes strictly beyond what was possible in previous work, also in some significant mathematical properties such as satisfying an HSP instead of an HSPA result; see the discussion opening Sect. 2.3.5.

2.2.10 A.10 Permissive-Nominal Logic (Dowek and Gabbay 2010, 2012a and Sect. 2.4.1)

As we discuss in this survey, permissive-nominal logic (PNL) adds universal quantification over unknowns X. This is non-evident for nominal terms because of their freshness contexts; in nominal terms X behaves like an element with cofinite support so we lose α-equivalence whereas in permissive-nominal terms X has coinfinite support and we can always α-rename bound atoms. We get a proof-theory which is pleasingly close to that of first-order logic, a sound and complete semantics, and we can axiomatise and prove correct a non-trivial and mathematically relevant theory, such as arithmetic.

Rights and permissions

Reprints and permissions

Cite this chapter

Gabbay, M.J. (2014). Nominal Terms and Nominal Logics: From Foundations to Meta-mathematics. In: Gabbay, D., Guenthner, F. (eds) Handbook of Philosophical Logic. Handbook of Philosophical Logic, vol 17. Springer, Dordrecht. https://doi.org/10.1007/978-94-007-6600-6_2

• DOI: https://doi.org/10.1007/978-94-007-6600-6_2

• Published:

• Publisher Name: Springer, Dordrecht

• Print ISBN: 978-94-007-6599-3

• Online ISBN: 978-94-007-6600-6