-
Notifications
You must be signed in to change notification settings - Fork 0
/
pred-syntactic.tex
2818 lines (2354 loc) · 134 KB
/
pred-syntactic.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
\chapter{Syntactic Metalogic} \label{ch:syntax}
%% TO DO: example -- first-order mereology
%% TO DO: example from Goodman and Quine, about making something true
%% by definition
%% TO DO: What is preserved in Quine-Glymour equivalence?
%% TO DO: do use function symbols in formulation of derivation rules
First-order logic plays a starring role in our best account of the
structure of human knowledge. There is reason to believe that
first-order logic is fully sufficient to encode \textit{all}
deductively valid reasoning. It was discovered in the early 20th
century that first-order logic is powerful enough to axiomatize many
of the theories that mathematicians use, such as number theory, group
theory, ring theory, field theory, etc.. And although there are other
mathematical theories that are overtly second-order (e.g.\ the theory
of topological spaces quantifies over subsets, and not just individual
points), nonetheless first-order logic can be used to axiomatize
set-theory, and any second-order theory can be formalized within set
theory. Thus, first-order logic provides an expansive framework in
which much, if not all, deductively valid human reasoning can be
represented.
In this chapter, we will study the properties of first-order logic,
the theories that can be formulated within it, and the relations that
hold between them. Let's begin from the concrete --- with examples of
some theories that can be regimented in first-order logic.
\section{Regimenting theories}
%% TO DO: Carnap -- rational reconstruction
%% TODO: Axiomatizations of STR ??
\begin{example}[The theory of partial orders] \label{ex:poset} We
suppose that there is a relation, which we'll denote by $\leq$, and
we then proceed to lay down some postulates for this relation. In
particular:
\begin{itemize}
\item Postulate 1: The relation $\leq$ is reflexive in the sense that
it holds between anything and itself. For example, if we were
working with numbers, we could write $2\leq 2$, or more generally,
we could write $n\leq n$ for any $n$. For this last phrase, we have
a shorthand: we abbreviate it by $\forall n(n\leq n)$, which can be
read out as, ``for all $n$, $n\leq n$.'' The symbol $\forall$ is
called the \textbf{universal quantifier}.
\item Postulate 2: The relation $\leq$ is transitive in the sense
that if $x\leq y$ and $y\leq z$, then $x\leq z$. Again, we can
abbreviate this last sentence as
\[ \forall x\forall y\forall z((x\leq y\wedge y\leq z)\to x\leq z)
,\]
which can be read as, ``for all $x$, for all $y$, and for all $z$,
if \dots ''
\item Postulate 3: The relation $\leq$ is antisymmetric in the sense
that if $x\leq y$ and $y\leq x$, then $x=y$. This postulate can be
formalized as:
\[ \forall x\forall y((x\leq y\wedge y\leq x)\to x=y) .\]
\end{itemize}
In these previous postulates, we see the same logical connectives
that we used in propositional logic, such as $\wedge$ and $\to$.
But now these connectives might hold between things that are not
themselves sentences. For example, $x\leq y$ is not itself a
sentence, because $x$ and $y$ aren't names of things. We say that
$x$ and $y$ are \emph{variables}, that $\leq$ is a \emph{relation
symbol}, and that $x\leq y$ is a \emph{formula}. Finally, the
familiar symbol $=$ is also a relation symbol. \end{example}
We've described just the barest of bones of the theory of a partial
order. There are a couple of further things that we would definitely
like to be able to do with this theory. First, we would like to be
able to derive consequences from the postulates --- i.e.\ we would
like to derive theorems from the axioms. In order to do so, we will
need to specify the \textbf{rules of derivation} for first-order
logic. We will do that later in this chapter. We would also like to
be able to identify mathematical structures that exemplify the axioms
of partial order. To that end, we devote the following chapter to the
\textbf{semantics}, or \textbf{model theory}, of first-order logic.
\begin{example}[The theory of a linear order] Take the axioms of the
theory of a partial order, and then add the following axiom:
\[ \forall x\forall y((x\leq y)\vee (y\leq x)) .\] This axiom says
that any two distinct things stand in the relation $\leq$. In other
words, the elements from the domain form a total order. There are
further specifications that we could then add to the theory of a
linear order. For example, we could add an axiom saying that the
linear order has endpoints. Conversely, we could add an axiom
saying that the linear order does not have endpoints. (Note,
incidentally, that since either one of those axioms could be added,
the original theory of linear orders is not complete, i.e.\ it
leaves at least one sentence undecided.) We could also add an axiom
saying that the linear order is dense, i.e.\ that between any two
elements there is yet another element. \end{example}
\begin{example}[The theory of an equivalence relation] Let $R$ be a
binary relation symbol. The following axioms give the theory of an
equivalence relation:
\[ \begin{array}{l l l}
\text{reflexive} & \vdash \: R(x,x) \\
\text{symmetric} & \vdash \: R(x,y)\to R(y,x) \\
\text{transitive} & \vdash \: (R(x,y)\wedge R(y,z))\to
R(x,z) \end{array}
\] Here when we write an open formula, such as
$R(x,x)$, we mean to implicitly quantify universally over the free variables. That is,
$\vdash R(x,x)$ is shorthand for $\vdash \forall xR(x,x)$. \end{example}
%% Perhaps a couple more examples at this point? e.g. mereology?
%% e.g. group theory
\begin{example}[The theory of abelian groups] We're all familiar with
number systems such as the integers, the rational numbers, and the
real numbers. What do these number systems have in common? One
common structure between them is that they have a binary relation
$+$, a neutral element $0$, and each number has a unique inverse.
We also notice that the binary relation $+$ is associative in the
sense that $x+(y+z)=(x+y)+z$, for all $x,y,z$. We can formalize
this last statement as
\[ \forall x\forall y\forall z(x+(y+z)=(x+y)+z) .\] In many familiar
cases, the operation $+$ is also commutative, that is
\[ \forall x\forall y(x+y=y+x ) .\] Bringing these postulates
together, we have the theory of abelian groups. Notice that in this
case, we've enlarged our vocabulary to include a symbol $+$ and a
symbol $0$. The symbol $+$ is not exactly a relation symbol, but
instead is a function symbol. Intuitively speaking, given any names
$n$ and $m$ of numbers, $n+m$ also names a number. Similarly, $0$
is taken to be the name of some specific number, and in this sense
it differs from variables.
\end{example}
\begin{example}[Boolean algebra] \label{ex:bool} Suppose that $+$ and
$\cdot$ are binary function symbols, and that $0$ and $1$ are
constant symbols. If you look back at our discussion of Boolean
algebras (Section \ref{sec:bool}), you'll see that each of the
axioms amounts to a first-order sentence, where we use the $+$
symbol instead of the $\vee$ symbol, and the $\cdot$ symbol instead
of the $\wedge$ symbol (since those symbols are already being used
as our logical connectives). The theory of Boolean algebras is an
example of an \emph{algebraic theory}, which means that it can be
axiomatized using only function symbols and
equations. \end{example}
\begin{example}[Arithmetic] It's possible to formulate a first-order
theory of arithmetic, e.g.\ Peano arithmetic. For this, we could
use a signature $\Sigma$ with constant symbols $0$ and $1$, and
binary function symbols $+$ and $\cdot$. \end{example}
\begin{example}[Set theory] It's possible to formulate a first-order
theory of sets, e.g.\ Zermelo-Fraenkel set theory. For this, we
could use a signature $\Sigma$ with a single relation symbol $\in$.
However, for the elementary theory of the category of sets (ETCS),
as we developed in Chapter \ref{cat-set}, it would be more natural
to use the framework of many-sorted logic, having one sort for sets,
and another sort for functions between sets. For more on
many-sorted logic, see Chapter \ref{chap-second}. \end{example}
\begin{example}[Mereology] There are various ways to formulate a
first-order theory of mereology. Most presentations begin with a
relation symbol $pt (x,y)$ to indicate that $x$ is a part of $y$.
Then we add some axioms that look a lot like the axioms for the
less-than relation $<$ for a finite Boolean algebra. \end{example}
\section{Logical grammar}
Abstracting from the previous examples, and many others like them
throughout mathematics, we now define the language of first-order
logic as follows.
\begin{defn} The \textbf{logical vocabulary} consists of the symbols:
\[ \bot \; \forall \; \exists \; \wedge \; \vee \; \neg \; \to \; (
\; ) \] The symbol
$\bot$ will serve as a propositional constant. The final two
symbols here, the parentheses, are simply punctuation symbols that
will allow us to keep track of groupings of the other
symbols. \end{defn}
Please note that we intentionally excluded the equality symbol $=$
from the list of logical vocabulary. Several philosophers in the 20th
century discussed the question of whether the axioms for equality were
analytic truths, or whether they should be considered to form a
specific, contingent theory. We will not enter into the philosophical
discussion at this point, but it will help us to separate out the
theory of equality from the remaining content of our logical system.
We will also take a more careful approach to variables by treating
them as part of a theory's non-logical vocabulary. Our reason for
doing so will become clear when we discuss the notion of translations
between theories.
\begin{defn} A \textbf{signature} $\Sigma$ consists of:
\begin{enumerate} \item A countably infinite collection of
\textbf{variables}.
\item A collection of \textbf{relation symbols}, each of which is
assigned a natural number called its \textbf{arity}. A $0$-ary
relation symbol is called a \emph{propositional constant}.
\item A collection of \textbf{function symbols}, each of which is
assigned a natural number called its arity. A $0$-ary function
symbol is called a \emph{constant symbol}. \end{enumerate}
\end{defn}
\begin{disc} Some logicians use the name \emph{similarity type} as a
synonym for \emph{signature}. There is also a tendency among
philosophers to think of a signature as the vocabulary for an
\emph{uninterpreted language}. The idea here is that the elements
of the signature are symbols that receive meaning by means of a
semantic interpretation. Nonetheless, we should be careful with
this kind of usage, which might suggest that formal languages lie on
the ``mind side'' of the mind--world divide, and that an
interpretation relates a mental object to an object in the world.
In fact, formal languages, sentences, and theories are all
\textit{mathematical objects} --- of precisely the same ontological
kind as the models that interpret them. We discuss this issue
further in the next chapter. \end{disc}
Although a list of variables is technically part of a signature, we
will frequently omit mention of the variables, and defer to using the
standard list $x,y,x_1,x_2,\dots $. Only in cases where we are
comparing two theories will we need to carefully distinguish their
variables from each other.
\begin{example} Every propositional signature is a special case of a
signature in the sense just defined. \end{example}
\begin{example} For the theory of abelian groups, we used a signature
$\Sigma$ that has a binary function symbol $+$ and a constant symbol
$0$. Some other presentations of the theory of abelian groups use a
signature $\Sigma '$ that also has a unary function symbol ``$-$''
for the inverse of an element. Still other presentations of the
theory use a signature that doesn't have the constant symbol $0$.
We will soon see that there is a sense in which these different
theories all deserve to be called \textit{the} theory of abelian
groups. \end{example}
\begin{disc} Let $\Sigma$ be the signature consisting of a binary
relation symbol $r$, and let $\Sigma '$ be the signature consisting
of a binary relation symbol $R$. Are these signatures the same or
different? That depends on what implicit background conventions
that we adopt, in particular, whether our specification of a
signature is case-sensitive or not. In fact, we could adopt a
convention that was even more strict in how it individuates
signatures. For example, let $\Sigma ''$ be the signature
consisting of a binary relation symbol $r$. One could say that
$\Sigma ''$ is a different signature from $\Sigma$ because the $r$
in $\Sigma ''$ occurs at a different location on the page than the
$r$ that occurs in $\Sigma$. Of course, we would typically assume
that $\Sigma ''=\Sigma$, but such a claim depends on an implicit
background assumption that there is a single letter-form of which
the two occurences of $r$ are instances.
We will generally leave these implicit background assumptions
unmentioned. Indeed, to make these background assumptions explicit,
we would have to rely on further implicit background assumptions,
and we would never make progress in our study of first-order
logic.
\end{disc}
Let $\Sigma$ be a fixed signature. We first define the sets of
$\Sigma$-terms and $\Sigma$-formulas.
\begin{defn} We simultaneously define the set of
\textbf{$\Sigma$-terms}, and the set $FV(t)$ of \textbf{free
variables} of a $\Sigma$-term $t$ as follows:
\begin{enumerate}
\item If $x$ is a variable of $\Sigma$, then $x$ is a $\Sigma$-term
and $FV(x)=\{ x\}$.
\item If $f$ is a function symbol of $\Sigma$, and $t_1,\dots ,t_n$
are $\Sigma$-terms, then $f(t_1,\dots ,t_n)$ is a $\Sigma$-term
and
$$ FV(f(t_1,\dots ,t_n)) \: := \: FV(t_1)\cup\cdots\cup FV(t_n) .$$ \end{enumerate}
\end{defn}
\begin{defn} We simultaneously define the set of
\textbf{$\Sigma$-formulas}, and the set $FV(\vp )$ of free variables
of each $\Sigma$-formula $\vp$ as follows:
\begin{enumerate}
\item $\bot$ is a formula and $FV(\bot )=\emptyset$.
\item If $r$ is an $n$-ary relation symbol in $\Sigma$, and
$t_1,\dots ,t_n$ are terms, then $r(t_1,\dots ,t_n)$ is a formula
and
$$ FV(r(t_1,\dots ,t_n)) \: := \: FV(t_1)\cup\cdots\cup FV(t_n) .$$
\item If $\phi$ and $\psi$ are formulas, then $\phi\wedge \psi$ is a
formula with $FV(\vp\wedge\psi )=FV(\vp )\cup FV(\psi )$. Similarly
for the other Boolean connectives $\neg ,\vee,\to$.
\item If $\vp$ is a formula, then so is $\exists x\vp$ and
$FV(\exists x\vp )=FV(\vp )\backslash \{ x\}$. Similarly for
$\forall x\vp$. \end{enumerate} A formula $\vp$ is called
\emph{closed}, or a \emph{sentence}, if $FV(\vp
)=\emptyset$. \end{defn}
A more fully precise definition of $\Sigma$-formulas would take into
account the precise location of parentheses. For example, we would
want to say that $(\vp\wedge \psi )$ is a $\Sigma$-formula when $\vp$
and $\psi$ are $\Sigma$-formulas. Nonetheless, we will continue to
allow ourselves to omit parentheses when no confusion is likely to
result.
\begin{note} Our definition of the set of formulas allows for
redundant quantification. For example, the string
$\exists x\forall x(x=x)$ is well-formed formula according to our
definition. This formula results from applying the quantifier
$\exists x$ to the sentence $\forall x(x=x)$. We will have to be
careful in our definition of derivation rules, and semantic rules,
to take the case of empty quantification into account.
\end{note}
\begin{defn} The \textbf{elementary formulas} are those of the form
$r(t_1,\dots ,t_n)$, i.e.\ formulas that involve no Boolean
connectives or quantifiers. \end{defn}
It is helpful to think of formulas in terms of their \textbf{parse
trees.} For example, the formula
$\forall x\exists y(r(x,x)\to r(x,y))$ has the following parse tree:
\bigskip \begin{tikzpicture}[level distance=1.5cm,
level 1/.style={sibling distance=3cm},
level 2/.style={sibling distance=1.5cm}]
\node {$\forall x\exists y(r(x,x)\to r(x,y))$}
child {node {$\exists y(r(x,x)\to r(x,y))$}
child {node {$r(x,x)\to r(x,y)$}
child {node {$r(x,x)$}}
child {node {$r(x,y)$}}}};
\end{tikzpicture}
\noindent The bottom nodes must each be elementary formulas, i.e.\
either $\bot$, or a relation symbol followed by the appropriate number
of terms. Each parent-child relationship in the tree corresponds to
one of the Boolean connectives or to one of the quantifiers.
Formulas stand in one-to-one correspondence with parse trees: each
well-formed tree ends with a specific formula, and no other tree
yields the same formula. Using the identity of formulas and parse
trees, we can easily define a few further helpful notions:
\begin{defn} Let $\vp$ be a $\Sigma$-formula. The family of
\textbf{subformulas} of $\vp$ consists of all those formulas that
occur at some node in its parse tree. \end{defn}
\begin{defn} If a quantifier $\exists x$ occurs in the formula $\vp$,
then the \textbf{scope} of that occurrence is the formula which
occurs at the immediately previous node in the parse
tree. \end{defn}
For example, in the formula $\forall x\exists y(r(x,x)\to r(x,y))$,
the scope of $\exists y$ is the formula $r(x,x)\to r(x,y)$. In
contrast, in the formula $\forall x(r(x,x)\to \exists yr(x,y))$, the
scope of $\exists y$ is the formula $r(x,y)$.
We can now make the notion of free and bound variables even more
precise. In particular, each individual occurrence of a variable in
$\vp$ is either free or bound. For example, in the formula
$p(x)\wedge \exists xp(x)$, $x$ occurs freely in the first subformula,
and bound in the second subformula.
\begin{defn}[Free and bound occurrences] An occurence of a variable
$x$ in $\vp$ is \textbf{bound} just in case that occurrence is
within the scope of either $\forall x$ or $\exists x$. Otherwise
that occurence of $x$ is free. \end{defn}
We could now perform a sanity check to make sure that our two notions
of bound/free variables coincide with each other.
\begin{fact} A variable $x$ is free in $\vp$ (in the sense of the
definition of $\Sigma$-formulas) if and only if there is a free
occurence of $x$ in $\vp$ (in the sense that this occurence does not
lie in the scope of any corresponding quantifier). \end{fact}
It is also sometimes necessary to distinguish particular occurrences
of a subformula of a formula, and to define the \textbf{depth} at
which such an instance occurs.
\begin{defn} Let $\psi$ be a node in the parse tree of $\vp$. The
\textbf{depth} of $\psi$ is the number of steps from $\psi$ to the
root node. We say that $\psi$ is a \textbf{proper subformula} of
$\vp$ if $\psi$ occurs with depth greater than $0$. \end{defn}
The parse trees of formulas are finite, by definition. Therefore, the
depth of every occurrence of a subformula of $\vp$ is some finite
number.
There are a number of other properties of formulas that are definable
in purely syntactic terms. For example, we could define the
\textbf{length} of a formula. We could then note that the connectives
take formulas of a certain length and combine them to create formulas
of a certain greater length.
\begin{exercise} Show that no $\Sigma$-formula can occur as a proper
subformula of itself. \end{exercise}
% We can give a more precise definition of the structure of a
% $\Sigma$-formula by making use of the notion of a \emph{list} of
% formulas.
% \begin{defn} The family of \emph{lists} of formulas is defined by the
% following conditions:
% \begin{enumerate}
% \item If $\vp _1,\dots ,\vp _n$ are formulas, then
% $\langle \vp _1 , \cdots , \vp _n\rangle$ is a list.
% \item If $\sigma _1,\dots ,\sigma _n$ are either formulas or lists
% of formulas, then $\langle \sigma _1 , \cdots ,\sigma _n\rangle$
% is a list. \end{enumerate}
% \end{defn}
% A typical list of formulas looks something like this:
% \[ \langle \vp _1 ,\langle \vp _2 ,\vp _1 \rangle ,\vp _3 \rangle .\]
% We are especially interested in lists of formulas such as:
% \[ \langle \vp _1\wedge \vp _2,\langle \vp _1\rangle ,\langle \vp
% _2\rangle \rangle .\] Here the first item is a Boolean combination,
% the second item is a list with one entry (the first conjunct), and the
% third item is a list with one entry (the second conjunct).
% \begin{defn} Given a list $\sigma$, we let $\sigma _i$ denote the
% $i$-th entry. Note that $\sigma _i$ could be another list, or it
% could be a formula. \end{defn}
% \begin{defn} We define the family of \emph{f-lists} of formulas as
% follows: \begin{enumerate}
% \item If $\vp$ is an atomic formula, then $\langle\vp\rangle$ is an
% f-list.
% \item If $\sigma$ and $\tau$ are f-lists such that $\sigma _1$ and
% $\tau _1$ are formulas, then
% $\langle \sigma _1\wedge \tau _1,\sigma ,\tau \rangle$ is an
% f-list.
% \item Similar clauses for the other Boolean connectives.
% \item If $\sigma$ is an f-list such that $\sigma _1$ is a formula,
% then $\langle \forall x\sigma _1 ,\sigma \rangle$ is an f-list.
% \item A similar clause for $\exists x$.
% \end{enumerate}
% \end{defn}
% \begin{prop} There is a one-to-one correspondence between formulas
% and f-lists of formulas. In particular, for each formula $\vp$,
% there is a unique f-list $\sigma$ such that $\sigma
% _1=\vp$. \end{prop}
% \begin{proof} Define a function $f$ from formulas to f-lists
% by: \begin{enumerate}
% \item $f(\vp )=\langle\vp\rangle$ for $\vp$ atomic.
% \item
% $f(\vp\wedge\psi )=\langle\vp\wedge\psi,f(\vp ),f(\psi
% )\rangle$, and similarly for the other Boolean connectives.
% \item $f(\forall x\vp)=\langle\forall x\vp ,f(\vp )\rangle$, and
% similarly for $\exists x\vp$.
% \end{enumerate}
% Then $f(\vp )_1=\vp$, from which it follows that $f$ is injective.
% We now show that $f$ is surjective, by induction on the
% construction of f-lists. Base case: if
% $\sigma =\langle \vp\rangle$, for $\vp$ an atomic formula, then
% $\sigma =f(\vp )$.
% Inductive step: assume that
% $\sigma = \langle \vp\wedge\vp ',\tau ,\tau '\rangle$, where
% $\tau$ and $\tau '$ are f-lists in the image of the function
% $f$. Let $\tau$ and $\tau '$ be formulas such that
% $\tau =f(\theta )$ and $\tau '=f(\theta ')$. By the
% definition of $f$, $\tau _1=\theta$ and $\tau '_1=\theta '$.
% By the definition of f-lists, $\vp = \tau _1$ and
% $\vp '=\tau '_1$. Thus, $\theta =\vp$ and $\theta '=\vp '$,
% from which it follows that
% \[ \sigma \:=\: \langle \vp\wedge\vp',f(\vp ),f(\vp ')\rangle
% \:=\: f(\vp\wedge \vp ') .\] The remaining inductive steps
% are similar, and we leave them to the reader. \end{proof}
% \begin{disc} In any f-list
% $\sigma = \langle \vp ,\dots \rangle$, the angle brackets are
% balanced. What's more, any formula $\psi$ that occurs in
% $\sigma$ is surrounded by $n$ pairs $\langle\cdot\rangle$, for
% some $n\geq 1$. Then $n-1$ is the \emph{depth} of this
% occurence of $\psi$ in $\vp$. \end{disc}
% %% Example proofs by induction on construction?
% [[TO DO: move]] Any time we define a set inductively, we have a
% corresponding method of proof by induction. In this case, we
% can prove that a property $\mathbb{P}$ holds for all
% $\Sigma$-formulas by showing that $\mathbb{P}$ holds for all
% elementary $\Sigma$-formulas, and that $\mathbb{P}$ is preserved
% by the various operations that allow us to construct more
% complex $\Sigma$-formulas. What is a bit more difficult in this
% case is proving that some property holds of all
% $\Sigma$-sentences, when that property does not hold of all
% $\Sigma$-formulas. In such cases, we'll have to look for a
% clever way to modify the standard sort of proof by induction.
%% TO DO: define the notation $\vp [t/x]$
We now define a substitution operation $\vp\mapsto \vp [t/x]$ on
formulas, where $t$ is a fixed term, and $x$ is a fixed variable. The
intention here is that $\vp [t/x]$ results from replacing all free
occurrences of $x$ in $\vp$ with $t$. We first define a corresponding
operation on terms.
\begin{defn} Let $t$ be a fixed term, and let $x$ be a fixed variable.
We define the operation $s\mapsto s[t/x]$, where $s$ is an arbitrary
term, as follows:
\begin{enumerate}
\item If $s$ is a variable, then $s[t/x]\equiv s$ when
$s\not\equiv x$, and $s[t/x]\equiv t$ when $s\equiv x$. (Here
$\equiv$ means literal identity of strings of symbols.)
\item Suppose that $s\equiv f(t_1,\dots ,t_n)$, where $f$ is a function
symbol and $t_1,\dots ,t_n$ are terms. Then we define
\[ s[t/x] \: \equiv \: f(t_1[t/x],\dots ,t_n[t/x]) .\] This
includes the special case where $f$ is a $0$-ary function symbol,
where $f[t/x]\equiv f$.
\end{enumerate}
\end{defn}
\begin{defn} Let $t$ be a fixed term, and let $x$ be a fixed variable.
We define the operation $\vp\mapsto \vp [t/x]$, for $\vp$ an
arbitrary formula, as follows:
\begin{enumerate}
\item For the proposition $\bot$, let $\bot [t/x]:=\bot$.
\item For an elementary formula $r(t_1,\dots ,t_n)$, let
\[ r(t_1,\dots ,t_n)[t/x] \: := \: r(t_1[t/x],\dots ,t_n[t/x]) .\]
\item For a Boolean combination $\vp\wedge\psi$, let
\[ (\vp\wedge\psi )[t/x] \: : = \: \vp [t/x]\wedge \psi [t/x] ,\]
and similarly for the other Boolean connectives.
\item For an existentially quantified formula $\exists y\vp$, let
\[ (\exists y\vp )[t/x] := \left\{ \begin{array}{l l} \exists y(\vp
[t/x]) & \text{if}\; x\not\equiv y , \\
\exists y\vp & \text{if}\;
x\equiv y
.\end{array}
\right. \]
\item For a universally quantifier formula $\forall y\vp$, let \[ (\forall y\vp )[t/x] := \left\{ \begin{array}{l l}
\forall y(\vp
[t/x]) & \text{if}\; x\not\equiv y , \\
\forall y\vp & \text{if}\;
x\equiv y
.\end{array}
\right. \]
\end{enumerate}
\end{defn}
\begin{prop} For any formula $\vp$, the variable $x$ is not free in
$\vp [y/x]$. \end{prop}
\begin{proof} We first show that $x\not\in FV(t[y/x])$ for any term
$t$. That result follows by a simple induction on the construction
of terms.
Now let $\vp$ be an elementary formula. That is,
$\vp =r(t_1,\dots ,t_n)$. Then we have
\[ \begin{array}{l l l} FV(\vp [y/x]) & = & FV(r(t_1,\dots ,t_n)[y/x]) \\
&=& FV(r(t_1[y/x],\dots ,t_n[y/x])) \\
&=& FV(t_1[y/x])\cup\cdots\cup
FV(t_n[y/x])
.\end{array} \] %%
Since $x\not\in FV(t_i[y/x])$,
for $i=1,\dots ,n$, it follows
that $x\not\in FV(\vp [y/x])$.
The argument for the Boolean connectives is trivial, so we turn to the
argument for the quantifiers. Suppose that the result is true for
$\vp$. We need to show that it's also true for $\exists v\vp$.
Suppose first that $v\equiv x$. In this case we have
\[ (\exists v\vp )[y/x] = (\exists x\vp )[y/x] = \exists x\vp .\]
Since $x\not\in FV(\exists x\vp )$, it follows that $x\not\in
FV((\exists v \vp )[y/x])$. Suppose now that $v\not\equiv x$. In
this case we have
\[ (\exists v\vp )[y/x] = \exists v(\vp [y/x]) .\] Since
$x\not\in FV(\vp [y/x])$, it follows then that
$x\not\in FV((\exists v\vp )[y/x])$. The argument is analogous for the
quantifier $\forall v$. Therefore, for any formula $\vp$, the
variable $x$ is not free in $\vp [y/x]$.
\end{proof}
%% Things still to prove
%% 1. Substitution in the formula
%% \vp \vdash \psi -- can switch out the free variables
%% 2. Alpha equivalence
\section{Deduction rules}
We suppose again that $\Sigma$ is a fixed signature. The goal now is
to define a relation $\Gamma \vdash \vp$ of derivability, where
$\Gamma$ is a finite sequence of $\Sigma$-formulas, and $\vp$ is a
$\Sigma$-formula. Our derivation rules come in three groupings: rules
for the Boolean connectives, rules for the $\bot$ symbol, and rules
for the quantifiers.
\subsection*{Boolean connectives}
We carry over all of the rules for the Boolean connectives from
propositional logic (see Section \ref{sec:pt}). These rules require
no special handling of variables. For example, the following is a
valid instance of $\wedge$-elim:
\[ \begin{array}{l}
\Gamma \RA \vp (x)\wedge \psi (y) \\
\hline \Gamma \RA \vp (x) \end{array} \]
\subsection*{Falsum}
We intend for the propositional constant $\bot$ to serve as shorthand
for ``the false.'' To this end, we define its introduction and
elimination rules as follows.
\bigskip \begin{tabular}{c c c } \begin{tabular}{|l l |} \hline \textbf{$\bot$ intro}
& \begin{tabular}{l}
$\Gamma \RA \vp\wedge \neg \vp$ \\
\hline $\Gamma \RA \bot $ \end{tabular} \\
\hline \end{tabular}
& & \begin{tabular}{|l l |} \hline \textbf{$\bot$ elim} & \begin{tabular}{l}
$\Gamma \RA \bot $ \\
\hline $\Gamma \RA \vp
$ \end{tabular} \\
\hline \end{tabular} \end{tabular}
\subsection*{Quantifiers}
In order to formulate good derivation rules for the quantifiers, we
have to make a couple of strategic choices. In actual mathematical
practice, mathematicians simply introduce new vocabulary whenever they
need it. In some cases, new vocabulary is introduced by way of
definition --- for example, when a mathematician says something like,
``we say that a number $x$ is \textit{prime} just in case \dots '',
where the words following the dots refer to previously understood
mathematical concepts. In other cases, the newly introduced
vocabulary is really just newly introduced notation --- for example,
when a mathematician says something like, ``let $n$ be a natural
number.'' In this latter case, the letter ``$n$'' wasn't a part of
the original vocabulary of the theory of arithmetic, and was
introduced as a matter of notational convenience.
Nonetheless, for our purposes it will be most convenient to have a
fixed vocabulary $\Sigma$ for a theory. But this means that if
$\Sigma$ has no constant symbols, then we might have trouble making
use of the quantifier introduction and elimination rules. For
example, imagine trying to derive a theorem in the theory of Boolean
algebras is you weren't permitted to say, ``let $a$ be an arbitrary
element of the Boolean algebra $B$.'' In order to simulate
mathematics' free use of new notation, we'll simply be a bit more
liberal in the way that we allow free variables to be used. To this
end, we define the following notion:
\begin{defn} We say that \emph{$t$ is free for $x$ in $\vp$} just in
case one of the following conditions holds:
\begin{enumerate}
\item $\vp$ is atomic, or
\item $\vp$ is a Boolean combination of formulas, in each of which
$t$ is free for $x$, or
\item $\vp:=\exists y\psi$, and $y\not\in FV(t)$, and $t$ is free
for $x$ in $\psi$, where $x\neq y$. \end{enumerate} \end{defn}
Intuitively speaking, $t$ is free for $x$ in $\vp$ just in case
substituting $t$ in for $x$ in $\vp$ does not result in any of the
variables in $t$ being captured by quantifiers. For example, in the
formula $p(x)$, the variable $y$ is free for $x$ (since $y$ is free in
$p(y)$). In contrast, in the formula $\exists yp(x)$, the variable
$y$ is not free for $x$ (since $y$ is not free in $\exists yp(y)$).
We will need this notion in order to coordinate our intro and elim
rules for the quantifiers. For example, the rule of $\forall$-elim
should say something like: $\forall x\vp (x)\vdash \vp (y)$. However,
if this rule were not restricted in some way, then it would yield
\[ \forall x\exists y(x\neq y) \: \vdash \: \exists y(y\neq y) ,\]
which is intuitively invalid.
\begin{figure}[H]
\begin{tabular}{|l l l|}
\hline \textbf{$\forall$ intro}
& \makecell[l]{ $\Gamma \: \vdash \:
\vp$ \\ \hline $\Gamma \: \vdash \: \forall x\vp$ }
& \makecell[l]{\small where $x$ is not free in $\Gamma$.} \\ \hline \end{tabular}
\bigskip \begin{tabular}{|l l l|} \hline
\textbf{$\forall$ elim} & \makecell[l]{
$\Gamma \: \vdash \: \forall x\vp$ \\ \hline
$\Gamma \: \vdash \: \vp [t/x]$ } & \makecell[l]{\small where $t$
is free for $x$.} \\ \hline
\end{tabular} \end{figure}
The $\forall$-intro rule is easy to apply, for we only need to check
that the variable $x$ doesn't occur in the assumptions $\Gamma$ from
which $\vp$ is derived. Note that application of the $\forall$-intro
rule can result in empty quantification; so example,
$\forall x\forall xp(x)$ follows from $\forall xp(x)$.
To understand the restrictions on $\forall$-elim, note that it does
license
\[ \forall x\, r(x,x) \: \vdash \: r(y,y) , \]
since $r(x,x)[y/x]\equiv r(y,y)$. In contrast, $\forall$-elim does not license
\[ \forall x\,r(x,x) \: \vdash \: r(x,y) , \] since it is not the case
that $r(x,x)[y/x]\equiv r(x,y)$. Similarly, $\forall$-elim does not
license
\[ \forall x\exists y\,r(x,y) \: \vdash \: \exists y\,r(y,y) ,\] since
$y$ is not free for $x$ in $\exists y\,r(x,y)$. Finally,
$\forall$-elim permits universal quantifiers to be peeled off when
they don't bind any variables. For example, $\forall x\,p\vdash p$ is
licensed by $\forall$-elim.
Now we turn to the rules for the existential quantifier. First we
state the rules in all their sequential glory:
\begin{figure}[H]
\begin{tabular}{|l l l|} \hline \textbf{$\exists$ intro} &
\makecell[l]{ $\Gamma \: \vdash \: \vp [t/x]$ \\ \hline
$\Gamma \: \vdash \: \exists x\vp $ } & \makecell[l]{\small
provided $t$ is
free for $x$ in $\vp$.} \\
\hline \end{tabular}
\bigskip \begin{tabular}{|l l l|} \hline
\textbf{$\exists$ elim} & \makecell[l]{
$\Gamma ,\vp \:\vdash \: \psi $ \\
\hline $\Gamma ,\exists x\vp \: \vdash \: \psi$ } &
\makecell[l]{\small
provided $x$
is not free in
$\psi$ or
$\Gamma$.} \\
\hline \end{tabular} \end{figure}
If we omit the use of auxiliary assumptions, we can rewrite the
$\exists$ rules as follows:
\begin{figure}[H]
\begin{tabular}{|l l l|} \hline \textbf{$\exists$ intro} &
\makecell[l]{ $\vdash \: \vp [t/x]$ \\ \hline
$\vdash \: \exists x\vp $ } & {\small
provided $t$ is
free for $x$ in $\vp$.}
\\ \hline \end{tabular}
\bigskip \begin{tabular}{|l l l|} \hline
\textbf{$\exists$ elim} & \makecell[l]{
$\vp \:\vdash \: \psi $ \\
\hline $\exists x\vp \: \vdash \: \psi$ } &
\makecell[l]{\small
provided $x$
is not
free in
$\psi$.}
\\ \hline \end{tabular} \end{figure}
Again, let's look at some examples to illustrate the restrictions.
First, in the case of the $\exists$-intro rule, suppose that there
were no restriction on the term $t$. Let $\vp$ be the formula
$\forall y\,r(x,y)$, and let $t$ be the variable $y$, in which case
$\vp [t/x]\equiv \forall y\,r(y,y)$. Then the $\exists$-in rule would
yield
\[ \forall y\,r(y,y) \: \vdash \: \exists x\forall y\,r(x,y ), \]
which is intuitively invalid. (Consider, for example, the case where
$r$ is the relation $\leq$ on integers.) The problem, of course, is
that the variable $y$ is captured by the quantifier $\forall y$ when
substituted into $\vp$. Similarly, in the case of the $\exists$-elim
rule, if there were no restriction on the variable $x$, then we could
derive $\vp$ from $\exists x\vp$, and then using $\forall$-intro, we
could derive $\exists x\vp\vdash \forall x\vp$.
\subsection*{Structural rules}
In any proof system, there are some more or less tacit rules that
arise from how the system is set up. For example, when someone learns
natural deduction, e.g.\ via the system presented in Lemmon's {\it
Beginning Logic}, then she will tacitly assume that she's allowed to
absorb dependencies, e.g.\ if $\phi ,\phi\vdash \psi$ then
$\phi \vdash \psi$. These more or less tacit rules are called
\emph{structural rules} of the system --- and there is a lot of
interesting research on logical systems that drop one or more of these
structural rules \cite[see][]{restall}. In this book, we stay within
the confines of classical first-order logic; and we will not need to
be explicit about the structural rules, except for the rule of
\emph{cut}, which allows sequents to be combined. Loosely speaking,
cut says that if you have sequents $\Gamma \vdash \phi$ and
$\Delta ,\phi\vdash \psi$, then you may derive the sequent
$\Gamma ,\Delta \vdash \psi$.
As was the case with propositional logic, we will not specify a
canonical way of writing predicate logic proofs. After all, our goal
here is not to teach you the art of logical deduction; rather, our
goal is to reflect on the relations between theories in formal logic.
\subsection*{Equality}
As we mentioned before, there's something of a philosophical debate
about whether the equality symbol $=$ should be considered as part of
the logical or the non-logical vocabulary of a theory. We don't want
to get tangled up in that argument, but we do wish to point out how
the axioms for equality compare to the axioms for a generic
equivalence relation.
It is typical to write down two axioms for equality, an introduction
and an elimination rule. Equality introduction permits $\vdash t=t$
with any term $t$. Equality elimination permits
\[ \begin{array}{c c} t=s \quad \vp [t/s] \\ \hline \vp
\end{array} \] so long as $t$ is free for $s$ in $\vp$. Note that equality elimination allows us to
replace single instances of a term. For example, if we let $\vp$
be the formula $r(s,t)$, then $\vp [t/s]$ is the formula $r(t,t)$.
Hence from $t=s$ and $r(t,t)$, equality elimination permits us to
derive $r(s,t)$.
From the equality axioms, we can easily show that it's an equivalence
relation. The introducton rule shows that it's reflexive. For
symmetry, we let $\vp$ be the formula $y=x$, in which case
$\vp [x/y]$ is the formula $x=x$. Thus, we have
\[ \begin{array}{c c} x=y\quad x=x \\ \hline y=x \end{array} \]
For transitivity, let $\vp$ be the formula $x=z$, in which case
$\vp [y/x]$ is the formula $y=z$. Thus, we have
\[ \begin{array}{c c} y=x\quad y=z \\ \hline x=z \end{array} \]
This completes the list of the proof rules for our system of
first-order logic, i.e.\ our definition of the relation $\vdash$.
Before proceeding to investigate the properties of this relation,
let's see a couple of examples of informal proofs.
\begin{example} Let's show that
$\exists x(\vp (x)\wedge \psi (x))\vdash \exists x\vp (x)$.
First note that $\vp (x)\wedge \psi (x)\vdash \vp (x)$ from
$\wedge$-elim. Then
$\vp (x)\wedge \psi (x)\vdash \exists x\vp (x)$ from
$\exists$-intro. Finally, since $\exists x\vp (x)$ contains no
free occurrences of $x$, we have
$\exists x(\vp (x)\wedge \psi (x))\vdash \exists x\vp
(x)$. \end{example}
\begin{example} Of course we should have
$\forall x\vp \vdash \forall y(\vp [y/x])$, so long as $y$ is
free for $x$ in $\vp$. Using the rules we have, we can derive
this result in two steps. First, we have
$\forall x\vp (x)\vdash \vp [y/x]$ from $\forall$-elim, and then
$\vp [y/x]\vdash \forall y\vp [y/x]$ by $\forall$-intro. We only
need to verify that $x$ is not free in $\vp [y/x]$. This can be
shown by a simple inductive argument. \end{example}
% \begin{prop} For any formula $\vp$, the variable $x$ is not free in
% $\vp [y/x]$. \end{prop}
% \begin{proof} We first show that $x\not\in FV(t[y/x])$ for any term
% $t$. That result follows by a simple induction on the construction
% of terms.
% Now let $\vp$ be an elementary formula. That is,
% $\vp =r(t_1,\dots ,t_n)$. Then we have
% \[ \begin{array}{l l l} FV(\vp [y/x]) & = & FV(r(t_1,\dots ,t_n)[y/x]) \\
% &=& FV(r(t_1[y/x],\dots ,t_n[y/x])) \\
% &=& FV(t_1[y/x])\cup\cdots\cup
% FV(t_n[y/x])
% .\end{array} \] %%
% Since $x\not\in FV(t_i[y/x])$,
% for $i=1,\dots ,n$, it follows
% that $x\not\in FV(\vp [y/x])$.
% The argument for the Boolean connectives is trivial, so we turn to the
% argument for the quantifiers. Suppose that the result is true for
% $\vp$. We need to show that it's also true for $\exists v\vp$.
% Suppose first that $v\equiv x$. In this case we have
% \[ (\exists v\vp )[y/x] = (\exists x\vp )[y/x] = \exists x\vp .\]
% Since $x\not\in FV(\exists x\vp )$, it follows that $x\not\in
% FV((\exists v \vp )[y/x])$. Suppose now that $v\not\equiv x$. In
% this case we have
% \[ (\exists v\vp )[y/x] = \exists v(\vp [y/x]) .\] Since
% $x\not\in FV(\vp [y/x])$, it follows then that
% $x\not\in FV((\exists v\vp )[y/x])$. The argument is analogous for the
% quantifier $\forall v$. Therefore, for any formula $\vp$, the
% variable $x$ is not free in $\vp [y/x]$.
% \end{proof}
%% TO DO: talk about Tarski point -- that theories aren't closed just
%% under deduction, but also conceptually, i.e. by taking definitions
%% TO DO: a philosophical reflection on definition
Recall that propositional logic is compositional in the following
sense: Suppose that $\vp$ is a formula, and $\psi$ is a subformula of
$\vp$. Let $\vp '$ denote the result of replacing $\psi$ in $\vp$
with another formula $\psi '$ where
$\vdash \psi\leftrightarrow \psi '$. Then
$\vdash \vp\leftrightarrow \vp '$. That result is fairy easy to prove
by induction on the construction of proofs. It also follows from the
truth-functionality of the Boolean connectives, by means of the
completeness theorem. In this section, we are going to prove an
analogous result for predicate logic. To simplify notation, we
introduce the following:
\begin{defn} For formulas $\vp$ and $\psi$, we say that $\vp$ and
$\psi$ are \emph{logically equivalent}, written $\vp\simeq\psi$,
just in case both $\vp\vdash\psi$ and $\psi\vdash\vp$.
\end{defn}
It is not hard to show that $\simeq$ is an equivalence relation on the
set of formulas. Note that formulas $\vp$ and $\psi$ can be
equivalent in this sense even if they don't share all free variables
in common --- as long as the non-matching variables occur vacuously.
For example, $p(x)$ is equivalent to $p(x)\wedge (y=y)$, and it's also
equivalent to $p(x)\vee (y\neq y)$. [The issue here has nothing in
particular to do with the equality relation. The variable $y$ also
occurs vacuously in $p(y)\vee \neg p(y)$.] In contrast, the formulas
$p(x)$ and $p(y)$ are not equivalent (in the empty theory), since it's
not universally valid that
$\vdash \forall x\forall y(p(x)\leftrightarrow p(y))$.
\begin{lemma} The relation $\simeq$ is compatible with the Boolean
connectives in the following sense: if $\phi\simeq\phi '$ and
$\psi\simeq \psi '$, then
$(\phi\wedge \psi )\simeq (\phi '\wedge \psi ')$, and similarly for
the other Boolean connectives. \end{lemma}
The proof of this lemma is a fairly simple application of the
introduction and elimination rules for the connectives. To complete
the proof of the replacement theorem, we need one more lemma.
\begin{lemma} If $\vp\simeq \psi$ then
$\exists x\vp\simeq \exists x\psi$. \end{lemma}
\begin{proof} Suppose that $\vp\simeq\psi$, which means that
$\vp\vdash \psi$ and $\psi\vdash \vp$. We're now going to show that
$\exists x\vp\vdash\exists x\psi$. By $\exists$-in we have
$\psi\vdash \exists x\psi$, hence by cut we have
$\vp\vdash\exists x\psi$. Since $x$ does not occur free in
$\exists x\psi$, we have $\exists \vp\vdash \exists x\psi$ by
$\exists$-out. \end{proof}
%% TO DO: fix this
\begin{thm}[Replacement] Suppose that $\vp$ is a formula in which
$\psi$ occurs as a subformula, and $\vp '$ is the result of
replacing $\psi$ with $\psi '$. If $\psi \simeq \psi '$ then
$\vp \simeq \vp '$.
\end{thm}
In most presentations of the predicate calculus (i.e.\ the definition
of the relation $\vdash$) the two central results are the soundness
and completeness theorems. Intuitively speaking, the soundness
theorem shows that the definition doesn't overgenerate, and the
completeness theorem shows that it doesn't undergenerate. However, in
fact, these results show something quite different --- they show that
the definition of $\vdash$ matches the definition of another relation
$\vDash$. We will discuss this other relation $\vDash$ in Chapter
\ref{chap-sem}, where we will also prove the traditional soundness and
completeness theorems. In the remainder of this section, we show that
the predicate calculus is consistent in the following purely syntactic
sense.
\begin{defn} We say that the relation $\vdash$ is \emph{consistent}
just in case there is some formula $\phi$ that is not provable.
Similarly, we say that a theory $T$ is \emph{consistent} just in
case there is a formula $\phi$ such that
$T\not\vdash\phi$. \end{defn}
Note that the definition of consistency for $\vdash$ presupposes a
fixed background signature $\Sigma$.
\begin{prop} A theory $T$ is consistent iff
$T\not\vdash\bot$. \end{prop}
\begin{proof} If $T$ is inconsistent then $T\vdash\phi$ for all
formulas $\phi$. In particular, $T\vdash \bot$. Conversely, if
$T\vdash\bot$, then RA and DN yield $T\vdash\phi$ for any formula
$\phi$. \end{proof}
%% TO DO: here I should have the van Dalen proof
\begin{thm} The predicate calculus is consistent. \end{thm}
%% TO DO: I would like to inspect this theorem more closely.
\begin{proof} Let $\Sigma$ be a fixed predicate logic signature, and
let $\Sigma '$ be a propositional signature whose cardinality is
greater than or equal to that of $\Sigma$. We will use the symbol
$\vdash ^*$ to denote derivability in the propositional calculus.
Define a map $\vp\mapsto\vp ^*$ from the formulas of $\Sigma$ to the
formulas of $\Sigma '$ as follows:
\begin{itemize}
\item $\bot ^*=\bot$
\item For any terms $t_1,\dots ,t_n$,
$(p_i(t_1,\dots ,t_{n_i}))^*=q_i$.
\item $(\vp\wedge\psi )^*=\vp ^*\wedge \psi ^*$, and similarly for the
other Boolean connectives.
\item $(\forall x\vp )^*=\vp ^*$ and $(\exists x\vp )^*=\vp ^*$.
\end{itemize}
We now use induction on the definition of $\vdash$ to show that if
$\Gamma\vdash\vp$ then $\Gamma ^*\vdash ^*\vp ^*$. We will provide a
few representative steps, and leave it to the reader to supply the
others.
\begin{itemize}
\item The base case, rule of assumptions, is trivial.
\item Consider the case of $\wedge$-out. Suppose that
$\Gamma\vdash\vp$ follows from $\Gamma\vdash\vp\wedge\psi$ by
$\wedge$-out. By the inductive hypothesis,
$\Gamma ^*\vdash ^*(\vp\wedge\psi )^*$. Using the definition of
$(\vp\wedge\psi )^*$, it follows that