<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Nominal semantics for predicate logic: algebras, substitution, quanti ers, and limits</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Gilles Dowek</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Murdoch J. Gabbay</string-name>
        </contrib>
      </contrib-group>
      <abstract>
        <p>We de ne a model of predicate logic in which every term and predicate, open or closed, has an absolute denotation independently of a valuation of the variables. For each variable a, the domain of the model contains an element JaK which is the denotation of the term a (which is also a variable symbol). Similarly, the algebra interpreting predicates in the model directly interprets open predicates. Because of this models must also incorporate notions of substitution and quanti cation. These notions are axiomatic, and need not be applied only to sets of syntax. We prove soundness and show how every `ordinary' model (i.e. model based on sets and valuations) can be translated to one of our nominal models, and thus also prove completeness.</p>
      </abstract>
      <kwd-group>
        <kwd>Lattices and algebra</kwd>
        <kwd>First-order logic</kwd>
        <kwd>Nominal semantics</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        1 Accessible references for Heyting and Boolean algebra are easily found online. For a
modern and encyclopaedic treatment, see e.g. [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ].
we apply nominal ideas to semantic objects which, unlike the syntax of terms
and predicates, need not be inductively de ned. We use nominal algebra to
axiomatise substitution following [
        <xref ref-type="bibr" rid="ref17 ref18">17,18</xref>
        ] and a simple theory of A#fresh limits in
partial orders, which is introduced in this paper. Using A#fresh limits we show
how &gt;, ^, and the quanti er V#a are all just greatest A#lower fresh bounds for
suitable nite sets. Speci cally:
{ &gt; is the greatest lower bound for the empty set ?.
{ x ^ y is the greatest lower bound for the set fx; yg, i.e. Vfx; yg.
{ V#ax is the greatest fag#lower bound for the set fxg, i.e. V#fagfxg.
We use this to construct a nominal algebraic semantics for rst-order logic and
prove it sound and complete. The completeness proof is a little unorthodox:
instead of a direct proof (which is not hard) we give a more general lifting
construction from Tarski-style valuation models, to our nominal models. This
gives a direct translation of the familiar semantics into our new one and we
obtain completeness as a corollary.
      </p>
      <p>
        Map of the paper Section 2 presents the technical background: nominal sets
and rst-order logic. Section 3 introduces nominal posets and substitution
algebras. This material is partly new (nominal posets and V#A) and partly a
restatement of [
        <xref ref-type="bibr" rid="ref17 ref18">17,18</xref>
        ] (substitution algebras; though to be fair, the presentation here
is signi cantly simpli ed and updated). Section 4 introduces nominal Boolean
algebras, which is a mathematically precise answer to the question with which
we opened this Introduction, and proves soundness. Finally, Section 5 presents
the `lifting' operation on models and proves completeness.
2
2.1
      </p>
    </sec>
    <sec id="sec-2">
      <title>Technical background</title>
      <sec id="sec-2-1">
        <title>Background on nominal sets</title>
        <p>
          Nominal sets were introduced in [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ] (where they were called equivariant
FraenkelMostowski sets ). The presentation below is quite self-contained; see [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ] or [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]
for more details.
        </p>
        <p>We want names to `exist' in the denotation. We do this by endowing sets with
a symmetry group action over name permutations (De nition 2.3). We extract
from this the key idea of support (De nition 2.4), which captures the degree of
asymmetry of an element under the group action. We use this to de ne a nominal
set X (De nition 2.6) as a set with a group action all of whose elements x are
at most nitely asymmetric (have nite support), where a#x and a 62 supp(x)
mean the same thing: \x is symmetric over/does not depend on the name a".
We do not a priori assume e.g. a substitution action on names; in our framework
this is algebraically de nable just from the more primitive notion of permutable
names and nite asymmetry (see e.g. Figure 2).</p>
        <p>De nition 2.1. Fix a countably in nite set of atoms A. We use a
permutative convention that a; b; c; : : : range over distinct atoms.</p>
      </sec>
      <sec id="sec-2-2">
        <title>De nition 2.2. A ( nite) permutation is a bijection on the set A such</title>
        <p>that nontriv ( ) = fa j (a) 6= ag is nite.</p>
        <p>
          Write id for the identity permutation such that id (a) = a for all a. Write
0 for composition, so that ( 0 )(a) = 0( (a)). Write -1 for inverse, so
that -1 = id = -1. Write (a b) for the swapping (terminology from
[
          <xref ref-type="bibr" rid="ref20">20</xref>
          ]) mapping a to b, b to a, and all other c to themselves, and take (a a) = id .
        </p>
        <sec id="sec-2-2-1">
          <title>De nition 2.3. A set with a permutation action X is a pair (jXj; ) of an</title>
          <p>underlying set jXj and a permutation action written x which is a group
action on jXj, so that id x = x and ( 0 x) = ( 0) x for all x 2 jXj and
permutations and 0.</p>
          <p>De nition 2.4. Say that A A supports x 2 jXj when for every , if (a) = a
for every a 2 A then x = x. If some nite A supporting x exists, then call x
nitely-supported. Then de ne the support of x by</p>
          <p>supp(x) = \fA j A nite; A supports xg:
Write a#x as shorthand for a 62 supp(x) and read this as a is fresh for x.
Theorem 2.5. Suppose X is a set with a permutation action and x 2 jXj. Then
if x has nite support then supp(x) supports x and is the unique least nite
supporting set of x.</p>
          <p>
            Proof. See [12, Theorem 2.21]. A di erent but equivalent formulation of the
result is in [
            <xref ref-type="bibr" rid="ref20">20</xref>
            ].
          </p>
          <p>De nition 2.6. Suppose X is a set with a permutation action.</p>
          <p>Call a set with a permutation action X a nominal set when every x 2 jXj has
nite support. X, Y, Z will range over nominal sets.</p>
          <p>Example 2.7. { A is a nominal set where a = (a). It is easy to check that
supp(a) = f g</p>
          <p>
            a .
{ The sets of terms and predicates from De nition 2.12 below, are nominal
sets if we let permutation act in the natural way on the atoms (considered
as variable symbols) inside them. It is easy to check that supp(r) or supp( )
is equal to the atoms occurring in r or if we do not take terms up to
-equivalence, and supp(r) or supp( ) is equal to the atoms occurring free
in r or if we do take r or up to -equivalence. A detailed study of this
is in [12, Section 5]; see also [
            <xref ref-type="bibr" rid="ref4">4</xref>
            ].
          </p>
          <p>
            Later on in this paper we shall see more examples. Notably, the sets X from
De nition 5.9 are nominal sets, and the set of valuations from De nition 5.3
is a set with a permutation action but not a nominal set (see Remark 5.8 and
associated footnote). For more examples see [
            <xref ref-type="bibr" rid="ref12">12</xref>
            ].
          </p>
        </sec>
        <sec id="sec-2-2-2">
          <title>De nition 2.8. Call a function f 2 jXj ! jYj equivariant when</title>
          <p>f ( x) for all permutations and x 2 jXj. In this case write f : X ! Y.
f (x) =
Proposition 2.9. supp( x) = f (a) j a 2 supp(x)g.</p>
          <p>Proof. It is not hard to check that A supports x if and only if f (a) j a 2 Ag
supports x. We use Theorem 2.5.</p>
          <p>Corollary 2.10. 1. If (a) = a for all a 2 supp(x) then
2. If (a) = 0(a) for every a 2 supp(x) then x = 0 x.
3. a#x if and only if 9b:b#x ^ (b a) x = x.
x = x.</p>
          <p>Proof. Parts 1 and 2 follow from the fact that supp(x) supports x (Theorem 2.5).
Part 3 follows using Proposition 2.9.
2.2</p>
        </sec>
      </sec>
      <sec id="sec-2-3">
        <title>First-order logic</title>
        <p>
          First-order logic is of course standard. The reader can nd any number of
presentations in the literature, for instance [
          <xref ref-type="bibr" rid="ref27">27</xref>
          ].
        </p>
        <p>De nition 2.11. Here and for the rest of this paper x a signature
= (TermFormers ; PredicateFormers ; arity )
of term-formers and predicate-formers and an arity function arity
mapping TermFormers [ PredicateFormers to N = f0; 1; 2; : : : g. We let f range over
distinct term-formers and P range over distinct predicate-formers.</p>
      </sec>
      <sec id="sec-2-4">
        <title>De nition 2.12. De ne terms r and predicates</title>
        <p>inductively by:
r ::= a j f(r1; : : : ; rarity(f))</p>
        <p>::= ? j P(r1; : : : ; rarity(P)) j ^ j : j 8a:
De ne free atoms inductively by:
fa(a) = fag fa(f(r1; : : : ; rn)) = Si fa(ri)
fa(?) = ? fa(P(r1; : : : ; rn)) = Si fa(ri)
fa(: ) = fa( ) fa( 1^ 2) = fa( 1) [ fa( 2) fa(8a: ) = fa( )nfag
De nition 2.13. We take predicates up to -equivalence as usual (so for
instance 8a:P(a) = 8b:P(b) where arity (P) = 1).</p>
        <p>We write r[a:=s] and [a:=s] for the usual capture-avoiding substitution
on terms and predicates. For instance, f(a)[a:=b] = f(b) and (8b:P(a))[a:=b] =
8b0:P(b).</p>
        <p>De nition 2.14. Let and range over nite sets of predicates. A sequent is
a pair ` . We de ne the derivable sequents as usual for classical rst-order
logic by the rules in Figure 1.
3</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Partial orders and substitution</title>
      <p>We obtain our nominal semantics for rst-order logic by combining two things:
