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 metamathematics. More specifically, we survey the application of nominal techniques to languages for unification, rewriting, algebra, and firstorder logic.What characterises the languages of this chapter is that they are firstorder in character, and yet they can specify and reason on names. In the languages we develop, it will be fairly straightforward to give firstorder ‘nominal’ axiomatisations of namerelated things like alphaequivalence, captureavoiding substitution, beta and etaequivalence, firstorder 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 namecarrying semantics in nominal sets, through which our languages will have namepermutations and termformers that can bind as primitive builtin 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; permissivenominal 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 firstorder axiomatisation of arithmetic in permissivenominal logic.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
 1.
In other papers, such as Urban et al. (2004), permission sets are presented instead as syntactic freshness assumptions.
 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.
This example modified from an example by Bartek Klin; private communication from Alexander Kurz.
 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.
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.
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.
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 newfangled 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.
Taking the inverse here saves writing ^{1} quite so many times in Definition 2.87, and is harmless since permutations are invertible.
 9.
 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 shiftpermutation 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.
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.
There is a deeper reason for this: they are also closed. See Example 2.164 and Theorem 2.165.
 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.
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.
 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 termformer 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.
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.
For instance, in permissivenominal sets it is possible represent a wellorder of each permission set, but not to represent a wellordering 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.
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 higherorder logic, with a library of powerful macros. One reason this is nontrivial has to do with automatically deriving the equivariance properties described e.g. in (Gabbay, 2011b, Section 4.2).
 20.
Sometimes, authors write ‘nominal logic’ for that logic obtained by adding for each atom a constant symbol to the syntax of firstorder 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.
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 setsbased 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.
James Cheney, private communication.
 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 permissivenominal syntax of this survey makes the issue obsolete because fresh atoms are a structural fact of the permission sets.
 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 higherorder pattern unification. In Proceedings of the 19th international workshop on Unification (UNIF 2005), 104–119. LORIA research report A05R022.
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: AlphaProlog, a fresh approach to logic programming modulo alphaequivalence. 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. Higherorder 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#pernlcvPermissive 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#pernljvPermissive 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 higherorder 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#perntujvPermissive nominal terms and their unification: An infinite, coinfinite 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#nomrjvNominal 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. Secondorder 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 alphaequivalence. Ph.D. thesis, University of Cambridge, UK.
Gabbay, M.J. 2005. Axiomatisation of firstorder 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 prooftheoretic treatment of lambdareduction with cutelimination: 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#twolnsTwolevel nominal sets and semantic nominal terms: An extension of nominal set theory for handling metavariables. Mathematical Structures in Computer Science 21:997–1033.
Gabbay, M.J. 2012a. http://www.gabbay.org.uk/papers.html#metvilMetavariables 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#capasnCaptureavoiding 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#nomanwptNominal algebra. In 18th Nordic workshop on programming theory.
Gabbay, M.J., and A. Mathijssen. 2006c. http://www.gabbay.org.uk/papers.html#oneaahOneandahalfthorder logic. In Proceedings of the 8th ACMSIGPLAN 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#capasnjvCaptureavoiding substitution as a nominal algebra. Formal Aspects of Computing 20(45):451–479.
Gabbay, M.J., and A. Mathijssen. 2008b. http://www.gabbay.org.uk/papers.html#lamcnaThe lambdacalculus 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#oneaahjvOneandahalfthorder 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 lambdaterms and nominal terms: The connection in logic between nominal techniques and higherorder variables. In Proceedings of the 4th international workshop on Logical Frameworks and MetaLanguages (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 lambdacalculus. 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#newaasjvA 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 higherorder 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–LeibnizZentrum fuer Informatik.
Levy, J., and M. Villaret. 2012. Nominal unification from a higherorder 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 lambdacalculi 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. DezaniCiancaglini, 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 proooftheoretical study. Stockholm: Almquist and Wiksell. Reprinted by Dover, 2006.
Shoenfield, J. 1967. Mathematical logic. Reading, MA: AddisonWesley.
Smullyan, R. 1968. Firstorder 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#nomujvNominal unification. Theoretical Computer Science 323(1–3):473–497.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Appendices
Appendix
A An Atlas of Nominal Languages
The reader coming to the nominal literature could be forgiven for finding it perplexing. What are ‘Fraenkelmostowski sets’, ‘nominal sets’, ‘nominal terms’, ‘nominal logic’, ‘nominal rewriting and algebra’, ‘αProlog’, ‘nominal equational logic’, ‘permissivenominal algebra’, ‘permissivenominal logic’ (with/without shiftpermutations)? 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)
FraenkelMostowski set theory (FM) and nominal sets (called ‘equivariant FM sets’ in that paper) are the foundational semantics for nominal techniques.
FraenkelMostowski 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, atomsabstraction, the selfdual 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 firstorder 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 Hilbertstyle axiomatisation in firstorder 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 prooftheory 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 logicprogramming 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 ProofTheories 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 prooftheory. 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 permissivenominal 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 sideconditions 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 (permissivenominal 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 higherorder patterns Miller et al. (1989). We are far from exhaustive, but good places to start reading are Cheney (2005a), Levy and Villaret (2008, 2012), 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 generalpurpose 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 generalpurpose ‘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 firstorder logic Gabbay and Mathijssen (2006a,c, 2008a,b,c, 2010).
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 metavariables ranging over distinct atoms.
Kurz and Petrişan proved an HSP theorem for nominal algebra by treating nominal algebra as a kind of manysorted firstorder 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 manysorted firstorder syntax. That syntax is just standard firstorder 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 s’ syntactic freshness and ‘a is fresh for the denotation of s’ semantic 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 sidecondition \(a\#(\bar{a},t,t^{\prime})\) in the AtmIntro and AtmElim rules of Figure 5, and similar sideconditions 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 PermissiveNominal 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: permissivenominal 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 termsinfreshnesscontext.
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 righthand side term and a freshness context; the prooftheory 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 ‘selfsufficient’, 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 permissivenominal syntax, including a simple translation from the nominal terms of Urban et al. (2004) into permissivenominal terms, is also in Dowek et al. (2010).
2.2.9 A.9 PermissiveNominal Algebra (Gabbay and Mulligan 2009, and Sect. 2.3.4)
The permissivenominal algebra of Sect. 2.3.4 uses permissivenominal terms and has a significantly different prooftheory.
The notable differences are, aside from being permissivenominal, the inclusion (if we want them) of infinitelysupported constant symbols and of infinitelysupported 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 PermissiveNominal Logic (Dowek and Gabbay 2010, 2012a and Sect. 2.4.1)
As we discuss in this survey, permissivenominal logic (PNL) adds universal quantification over unknowns X. This is nonevident 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 permissivenominal terms X has coinfinite support and we can always αrename bound atoms. We get a prooftheory which is pleasingly close to that of firstorder logic, a sound and complete semantics, and we can axiomatise and prove correct a nontrivial and mathematically relevant theory, such as arithmetic.
Rights and permissions
Copyright information
© 2014 Springer Science+Business Media Dordrecht
About this chapter
Cite this chapter
Gabbay, M.J. (2014). Nominal Terms and Nominal Logics: From Foundations to Metamathematics. In: Gabbay, D., Guenthner, F. (eds) Handbook of Philosophical Logic. Handbook of Philosophical Logic, vol 17. Springer, Dordrecht. https://doi.org/10.1007/9789400766006_2
Download citation
DOI: https://doi.org/10.1007/9789400766006_2
Published:
Publisher Name: Springer, Dordrecht
Print ISBN: 9789400765993
Online ISBN: 9789400766006
eBook Packages: Humanities, Social Sciences and LawPhilosophy and Religion (R0)