a partial order, and a substitution action. We need the partial order to interpret
entailment. We need the substitution action to interpret variables and
substitutions. These are Subsections 3.1 and 3.2.</p>
      <p>Of course, these two things interact via quanti ers. Thus we introduce the
novel notion of V#AX, an A#greatest lower bound for a set X (Notation 3.3).
It turns out that this generalises ?, ^, and V#a into a single de nition.
; ? `
(?L)</p>
      <p>` ;
; : `
; [a:=s] `
; 8a: `
We can now begin to ask what happens if we combine the notion of partially
ordered set with the notion of nominal set. In particular, we can think about
greatest lower and least upper bounds in the presence of nominal freshness. This
leads us to the idea of V#AX and W#AX; greatest lower and least upper bounds
amongst elements that do not include A in their support.</p>
      <p>De nition 3.1. A nominal poset is a tuple L = (jLj; ; ) such that (jLj; ) is
a nominal set and jLj jLj is an equivariant partial order.2</p>
      <p>Call L nitely fresh-complete when for every nite subset X jLj and
every nite set of atoms A A the set of A-fresh lower bounds</p>
      <p>fx0 2 jLj j A \ supp(x0) = ? ^ 8x2X:x0 xg
has a -greatest element V#AX.</p>
      <p>Similarly call L nitely fresh-cocomplete when for every nite X and
A as above the set of A-fresh upper bounds fx0 2 jLj j A \ supp(x0) = ? ^
8x2X:x x0g has a -least element W#A X.</p>
      <p>Lemma 3.2. V#AX and W#AX are unique if they exist.</p>
      <p>Proof. From the fact that for a partial order, x
y and y
x imply x = y.</p>
      <p>Notation 3.3. Suppose L = (jLj; ; ) is a nitely fresh-complete and -cocomplete
nominal poset. Suppose X jLj and A A are nite. Then:
{ Call V#AX an A#greatest lower bound (`A-fresh greatest lower bound' )
of X. If A = ? then we may just call this a greatest lower bound. If A = fag
we may just call this an a#greatest lower bound and write it V#aX.
{ Call W#AX an A#least upper bound of X. If A = ? then we may just
call this a least upper bound. If A = fag we may just call this an a#least
upper bound and write it W#aX.</p>
      <p>Notation 3.4. Suppose L = (jLj; ; ) is a nominal poset.</p>
      <p>{ Write &gt; for the greatest lower bound and ? for the least upper bound of
the empty set ?, where these exist.
2 So x
y if and only if
x</p>
      <p>De nition 3.5. Suppose L is a partial order (it does not matter whether it
is nominal). Call x0 2 jLj a complement of x 2 jLj when x ^ x0 = ? and
x _ x0 = &gt;. If every x 2 jLj has a complement say that L has complements,
and write the complement of x as :x.</p>
      <p>Lemma 3.6. Complements are unique if they exist.</p>
      <p>Corollary 3.7. Suppose L = (jLj; ; ) is a nominal poset.
1. Suppose X jLj is nite and A A, and V#AX exists.</p>
      <p>Then supp(V#AX) Sfsupp(x) j x 2 XgnA.
2. Suppose x2jLj, and suppose :x exists. Then supp(:x) = supp(x).
Proof. We can use symmetry (equivariance) properties of atoms:
1. Using [12, Theorems 2.29 and 4.7] supp(V#AX) Sfsupp(x) j x 2 Xg [ A.3</p>
      <p>Since by assumption A \ supp(V#AX) = ?, the result follows.
2. By [12, Theorem 4.7] and since the map x 7! :x is injective.
3.2</p>
      <sec id="sec-3-1">
        <title>Substitution algebra</title>
        <p>The reader may be used to seeing substitution as a concrete operation on sets.
However, using nominal sets we can powerfully (and axiomatically) generalise
substitution to be an abstract (nominal) algebraic structure.</p>
        <p>De nition 3.8. A termlike substitution algebra over
(jUj; ; atm; sub) where:
is a tuple U =
{ (jUj; ) is a nominal set.
{ atm : A ! jUj is an equivariant injection, usually written invisibly (so we
write atm(a) just as a).
{ sub : jUj A jUj ! jUj is an equivariant substitution action, written
in x v[a7!u].
such that the equalities (Suba) to (Sub ) of Figure 2 hold, where x, u, and
v range over elements of jUj.
3 This is just a fancy way of observing that since the de nition of V is symmetric in
atoms, the the result must be at least as symmetric as the inputs.</p>
        <p>De nition 3.9. Suppose U = (jUj; ; sub; atm) is a termlike substitution
algebra. A substitution algebra over U is a tuple B = (jBj; ; sub) where:
{ (jBj; ) is a nonempty nominal set.
{ sub : jBj A jUj ! B is an equivariant substitution function satisfying
the axioms (Subid) to (Sub ) of Figure 2, where x ranges over elements
of jBj and u and v range over elements of jUj.</p>
        <p>Example 3.10. 1. The set of atoms A is a termlike substitution algebra where
atm(a) = a and a[a7!x] = x and b[a7!x] = b.
2. Terms from De nition 2.12 are a termlike substitution algebra with atm(a) =
a and r[a7!s] equal to r[a:=s].
3. Predicates from De nition 2.12 are not a termlike substitution algebra,
because there are no predicate variables or substitution for predicates.
Predicates are however a substitution algebra over terms.</p>
        <p>
          In Corollary 5.13 we will prove that jN j from De nition 5.11 is a termlike
substitution algebra, and X from De nition 5.11 is a substitution algebra. For
di erent and non-trivial classes of substitution algebras see [
          <xref ref-type="bibr" rid="ref11 ref13">11,13</xref>
          ].
4
4.1
        </p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>The model</title>
      <sec id="sec-4-1">
        <title>Nominal Boolean algebra</title>
        <p>De nition 4.1 is the culminating de nition of this paper; we de ne a notion
of Boolean algebraic structure suitable for giving an `absolute' interpretation
of rst-order logic. This means that variables, substitution, and quanti cation
must be part of the model just as much as conjunction and negation are part of
ordinary Boolean algebras. With our de nitions so far, this is now not di cult.</p>
        <p>De nition 4.1 is not quite enough to interpret rst-order logic on its own.
For that, we need the notion of model which we develop next in Subsection 4.2.
De nition 4.1. Suppose U is a termlike substitution algebra. A nominal
Boolean algebra over U is a tuple B = (jBj; ; ; sub) such that:
{ (jBj; ; ) is a nitely fresh-complete nominal poset with complements.
{ (jBj; ; sub) is a substitution algebra over U.</p>
        <p>{ The partial order is compatible with the substitution action:
(Compat V) (V#AX)[a7!u] = V#Afx[a7!u] j x2Xg if A\supp(u)=?; a62A
(Compat:) (:x)[a7!u] = :(x[a7!u]):
A more accurate name for `nominal Boolean algebra' might be `nominal V#A:
partial order'. But that is a bit of a mouthful.4 It is quite easy to derive some
basic properties of nominal Boolean algebras, which are useful for Theorem 4.13.
4 A possibly nice classi cation is to de ne a notion of bounded nominal lattice which
is equipped with ^, _, ?, &gt;|and also with V#ax. Then our nominal Boolean algebra
is just a nominal lattice with complements and a compatible substitution action.
Lemma 4.2. If b#u then (V#bx)[a7!u] = V#b(x[a7!u]).</p>
        <p>Proof. This is just (Compat V) where A = fbg. Recall that by our permutative
convention a 62 fbg.</p>
        <p>Lemma 4.3. x</p>
        <p>y if and only if x ^ y = x.</p>
        <p>Proof. Both hold if and only if x is a greatest lower bound for fx; yg.
Lemma 4.4. 1. (x ^ y)[a7!u] = x[a7!u] ^ (y[a7!u]).
2. ?[a7!u] = ?.</p>
        <p>Proof. From (Compat V) and (Compat:) respectively.</p>
        <p>Corollary 4.5. If x y then x[a7!u] y[a7!u]. As a further corollary, if x
and a#x then x y[a7!u] for every u 2 jUj.
y
Proof. This follows from Lemma 4.3 and part 1 of Lemma 4.4. The further
corollary follows using (Sub#) from Figure 2.</p>
        <p>Lemma 4.6. Suppose x 2 jBj and u 2 jUj and a 2 A. Then V#ax
x[a7!u].</p>
        <p>Proof. By Notation 3.4 V#ax is the a#greatest lower bound for fxg. This means
that V#ax x and a#V#ax. We use Corollary 4.5.</p>
        <p>Lemma 4.7. Suppose x; y2jBj and a2A. Then x
y and a#x imply x</p>
        <p>V#ay.</p>
        <p>Proof. This is the a#greatest lower bound property of V#ay with respect to fyg.
Corollary 4.8. V#ax is the greatest lower bound of fx[a7!u] j u 2 jUjg in B.
u 2 jUj. In particular then, z
Proof. By Lemma 4.6 V#ax is a lower bound. Now suppose z
(Subid)</p>
        <p>=
x[a7!a]
x. By Lemma 4.7 z
x[a7!u] for every</p>
        <p>V#ax.
4.2</p>
      </sec>
      <sec id="sec-4-2">
        <title>Soundness</title>
        <p>De nition 4.9. A model M = (U; B; -M) consists of:
{ A termlike substitution algebra U (De nition 3.8).
{ A nominal Boolean algebra B over U (De nition 4.1).
{ An assignment -M to each term-former f of an equivariant function fM :
jUjarity(f) ! jUj and to each predicate-former P of an equivariant function
PM : jUjarity(P) ! jBj such that
(Commf)
(CommP)
fM(u1; : : : ; uarity(f))[a7!u] = fM(u1[a7!u]; : : : ; uarity(f)[a7!u])</p>
        <p>PM(u1; : : : ; uarity(f))[a7!u] = PM(u1[a7!u]; : : : ; uarity(f)[a7!u]):
For the rest of this section x a model M = (U; B; -M).</p>
        <p>J 0^ KM = J 0KMM^ J K</p>
        <p>J: KM = :J K
De nition 4.10. De ne an interpretation function J-KM mapping terms and
predicates (De nition 2.12) to elements of jUj and jBj respectively, as follows:
JaKM = atm(a) Jf(r1; : : : ; rn)KM = fMM(Jr1KM; : : : ; JrnKM)</p>
        <p>J?KM = ? M JP(r1; : :J:8; arn:)KKMM == PV#a(JJrK1MKM; : : : ; JrnKM)</p>
      </sec>
      <sec id="sec-4-3">
        <title>De nition 4.11. Write M</title>
        <p>when J KM = &gt; and call
valid in M.</p>
        <p>Proposition 4.12. Jr[a:=s]KM = JrKM[a7!JsKM] and J
[a:=s]KM = J KM[a7!JsKM].</p>
        <p>Proof. By routine inductions on r and :
{ The case of a. Ja[a:=s]KM = JsKM and by (Subid) JaKM[a7!JsKM] = JsKM.
{ The case of f(r1; : : : ; rn). Using (Commf).
{ The case of 0^ . Using part 1 of Lemma 4.4.</p>
        <p>{ The case of 8a: . Using Lemma 4.2.</p>
      </sec>
      <sec id="sec-4-4">
        <title>Theorem 4.13. If</title>
        <p>`
then V</p>
        <p>M
We have to recall the (standard) de nition of model for rst-oder logic. This is
Subsection 5.1. Then in Subsection 5.2 we show how to lift this to a nominal
model and obtain completeness as an immediate corollary (Theorem 5.18 and
Corollary 5.19).
We brie y sketch the ordinary model of rst-order classical logic, with valuations
and without atoms. This model is not intended to be sophisticated; we will just
need that one exists.</p>
        <p>Notation 5.1. To avoid the confusion between sets and nominal sets, we may
write ordinary set for the former.</p>
        <p>De nition 5.2. An ordinary model N = (jN j; -N ) is a tuple such that:
{ jN j is some non-empty (ordinary) underlying set.
{ -N assigns to each term-former f a function fN : jN jarity(f) ! jN j and to each
predicate-former P a function PN : jN jarity(P) ! f?; &gt;g.</p>
        <p>De nition 5.3. Write A)jN j for the set of functions from atoms to jN j. Let
&amp; range over elements of A)jN j and call these valuations (to N ).</p>
        <p>Also if x 2 jN j then write &amp;[a:=x] for the function such that (&amp;[a:=x])(a) = x
and (&amp;[a:=x])(b) = &amp;(b).</p>
        <p>De nition 5.4. f?; &gt;g is a complete Boolean algebra. We use standard de
nitions, such as ^, :, V, and W without further comment
De nition 5.5. De ne an interpretation function J-KN&amp; mapping terms and
predicates (De nition 2.12) to elements of jN j and f?; &gt;g (considered as a
Boolean algebra) respectively, as follows:</p>
        <p>JaKN&amp; = &amp;(a)</p>
        <p>J?KN&amp; = ?
J 0^ KN&amp; = J 0KN&amp; ^ J KN&amp;</p>
        <p>J: KN&amp; = :J K&amp;</p>
        <p>N</p>
        <p>Jf(r1; : : : ; rn)KN&amp; = fN (Jr1KN&amp; ; : : : ; JrnKN&amp; )</p>
        <p>JP(r1; : :J:8; arn:)KKNN&amp;&amp; == PVNx(2JjrN1KjJN&amp; ; :KN:&amp;[a::;=Jx]rnKN&amp; )</p>
        <p>Theorem 5.6 expresses the usual soundness and completeness result for
rstorder logic; for details and proofs see e.g. [27, Subsection 1.5]:
Theorem 5.6. ` is derivable if and only if for every ordinary model N and
every valuation &amp; to N it is the case that V 2 J KN&amp; = &gt; implies W 2 J KN&amp; = &gt;.
5.2</p>
      </sec>
      <sec id="sec-4-5">
        <title>Constructing a nominal model from an ordinary model</title>
        <p>We now show how to `lift' a model over ordinary sets to a nominal model
(Proposition 5.16). We then deduce completeness for nominal Boolean algebras
(Corollary 5.19).</p>
        <p>De nition 5.7. Give valuations &amp; 2 A)jN j a permutation action by
( &amp;)(a) = &amp;( -1(a)):
Remark 5.8. A)jN j forms a set with a permutation action (De nition 2.3).
This is not in general a nominal set because it has elements without nite
support5 for our purposes that will not be a problem.</p>
        <p>In fact, the action from De nition 5.7 is a special case of the standard
conjugation action ( &amp;)(a) = &amp;( -1(a)) where we use the trivial action x = x for
every x 2 jN j. This is standard; for a speci cally `nominal' discussion see [14,
De nition 2.4.2].</p>
        <p>De nition 5.9. Given an ordinary set X write X
= (jX j; ) for
5 The nitely-supported &amp; are such that there exists a nite A A such that for all
a; b 62 A, &amp;(a) = &amp;(b); it is not worth our while to impose this restriction, though it
would do no harm to do so.
{ jX j is the set of functions f from A)jN j to X such that there exists a
nite set A such that if &amp;(a) = &amp;0(a) for every a 2 A then f (&amp;) = f (&amp;0), and
{ the permutation action is de ned by</p>
        <p>( f )(&amp;) = f ( -1 &amp;):
We will be most interested in jN j and f?; &gt;g .</p>
        <p>Lemma 5.10. For any ordinary set X, X
nominal set (De nition 2.6).
from De nition 5.9 determines a
Proof. It is routine to verify that the permutation action is indeed a group action.
It remains to check nite support.</p>
        <p>Suppose (a) = a for every a 2 A (notation from De nition 5.9). By
Definition 5.9 ( f )(&amp;) = f ( -1 &amp;). By De nition 5.7 ( -1 &amp;)(a) = &amp;( (a)). Now by
assumption &amp;(a) = &amp;( (a)) for every a 2 A. Therefore, ( -1 &amp;)(a) = &amp;(a) for every
a 2 A, and so f (&amp;) = f ( -1 &amp;), and so ( f )(&amp;) = f (&amp;). Thus, f has nite support
(and is supported by A).</p>
        <p>De nition 5.11. Suppose N is an ordinary model (De nition 5.2). Specify a
tuple (jjN j j; ; atm; sub) by:
{ atm is de ned by atm(a)(&amp;) = &amp;(a).</p>
        <p>{ sub is de ned by f [a7!g](&amp;) = f (&amp;[a:=g(&amp;)]).</p>
        <p>We may write jN j for (jjN j j; ; atm; sub).6</p>
        <p>Furthermore if X is any ordinary set then (abuse notation again and) write
X = (jX j; ; sub) where f [a7!g](&amp;) = f (&amp;[a:=g(&amp;)]) for f 2 jX j and g 2 jjN j j.
Lemma 5.12. Suppose X is an ordinary set and f 2 jX j. Then if &amp;(a) = &amp;0(a)
for every a 2 supp(f ) then f (&amp;) = f (&amp;0).</p>
        <p>Proof. Suppose &amp;(a) = &amp;0(a) for every a 2 supp(f ). It su ces to show that if
a 2 A n supp(f ) and x 2 jN j then f (&amp;[a:=x]) = f (&amp;).</p>
        <p>Choose fresh b : (so b 62 A). By part 1 of Corollary 2.10 (b a) f = f , since
a; b 62 supp(f ). We reason as follows:</p>
        <p>f (&amp;[a:=x]) b62=A f (&amp;[a:=x][b:=&amp;(a)]) (b a)=f=f f (&amp;[b:=x]) b62=A f (&amp;)
Corollary 5.13. N from De nition 5.11 is indeed a termlike substitution
algebra, and X is indeed a substitution algebra over N .</p>
        <p>Proof. We examine De nitions 3.8 and 3.9 and see that we need to check
equivariance and the axioms (Suba) (for the termlike case) and (Subid) to (Sub )
from Figure 2. This is routine; we use Lemma 5.12.</p>
        <p>De nition 5.14. Suppose g0; g 2 jf?; &gt;g j. Write g0
g when 8&amp;:g0(&amp;)
g(&amp;).
6 So we abuse notation by overloading with the nominal set, and jjN j j is: the
underlying set of the substitution algebra obtained from the underlying set of the ordinary
model N . What could be simpler?
Lemma 5.15. (jf?; &gt;g j; ; ) is a
ments.</p>
        <p>nitely fresh-complete lattice with
compleProof. It is easy to check that :g de ned by (:g)(&amp;) = :(g(&amp;)) is a complement
to g.</p>
        <p>Now suppose X jf?; &gt;g j and A A are nite, and suppose A\supp(u) =
? and a 2 AnA. De ne</p>
        <p>(V#AX)(&amp;) = ^fg(&amp;[a:=xa]a2A) j g 2 X; 8a2A:xa 2 jN jg:
It is routine to verify that this is an A#greatest lower bound for X.
Proposition 5.16. (jf?; &gt;g j; ; ; sub) is a nominal Boolean algebra over jN j .
Proof. We unpack De nition 4.1.</p>
        <p>{ (jf?; &gt;g j; ) is a nominal set by Lemma 5.10.
{ (jf?; &gt;g j; ; ) is by Lemma 5.15 a nitely fresh-complete lattice with
complements.
{ (Compat V) and (Compat:) follow by easy calculations, since De
nition 5.14 is pointwise on valuations.</p>
        <p>De nition 5.17. The interpretation of term-formers and predicate-formers is
simple:
fI(f1; : : : ; farity(f))(&amp;) = fN (f1(&amp;); : : : ; farity(f)(&amp;))</p>
        <p>PI(f1; : : : ; farity(f))(&amp;) = PN (f1(&amp;); : : : ; farity(f)(&amp;))
Theorem 5.18. (jN j ; f?; &gt;g ; -I) determines a model in the sense of Def. 4.9.
Proof. jN j is a termlike substitution algebra by Corollary 5.13. f?; &gt;g is a
nominal Boolean algebra over jN j by Proposition 5.16. The commutation
conditions (Commf) and (CommP) are by easy calculations.</p>
        <p>Corollary 5.19. If 6` , then there exists a termlike substitution algebra U
and a nominal Boolean algebra M over U such that V 2 J KM 6 W 2 J KM.</p>
        <p>As a corollary, if is inconsistent (that is, if ` ?) then has a model.
Proof. By completeness of rst-order logic there exists some ordinary model N
(?D. eItnfiotliloonw5s.f2r)omandDevanluitaitoinon5.&amp;1t4otNhatsuVch2thJatKMV6 2WJ2KN&amp;J=KM&gt;. and W 2 J KN&amp; =</p>
        <p>
          It is also possible give a direct proof of completeness of rst-order logic with
respect to the models of De nition 4.9, using a model based on syntax quotiented
by derivable equality. The advantage of the proof of completeness used here is
that it also shows that completeness does not hold just because the only models
available are syntax-based. Topological models [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] and set-theoretic models [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ]
also exist (those papers predate the consideration of lattices and A#fresh limits
of this paper).
        </p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Conclusions</title>
      <p>The usual Tarski semantics, based on valuations, has names in the syntax but
not in the semantics. Names can be used to name semantic objects but these
objects do not themselves contain names. We have challenged the prejudice that
only syntax contains names, and proposed a framework where names are (also)
in denotation.</p>
      <p>
        This is related to a broad debate in philosophy about to what extent names
are real. One investigation in that literature deserves special mention: Kit Fine's
notion of arbitrary object [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], which corresponds to our notion of `names in
denotation' and in particular to our notion of nominal substitution set, though
the technical details of Fine's constructions are quite di erent from ours.7
      </p>
      <p>
        This paper is part of a broader research context. For instance in [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] we built
a representation theorem for rst-order logic (in retrospect this also provides
a class of `topological' models for the axioms in this paper, distinct from the
`lifted' models of Section 5). In [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] we show that, remarkably, a large subclass of
the cumulative hierarchy model of Fraenkel-Mostowski sets forms a substitution
algebra.
      </p>
      <p>In this paper we apply the technology to the theory of lattices, in particular
identifying A#fresh limits as the single unifying notion of greatest lower bound
needed to model both conjunction and universal quanti cation. This is another
step towards a `nominal' view of logic and computation whereby names, and
associated structures, are treated as integral to denotation.</p>
      <p>
        Related and future work A nominal style semantics related to the semantics
of this paper has been given for the -calculus [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]. Nominal lattices have not
been considered to date. The author and collaborators considered a notion of
Banona in [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] (Boolean algebra with )N which is tangentially related to this
paper. Domain theory in nominal sets is considered in [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ] and a notion of FM
category is considered in [
        <xref ref-type="bibr" rid="ref2 ref3">3,2</xref>
        ]. The notion of A#fresh limit seems to be new
though, as is the speci cally lattice-theoretic treatment.
      </p>
      <p>
        A relative of nominal lattices is cylindric set algebras [
        <xref ref-type="bibr" rid="ref21 ref22">22,21</xref>
        ], a semantics
expressed in terms of relations between elements of the domain of the model,
where quanti cation is interpreted using projection and cylindri cation. Instead
of designing semantics for rst-order logic based on relations, projection, and
cylindri cation, we have taken the novel approach of giving a direct
interpretation to variables in the model. In fact, the `ordinary models' we build in
Subsection 5.1 correspond to locally nite dimensional regular cylindric set algebras
[
        <xref ref-type="bibr" rid="ref22">22</xref>
        ]. There is no non-nominal precedent to the nominal Boolean algebras from
De nition 4.1.
      </p>
      <p>There are two natural avenues for future work:
7 Fine did not have permutations or nite support independently of and preceding the
notion of substitution.</p>
      <p>Add binders to the term-language. Part of the challenge of this is to develop
a suitable new syntax extending rst-order logic with term-formers that can
bind. Once we have this, it is easy to interpret binders, because our (nominal)
denotation supports atoms-abstraction as primitive.8</p>
      <p>In particular, we see this being applied computationally in formalising
mathematics, where binders are everywhere, as an improvement over rst-order logic
(where term-formers cannot bind) or higher-order logic (which may already be
unnecessarily powerful).</p>
      <p>
        This would be related to the permissive-nominal logic of [
        <xref ref-type="bibr" rid="ref5 ref6">5,6</xref>
        ] except that
here, we would want to take substitution as primitive. This is related to work
by Fiore and his students [
        <xref ref-type="bibr" rid="ref10 ref9">10,9</xref>
        ] which tries to develop (purely in category
theory) a uni ed account of names, binding, and substitution; a non-exhaustive but
accessible introduction to these ideas is in [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ]. Slightly further a eld, Beeson's
lambda-logic [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] enriches rst-order logic with a term-language that is speci
cally the untyped -calculus; the denotational assumptions used are completely
di erent, but the spirit of allowing binding term-formers in a rst-order logic is
similar. Of course this also goes back to the rst author's Binding Logic [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
Generalise to categories. Another obvious next step is to generalise the
constructions in this paper from lattices to categories, and so obtain an enriched
category theory. By this view, we note that lattices are just a special case of
categories, and our A#fresh limits are just limits in a subcategory of elements of
the lattice for which A is fresh. Much can be done here. For instance, we can try
to identify the correct common generalisation of this new view of quanti ers and
the standard one based on left- and right-adjoints to projection [23, Section 5.5].
      </p>
      <p>
        Slightly less ambitiously, we can simply consider a general notion of nominal
lattice, which enriches ordinary lattices with V#ax (a greatest a#lower bound for
x) but without necessarily assuming a substitution action.9 Clearly, there is a
rich theory of nominal preorders which remains to be explored.
8 Atoms-abstraction [a]x is the native (non-functional) notion of abstraction in
nominal techniques. It was introduced in [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ].
9 The aN:x of [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] is not an instance of this because it commutes with negation, but
the (dual of) a:x from [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] is an instance of this. There are two distinct `restriction'
operations here.
      </p>
      <p>Acknowledgements. The second author acknowledges the support of the Leverhulme
trust.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>Michael</given-names>
            <surname>Beeson</surname>
          </string-name>
          .
          <article-title>Lambda logic</article-title>
          .
          <source>In Second International Joint Conference on Automated Reasoning (IJCAR</source>
          <year>2004</year>
          ), volume
          <volume>3097</volume>
          of Lecture Notes in Computer Science, pages
          <volume>460</volume>
          {
          <fpage>474</fpage>
          . Springer,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>Ranald</given-names>
            <surname>Clouston</surname>
          </string-name>
          .
          <article-title>Equational logic for names and binding</article-title>
          .
          <source>PhD thesis</source>
          , University of Cambridge, UK,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>Ranald</given-names>
            <surname>Clouston</surname>
          </string-name>
          .
          <article-title>Nominal Lawvere theories</article-title>
          .
          <source>In Proceedings of the 18th International Workshop on Logic, Language, and Information (WoLLIC)</source>
          , volume
          <volume>6642</volume>
          of Lecture Notes in Computer Science. Springer,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Roy</surname>
            <given-names>L.</given-names>
          </string-name>
          <string-name>
            <surname>Crole</surname>
          </string-name>
          .
          <article-title>-equivalence equalities</article-title>
          .
          <source>Theoretical Computer Science</source>
          ,
          <year>2012</year>
          . In press.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>Gilles</given-names>
            <surname>Dowek</surname>
          </string-name>
          and
          <string-name>
            <given-names>Murdoch J.</given-names>
            <surname>Gabbay</surname>
          </string-name>
          .
          <article-title>Permissive Nominal Logic</article-title>
          .
          <source>In Proceedings of the 12th International ACM SIGPLAN Symposium on Principles and Practice of Declarative Programming (PPDP</source>
          <year>2010</year>
          ), pages
          <fpage>165</fpage>
          {
          <fpage>176</fpage>
          . ACM Press,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>Gilles</given-names>
            <surname>Dowek</surname>
          </string-name>
          and
          <string-name>
            <given-names>Murdoch J.</given-names>
            <surname>Gabbay</surname>
          </string-name>
          .
          <source>Permissive Nominal Logic (journal version)</source>
          .
          <source>Transactions on Computational Logic</source>
          ,
          <year>2012</year>
          . In press.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>Gilles</given-names>
            <surname>Dowek</surname>
          </string-name>
          , Therese Hardin, and
          <string-name>
            <given-names>Claude</given-names>
            <surname>Kirchner</surname>
          </string-name>
          .
          <article-title>Binding logic: Proofs and models</article-title>
          .
          <source>In Proceedings of the 9th International Conference on Logic for Programming</source>
          ,
          <source>Arti cial Intelligence, and Reasoning (LPAR</source>
          <year>2002</year>
          ), pages
          <fpage>130</fpage>
          {
          <fpage>144</fpage>
          . Springer,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>Kit</given-names>
            <surname>Fine</surname>
          </string-name>
          .
          <article-title>Reasoning with Arbitrary Objects</article-title>
          . Blackwell,
          <year>1985</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>Marcelo</given-names>
            <surname>Fiore</surname>
          </string-name>
          and
          <string-name>
            <surname>Chung-Kil Hur</surname>
          </string-name>
          .
          <article-title>Term equational systems and logics</article-title>
          .
          <source>Electronic Notes in Theoretical Computer Science</source>
          ,
          <volume>218</volume>
          :
          <fpage>171</fpage>
          {
          <fpage>192</fpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Marcelo</surname>
            <given-names>P.</given-names>
          </string-name>
          <string-name>
            <surname>Fiore</surname>
            ,
            <given-names>Gordon D.</given-names>
          </string-name>
          <string-name>
            <surname>Plotkin</surname>
            , and
            <given-names>Daniele</given-names>
          </string-name>
          <string-name>
            <surname>Turi</surname>
          </string-name>
          .
          <article-title>Abstract syntax and variable binding</article-title>
          .
          <source>In Proceedings of the 14th IEEE Symposium on Logic in Computer Science (LICS</source>
          <year>1999</year>
          ), pages
          <fpage>193</fpage>
          {
          <fpage>202</fpage>
          . IEEE Computer Society Press,
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Murdoch</surname>
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Gabbay</surname>
          </string-name>
          .
          <article-title>A study of substitution, using nominal techniques and FraenkelMostowski sets</article-title>
          .
          <source>Theoretical Computer Science</source>
          ,
          <volume>410</volume>
          (
          <fpage>12</fpage>
          -13):
          <volume>1159</volume>
          {
          <fpage>1189</fpage>
          ,
          <string-name>
            <surname>March</surname>
          </string-name>
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Murdoch</surname>
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Gabbay</surname>
          </string-name>
          .
          <article-title>Foundations of nominal techniques: logic and semantics of variables in abstract syntax</article-title>
          .
          <source>Bulletin of Symbolic Logic</source>
          ,
          <volume>17</volume>
          (
          <issue>2</issue>
          ):
          <volume>161</volume>
          {
          <fpage>229</fpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Murdoch</surname>
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Gabbay</surname>
          </string-name>
          .
          <article-title>Stone duality for First-Order Logic: a nominal approach</article-title>
          .
          <source>In Howard Barringer Festschrift. December</source>
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Murdoch</surname>
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Gabbay</surname>
          </string-name>
          .
          <article-title>Nominal terms and nominal logics: from foundations to metamathematics</article-title>
          .
          <source>In Handbook of Philosophical Logic</source>
          , volume
          <volume>17</volume>
          . Kluwer,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Murdoch</surname>
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Gabbay</surname>
            and
            <given-names>Vincenzo</given-names>
          </string-name>
          <string-name>
            <surname>Ciancia</surname>
          </string-name>
          .
          <article-title>Freshness and name-restriction in sets of traces with names</article-title>
          .
          <source>In Foundations of software science and computation structures, 14th International Conference (FOSSACS</source>
          <year>2011</year>
          ), volume
          <volume>6604</volume>
          of Lecture Notes in Computer Science, pages
          <volume>365</volume>
          {
          <fpage>380</fpage>
          . Springer,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Murdoch J. Gabbay</surname>
            , Tadeusz Litak, and
            <given-names>Daniela</given-names>
          </string-name>
          <string-name>
            <surname>Petrisan</surname>
          </string-name>
          .
          <article-title>Stone duality for nominal Boolean algebras with NEW</article-title>
          .
          <source>In Proceedings of the 4th international conference on algebra and coalgebra in computer science (CALCO</source>
          <year>2011</year>
          ), volume
          <volume>6859</volume>
          of Lecture Notes in Computer Science, pages
          <volume>192</volume>
          {
          <fpage>207</fpage>
          . Springer,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Murdoch</surname>
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Gabbay</surname>
            and
            <given-names>Aad</given-names>
          </string-name>
          <string-name>
            <surname>Mathijssen</surname>
          </string-name>
          .
          <article-title>Capture-avoiding Substitution as a Nominal Algebra</article-title>
          .
          <source>In ICTAC 2006: Theoretical Aspects of Computing</source>
          , volume
          <volume>4281</volume>
          of Lecture Notes in Computer Science, pages
          <volume>198</volume>
          {
          <fpage>212</fpage>
          ,
          <string-name>
            <surname>November</surname>
          </string-name>
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Murdoch</surname>
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Gabbay</surname>
            and
            <given-names>Aad</given-names>
          </string-name>
          <string-name>
            <surname>Mathijssen</surname>
          </string-name>
          .
          <article-title>Capture-Avoiding Substitution as a Nominal Algebra</article-title>
          .
          <source>Formal Aspects of Computing</source>
          ,
          <volume>20</volume>
          (
          <issue>4-5</issue>
          ):
          <volume>451</volume>
          {
          <fpage>479</fpage>
          ,
          <year>June 2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Murdoch</surname>
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Gabbay</surname>
            and
            <given-names>Dominic</given-names>
          </string-name>
          <string-name>
            <surname>Mulligan</surname>
          </string-name>
          .
          <article-title>Nominal Henkin Semantics: simply-typed lambda-calculus models in nominal sets</article-title>
          .
          <source>In Proceedings of the 6th International Workshop on Logical Frameworks and Meta-Languages (LFMTP</source>
          <year>2011</year>
          ), volume
          <volume>71</volume>
          <source>of EPTCS</source>
          , pages
          <volume>58</volume>
          {
          <fpage>75</fpage>
          ,
          <year>September 2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Murdoch</surname>
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Gabbay</surname>
            and
            <given-names>Andrew M.</given-names>
          </string-name>
          <string-name>
            <surname>Pitts</surname>
          </string-name>
          .
          <article-title>A New Approach to Abstract Syntax with Variable Binding</article-title>
          .
          <source>Formal Aspects of Computing</source>
          ,
          <volume>13</volume>
          (
          <issue>3</issue>
          {5):
          <volume>341</volume>
          {
          <fpage>363</fpage>
          ,
          <year>July 2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <given-names>Leon</given-names>
            <surname>Henkin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. Donald</given-names>
            <surname>Monk</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Alfred</given-names>
            <surname>Tarski</surname>
          </string-name>
          . Cylindric Algebras. North Holland,
          <year>1971</year>
          and 1985.
          <article-title>Parts I and II</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <given-names>Donald</given-names>
            <surname>Monk</surname>
          </string-name>
          .
          <article-title>An introduction to cylindric set algebras</article-title>
          .
          <source>Logic journal of the IGPL</source>
          ,
          <volume>8</volume>
          (
          <issue>4</issue>
          ):
          <volume>451</volume>
          {
          <fpage>492</fpage>
          ,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Andrew</surname>
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Pitts</surname>
          </string-name>
          .
          <article-title>Categorical logic</article-title>
          . In S. Abramsky,
          <string-name>
            <given-names>D. M.</given-names>
            <surname>Gabbay</surname>
          </string-name>
          , and T. S. E. Maibaum, editors,
          <source>Handbook of Logic in Computer Science</source>
          , Volume
          <volume>5</volume>
          .
          <article-title>Algebraic and Logical Structures, chapter 2</article-title>
          . Oxford University Press,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24. John Power.
          <article-title>Abstract syntax: Substitution and binders: Invited address</article-title>
          .
          <source>Electronic Notes in Theoretical Computer Science</source>
          ,
          <volume>173</volume>
          :3{
          <fpage>16</fpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <given-names>Alfred</given-names>
            <surname>Tarski</surname>
          </string-name>
          .
          <article-title>The semantic conception of truth and the foundations of semantics</article-title>
          .
          <source>Philosophy and Phenomenological Research</source>
          ,
          <volume>4</volume>
          ,
          <year>1944</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>David</surname>
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Turner</surname>
          </string-name>
          .
          <article-title>Nominal Domain Theory for Concurrency</article-title>
          .
          <source>PhD thesis</source>
          , University of Cambridge,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27. Dirk van Dalen.
          <source>Logic and Structure. Universitext</source>
          . Springer,
          <year>1994</year>
          . Third, augmented edition.
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <given-names>Steve</given-names>
            <surname>Vickers</surname>
          </string-name>
          .
          <source>Topology via Logic</source>
          , volume
          <volume>5</volume>
          of Cambridge Tracts in Theoretical Computer Science. Cambridge University Press,
          <year>1989</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>