-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path04-proofs.tex
1546 lines (1351 loc) · 80.3 KB
/
04-proofs.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{Models and Proofs}\label{ch:proofs}
\section{Soundness and completeness}
You may find that this chapter is harder and more abstract than the previous
chapters. Feel free to skip or skim it if you're mostly interested in
philosophical applications.
We have introduced several kinds of validity: S5-validity, K-validity,
T-validity, and so on. All of these are defined in terms of models. K-validity
means truth at all worlds in all Kripke models. T-validity means truth at all
worlds in all reflexive Kripke models. S5-validity means truth at all worlds in
all universal Kripke models (equivalently, at all worlds in all ``basic''
models). And so on.
If you want to show that a sentence is, say, K-valid, you could directly work
through the clauses of definition \ref{def:kripkesemantics}, showing that there
is no world in any Kripke model in which the sentence is false. The tree method
regiments and simplifies this process. If you construct a tree for your sentence
in accordance with the K-rules and all branches close, then the sentence is
K-valid. If some branch remains open, the sentence isn't K-valid.
Or so I claimed. But these claims aren't obvious. The tree rule for the diamond,
for example, appears to assume that if $\Diamond A$ is true at a world then $A$
is true at some accessible world \emph{that does not yet occur on the branch}.
Couldn't $\Diamond A$ be true because $A$ is true at an accessible ``old'' world
instead? Also, why do we expand $\Diamond A$ nodes only once? Couldn't $A$ be
true at multiple accessible worlds?
In the next two sections, we are going to lay any such worries to rest. We are
going to prove that (1) if all branches on a K-tree close then the target
sentence is K-valid; conversely, (2) if some branch on a fully developed K-tree
remains open, then the target sentence is not K-valid. (1) establishes the
\emph{soundness} of the tree rules for K, (2) establishes their
\emph{completeness}.
When you use the tree method, you don't have to think of what you are doing as
exploring Kripke models. I could have introduced the method as a purely
syntactic game. You start the game by writing down the negation of the target
sentence, followed by `(w)' (and possibly `1.' to the left and `(Ass.)' to the
right, although in this chapter we will mostly ignore these book-keeping
annotations.) Then you repeatedly apply the tree rules until either all branches
are closed or no rule can be applied any more. At no point in the game do you
need to think about what any of the symbols you are writing might mean.
Soundness and completeness link this syntactic game with the ``model-theoretic''
concept of validity. Soundness says that if the game leads to a closed tree (a
tree in which all branches are closed) then the target sentence is true at all
worlds in all models. Completeness says that if the game doesn't lead to a
closed tree then the target sentence is not true at all worlds in all models.
This is called completeness because it implies that every valid sentence can be
shown to be valid with the tree method.
In general, a proof method is called \textbf{sound} if everything that is
provable with the method is valid. A method is \textbf{complete} if everything
that is valid is provable. Strictly speaking, we should say that a method is
sound or complete \emph{for a given concept of validity}. The tree rules for K
are sound and complete for \emph{K-validity}, but not for T-validity or
S5-validity.
The tree method is not the only method for showing that a sentence is K-valid
(or T-valid, or S5-valid). Instead of constructing a K-tree, you could construct
an axiomatic proof, trying to derive the target sentence from some instances of
\pr{Dual} and \pr{K} by \pr{Nec} and \pr{CPL}. This, too, can be done as a
purely syntactic exercise, without thinking about models and worlds. In section
\ref{sec:scaxiomatic}, we will show that the axiomatic calculus for K is indeed
sound and complete for K-validity: all and only the K-valid sentences can be
derived from \pr{Dual} and \pr{K} by \pr{Nec} and \pr{CPL}. The `all' part is
completeness, the `only' part soundness. Having shown soundness and completeness
for both the tree method and the axiomatic method, we will have shown that the
two methods are equivalent. Anything that can be shown with one method can also
be shown with the other.
There are other styles of proof besides the axiomatic and the tree format. Two
famous styles that we won't cover are ``natural deduction'' methods and
``sequence calculi''. Logicians are liberal about what qualifies as a proof
method. The only non-negotiable condition is that there must be a mechanical way
of checking whether something (usually, some configuration of symbols) is or is
not a proof of a given target sentence.
\begin{exercise}\label{ex:proofmethods}
What do you think of the following proposals for new proof methods?
\begin{exlist}
\item In \emph{method A}, every $\L_{M}$-sentence is a proof of itself: To
prove an $\L_{M}$-sentence with this method, you simply write down the
sentence.
\item In \emph{method B}, every $\L_{M}$-sentence that is an instance of
$\Box(A \lor \neg A)$ is a proof of itself. Nothing else is a proof in
method B.
\item In \emph{method C}, a proof of a sentence $A$ is a list of
$\L_{M}$-sentences terminating with $A$ and in which every sentence occurs
in some logic textbook.
\end{exlist}
\medskip%
Which of these qualify as genuine proof methods by the criterion I have
described?
\end{exercise}
\begin{solution}
Methods A and B are genuine proof methods. Method C is not because there is no
simple mechanical check of whether a sentence occurs in some logic textbook.
\end{solution}
\begin{exercise}\label{ex:sillyproofmethod}
Which, if any, of the methods from the previous exercise are sound for
K-validity? Which, if any, are complete?
\end{exercise}
\begin{solution}
Method A is complete, but not sound. Everything that's K-valid is provable
with the method, but so is everything that's not K-valid.
Method B is sound, but not complete. Since every instance of
$\Box (A \lor \neg A)$ is K-valid, everything that is provable with method B
is K-valid. But many K-valid sentences (e.g., $p \to p$) aren't provable with
method B.
Method C is neither sound nor complete. It is not sound because many K-invalid
sentences figure in logic textbooks. It is not complete because there
are infinitely many K-valid sentences almost all of which don't occur in any
textbooks.
\end{solution}
% A set of sentences (system) is sometimes called complete iff there
% is a sound and complete proof method for it.
\section{Soundness for trees}%
\label{sec:soundnesstrees}
We are now going to show that the tree method for K is sound -- that every sentence
that can be proved with the method is K-valid. A proof in the tree method is a
tree in which all branches are closed. So this is what we have to show:
%
\begin{quote}
Whenever all branches on a K-tree close then the target sentence is K-valid.
\end{quote}
%
By a \emph{K-tree} I mean a tree that conforms to the K-rules from the previous
chapter.
I'll first explain the proof idea, then I'll fill in the details. We will assume
that there is a K-tree for some target sentence $A$ on which all branches close.
We need to show that $A$ is K-valid. To this end, we suppose for reductio that
$A$ is \emph{not} K-valid. By definition \ref{def:kvalid}, a sentence is K-valid
iff it is true at all worlds in all Kripke models. Our supposition that $A$ is
not K-valid therefore means that $A$ is false at some world in some Kripke
model. Let's call that world `$w$' and the model `$M$'. Note that the closed
tree begins with
\begin{center}
\tree{%
\nnode{12}{1.}{$\neg A$}{w}{}%
}
\end{center}
\noindent%
If we take the world variable `$w$' on the tree to pick out world $w$ in $M$,
then node 1 is a correct statement about $M$, insofar as $\neg A$ is indeed true
at $w$ in $M$. Now we can show the following:
\begin{quote}
\emph{If all nodes on some branch of a tree are correct statements about
$M$, and the branch is extended by the K-rules, then all nodes on at least
one of the resulting branches are still correct statements about $M$.}
\end{quote}
%
Since our closed tree is constructed from node 1 by applying the K-rules, it
follows that all nodes on some branch of the tree are correct statements about
$M$. But every branch of a closed tree contains a pair of contradictory
statements, which can't both be correct statements about $M$. This completes the
reductio.
Let's fill in the details. We first define precisely what it means for the
nodes on a tree branch to be correct statements about a model.
\begin{definition}{}{correctstatement}
A tree node is a \textbf{correct statement about} a Kripke model
$M = \t{M,R,V}$ \textbf{under} a function $f$ that maps world variables to
members of $W$ iff either the node has the form $\omega R \upsilon$ and
$f(\omega)Rf(\upsilon)$, or the node has the form $A\; (\omega)$ and $A$ is
true at $f(\omega)$ in $M$.
A tree branch \textbf{correctly describes} a model $M$ iff there is a function
$f$ under which all nodes on the branch are correct statements about $M$.
\end{definition}
% I don't like these labels, but can't think of better once.
We now prove the italicised statement above:
\begin{theorem}{Soundness Lemma}{soundnesslemma}
If some branch $\beta$ on a tree correctly describes a Kripke model $M$, and
the branch is extended by applying a K-rule, then at least one of the
resulting branches correctly describes $M$.
\end{theorem}
\begin{proof}
\emph{Proof:} We have to go through all the K-rules. In each case we assume
that the rule is applied to some node(s) on a branch $\beta$ that correctly
describes $M$, so that there is a function $f$ under which all nodes on
the branch are correct statements about $M$. We show that once the rule has
been applied, at least one of the resulting branches still correctly describes
$M$.
\medskip
\begin{itemize}
\itemsep1mm
\item Suppose $\beta$ contains a node of the form $A \land B \;(\omega)$ and
the branch is extended by two new nodes $A \;(\omega)$ and
$B \;(\omega)$. Since $A \land B \; (\omega)$ is a correct statement
about $M$ under $f$, we have $M,f(\omega) \models A \land B$. By
clause (c) of definition \ref{def:kripkesemantics}, it follows that
$M,f(\omega) \models A$ and $M,f(\omega) \models B$. So the extended
branch still correctly describes $M$.
\item Suppose $\beta$ contains a node of the form $A \lor B \;(\omega)$ and
the branch is split into two, with $A \;(\omega)$ appended to one end
and $B \;(\omega)$ to the other. Since the expanded node is a correct
statement about $M$ under $f$, we have $M,f(\omega) \models A \lor B$.
By clause (d) of definition \ref{def:kripkesemantics}, it follows that
either $M,f(\omega) \models A$ or $M,f(\omega) \models B$. So at least
one of the resulting branches also correctly describes $M$.
\end{itemize}
%
The proof for the other non-modal rules is similar. Let's look at the rules
for the modal operators.
\begin{itemize}
\itemsep1mm
\item Suppose $\beta$ contains nodes of the form $\Box A \;(\omega)$ and
$\omega R \upsilon$, and the branch is extended by adding
$A \;(\upsilon)$. Since $\Box A \;(\omega)$ and $\omega R \upsilon$
are correct statement about $M$ under $f$, we have
$M,f(\omega) \models \Box A$ and $f(\omega)Rf(\upsilon)$. By clause
(g) of definition \ref{def:kripkesemantics}, it follows that
$M,f(\upsilon) \models A$. So the extended branch correctly describes
$M$.
\item Suppose $\beta$ contains a node of the form $\Diamond A \;(\omega)$
and the branch is extended by adding nodes $\omega R \upsilon$ and
$A \;(\upsilon)$, where $\upsilon$ is new on the branch. Since
$\Diamond A \;(\omega)$ is a correct statement about $M$ under $f$, we
have $M,f(\omega) \models \Diamond A$. By clause (h) of definition
\ref{def:kripkesemantics}, it follows that $M,v \models A$ for some
$v$ in $W$ such that $f(\omega)Rv$. Let $f'$ be the same as $f$ except
that $f'(\upsilon) = v$. The newly added nodes are correct statements
about $M$ under $f'$. Since $\upsilon$ is new on the branch, all
earlier nodes on the branch are also correct statements about $M$
under $f'$. So the expanded branch correctly describes $M$.
% Note that f(w) may equal f(v). A reflexive model can be correctly
% described by a tree branch that contains no "reflexive" statements
% of the form wRw. As far as soundness is concerned, the rule for <>A
% doesn't assume that A is true at a "new world". The rule merely
% assumes that A is true at some world, for which we introduce a new
% name. That the world is genuinely new is only assumed when we
% read off countermodels.
\end{itemize}
%
The cases for $\neg \Box$ and $\neg \Diamond$ are similar to the previous two
cases. \qed
\end{proof}
\medskip
With the help of this lemma, we can prove that the method of K-trees is sound.
\begin{theorem}{Theorem: Soundness of K-trees}{soundness-tree-K}
If a K-tree for a target sentence closes, then the target sentence is K-valid.
\end{theorem}
\begin{proof}
\emph{Proof:} Suppose for reductio that some K-tree for some target sentence
$A$ closes even though $A$ is not K-valid. Then $\neg A$ is true at some world
$w$ in some Kripke model $M$. The first node on the tree, $\neg A \; (w)$, is
a correct statement about $M$ under the function that maps the world variable
`$w$' to $w$. Since the tree is created from the first node by applying the
K-rules, the Soundness Lemma implies that some branch $\beta$ on the tree
correctly describes $M$: all nodes on the tree are correct statements about
$M$ under some function $f$. But the tree is closed. This means that $\beta$
contains contradictory nodes of the form
\begin{center}
\tree{%
\nnode{12}{n.}{$B$}{\upsilon}{}\\
\nnode{12}{m.}{$\neg B$}{\upsilon}{}
}
\end{center}
If both of these are correct statements about $M$ under $f$, then
$M,f(\upsilon) \models B$ and also $M,f(\upsilon) \models \neg B$. This is
impossible by definition \ref{def:kripkesemantics}. \qed
\end{proof}
\begin{exercise}
Spell out the cases for $A \to B$ and $\neg\Diamond A$ in the proof of the
Soundness Lemma.
\end{exercise}
\begin{solution}
For $A\to B$: Suppose $\beta$ contains a node of the form $A \to B \;(\omega)$
and the branch is split into two, with $\neg A \;(\omega)$ appended to one end
and $B \;(\omega)$ to the other. Since the expanded node is a correct
statement about $M$ under $f$, we have $M,f(\omega) \models A \to B$. By
clause (e) of definition \ref{def:kripkesemantics}, it follows that either
$M,f(\omega) \not\models A$ or $M,f(\omega) \models B$. By clause (b), this
means that either $M,f(\omega) \models \neg A$ or $M,f(\omega) \models B$. So
at least one of the resulting branches also correctly describes $M$.
For $\neg\Diamond A$: Suppose $\beta$ contains nodes of the form
$\neg\Diamond A \;(\omega)$ and $\omega R \upsilon$, and the branch is
extended by adding $\neg A \;(\upsilon)$. Since $\neg\Diamond A \;(\omega)$
and $\omega R \upsilon$ are correct statement about $M$ under $f$, we have
$M,f(\omega) \models \neg\Diamond A$ and $f(\omega)Rf(\upsilon)$. By clause
(b) of definition \ref{def:kripkesemantics},
$M,f(\omega) \models \neg\Diamond A$ implies
$M,f(\omega) \not\models \Diamond A$. By clause (h), it follows that
$M,f(\upsilon) \models \neg A$. So the extended branch correctly describes
$M$.
\end{solution}
\begin{exercise}
Draw the K-tree for target sentence $\Box p$. The tree has a single open
branch. Does this branch correctly describe the Kripke model in which there is
just one world $w$, $w$ has access to itself, and all sentence letters are
false at $w$?
\end{exercise}
\begin{solution}
Yes. The function $f$ can map both `$w$' and `$v$' to $w$.
\end{solution}
The soundness proof for K-trees is easily adapted to other types of trees. The
tree rules for system T, for example, are all the K-rules plus the Reflexivity
rule, which allows adding $\omega R \omega$ for every world $\omega$ on the
branch. Suppose we want to show that everything that is provable with the
T-rules is T-valid -- true at every world in every reflexive Kripke model. All
the clauses in the Soundness Lemma still hold if we assume that the model $M$ is
reflexive. We only need to add a further clause for the Reflexivity rule, to
confirm that if a branch correctly describes a reflexive model $M$, and the
branch is extended by adding $\omega R \omega$, then the resulting branch also
correctly describes $M$. This is evidently the case.
\begin{exercise}
How would we need to adjust the soundness proof to show that the tree rules
for K4 are sound with respect to K4-validity?
\end{exercise}
\begin{solution}
A sentence is K4-valid iff it is true at all worlds in all transitive Kripke
models. We only need to check that the Transitivity rule is sound, in the
sense that if a branch correctly describes a transitive model $M$, and the
branch is extended by the Transitivity rule, then the resulting branch also
correctly describes $M$. (The Transitivity rule allows adding a node
$\omega R \upsilon$ to a branch that already contains nodes $\omega R \nu$ and
$\nu R \upsilon$. If these nodes correctly describe a transitive model then so does $\omega R \upsilon$.)
\end{solution}
\section{Completeness for trees}%
\label{sec:completenesstrees}
Let's now show that the tree rules for K are complete -- that whenever a sentence is
K-valid then there is a closed K-tree for that sentence. In fact, we will show
something stronger:
\begin{quote}
If a sentence is K-valid, then every fully developed K-tree for the sentence is closed.
\end{quote}
By a \emph{fully developed} tree, I mean a tree on which every node on any open
branch that can be expanded (in any way) has been expanded (in this way). A
fully developed tree may be infinite.
We will prove the displayed sentence by proving its contraposition:
\begin{quote}
If a fully developed K-tree for a sentence does not close, then the sentence is
not K-valid.
\end{quote}
Assume, then, that some fully developed K-tree for some target sentence has at
least one open branch. We want to show that the target sentence is false at some
world in some Kripke model.
We already know how to read off a countermodel from an open branch. All we need
to do is show that this method for generating countermodels really works. Let's
first define the method more precisely.
\begin{definition}{}{inducedmodel}
The model \textbf{induced by} a tree branch is the Kripke model $(W,R,V)$
where
\begin{itemize}[leftmargin=12mm]
\itemsep-1mm
\item[(a)] $W$ is the set of world variables on the branch,
\item[(b)] $\omega R \upsilon$ holds in the model iff a node
$\omega R \upsilon$ occurs on the branch,
\item[(c)] for any sentence letter $P$, $V(P)$ is the set of world variables
$\omega$ for which a node $P \; (\omega)$ occurs on the branch.
\end{itemize}
\end{definition}
Next we show that all nodes on any open branch on a fully developed tree are
correct statements about the Kripke model induced by the branch.
\begin{theorem}{Completeness Lemma}{completenesslemma}
Let $\beta$ be an open branch on a fully developed K-tree, and let
$M = \t{W,R,V}$ be the model induced by $\beta$. Then $M,\omega \models A$ for
all sentences $A$ and world variables $\omega$ for which $A\; (\omega)$ is on
$\beta$.
\end{theorem}
\begin{proof}
We have to show that whenever $A\; (\omega)$ occurs on $\beta$ then
$M,\omega \models A$. The proof is by induction on the length of $A$. We first
show that the claim holds for sentence letters and negated sentence letters.
Then we show that \emph{if} the claim holds for all sentences shorter than $A$
(this is our induction hypothesis), \emph{then} it also holds for $A$ itself.
\begin{itemize}
\item If $A$ is a sentence letter then the claim is true by clause (c) of
definition \ref{def:inducedmodel} and clause (a) of definition
\ref{def:kripkesemantics}.
\item If $A$ is the negation of a sentence letter $\rho$, then $rho\; (\omega)$
does not occur on $\beta$, otherwise $\beta$ would be closed. By
clause (c) of definition \ref{def:inducedmodel}, it follows that
$\omega$ is not in $V(\rho)$, and so $M, \omega \models A$ by clauses (a)
and (b) of definition \ref{def:kripkesemantics}.
\item If $A$ is a doubly negated sentence $\neg\neg B$, then $\beta$
contains a node $B \;(\omega)$, because the tree is fully developed.
By induction hypothesis, $M,\omega \models B$. By clause (b) of
definition \ref{def:kripkesemantics}, it follows that
$M,\omega \models A$.
\item If $A$ is a conjunction $B\land C$, then $\beta$ contains nodes
$B \;(\omega)$ and $C \;(\omega)$. By induction hypothesis,
$M,\omega \models B$ and $M,\omega \models C$. By clause (c) of
definition \ref{def:kripkesemantics}, it follows that
$M,\omega \models A$.
\item If $A$ is a negated conjunction $\neg(B\land C)$, then $\beta$ contains
either $\neg B \;(\omega)$ or $\neg C \;(\omega)$. By induction
hypothesis, $M,\omega \models \neg B$ or $M,\omega \models \neg C$.
Either way, clauses (b) and (c) of definition
\ref{def:kripkesemantics} imply that $M,\omega \models A$.
% \item If $A$ is a disjunction $B\lor C$, then branch also contains
% either $B \;(\omega)$ or $C \;(\omega)$, because the tree is fully
% developed. By induction hypothesis, $M,\omega \models B$ or
% $M,\omega \models C$. So $M,\omega \models B\lor C$.
\end{itemize}
I skip the cases where $A$ is a disjunction, a conditional, a
biconditional, or a negated disjunction, conditional, or biconditional. The
proofs are similar to one (or both) of the previous two cases.
\begin{itemize}
\item If $A$ is a box sentence $\Box B$, then $\beta$ contains a node
$B \;(\upsilon)$ for each world variable $\upsilon$ for which
$\omega R \upsilon$ is on $\beta$ (because the tree is fully
developed). By induction hypothesis, $M, \upsilon \models B$, for each
such $\upsilon$. By definition \ref{def:inducedmodel}, it follows that
$M,\upsilon \models B$ for all worlds $\upsilon$ such that
$\omega R \upsilon$. By clause (g) of definition
\ref{def:kripkesemantics}, it follows that $M, \omega \models \Box B$.
\item If $A$ is a diamond sentence $\Diamond B$, then there is a world
variable $\upsilon$ for which $\omega R \upsilon$ and $B \;(\upsilon)$
are on $\beta$. By induction hypothesis, $M, \upsilon \models B$. And
by definition \ref{def:inducedmodel}, $\omega R\upsilon$. By clause
(h) of definition \ref{def:kripkesemantics}, it follows that
$M, \omega \models \Diamond B$.
\end{itemize}
For the case where $A$ has the form $\neg \Box B$ or $\neg \Diamond B$, the
proof is similar to one of the previous two cases. \qed
\end{proof}
\medskip
To establish completeness, we need to verify one more point: that one can always
construct a fully developed tree for any invalid target sentence. Let's call a
K-tree \emph{regular} if it is constructed by (i) first applying all rules for
the truth-functional connectives until no more of them can be applied (without
adding only nodes to a branch that are already on the branch), then (ii)
applying the rules for $\Diamond$ and $\neg \Box$ until no more of them can be
applied, then (iii) applying the rules for $\Box$ and $\neg \Diamond$ until no
more of them can be applied, then starting over with (i), and so on.
\begin{observation}{regulartrees}
Every regular open K-tree is fully developed.
\end{observation}
\begin{proof}
\emph{Proof:} When constructing a regular tree, every iteration of (i), (ii),
and (iii) only allows expanding finitely many nodes. So every node on every
open branch that can be expanded in any way is eventually expanded in this way
by some iteration of (i), (ii), and (iii). \qed
\end{proof}
Now we have all the ingredients to prove completeness.
\begin{theorem}{Theorem: Completeness of K-trees}{completeness-tree-k}
If a sentence is K-valid, then there is a closed K-tree for that sentence.
\end{theorem}
\begin{proof}
\emph{Proof:} Let $A$ be any K-valid sentence, and suppose for reductio that
there is no closed K-tree for $A$. In particular, then, every regular K-tree
for $A$ remains open. Take any such tree. By observation
\ref{obs:regulartrees}, the tree is fully expanded. Choose any open branch on
the tree. By the Completeness Lemma, $A$ is false at $w$ in the model induced
by that branch. So $A$ is not true at all worlds in all Kripke models.
Contradiction. \qed
\end{proof}
\begin{exercise}
Fill in the cases for $B \to C$ and $\neg \Diamond B$ in the proof of the
Completeness Lemma.
\end{exercise}
\begin{solution}
For $B\to C$: If $A$ is a conditional $B\to C$, then $\beta$ contains either
$\neg B \;(\omega)$ or $C \;(\omega)$. By induction hypothesis,
$M,\omega \models \neg B$ or $M,\omega \models \neg C$. Either way, clauses
(b) and (e) of definition \ref{def:kripkesemantics} imply that
$M,\omega \models A$.
For $\neg\Diamond B$: If $A$ is a negated diamond sentence $\neg\Diamond B$,
then $\beta$ contains a node $\neg B \;(\upsilon)$ for each world variable
$\upsilon$ for which $\omega R \upsilon$ is on $\beta$ (because the tree is
fully developed). By induction hypothesis, $M, \upsilon \models \neg B$, for
each such $\upsilon$. By definition \ref{def:inducedmodel}, it follows that
$M,\upsilon \models \neg B$ for all worlds $\upsilon$ such that
$\omega R \upsilon$. By clauses (b) and (g) of definition
\ref{def:kripkesemantics}, it follows that $M, \omega \models A$.
\end{solution}
Like the soundness proof, the completeness proof for K is easily adapted to
other logics. To show that the T-rules are complete with respect to T-validity,
for example, we merely need check that the model induced by any open branch on a
fully developed T-tree is reflexive. It must be, because an open branch on a
fully developed T-tree contains $\omega R \omega$ for each world variable
$\omega$ on the branch.
% Strictly speaking, we also need to adjust the definition of regular trees.
\begin{exercise}
What do we need to check to show that the K4-rules are complete with respect
to K4-validity?
\end{exercise}
\begin{solution}
We need to check that the model induced by an open branch on a fully developed
K4-tree is transitive. (Suppose the model contains worlds $w$, $v$, $u$ for
which $wRv$ and $vRu$. Then the Transitivity rule has been applied to the
corresponding nodes on the branch, generating a node $wRu$. By definition
\ref{def:inducedmodel}, $wRu$ holds in the induced model.)
\end{solution}
\begin{exercise}\label{ex:acyclical}
A Kripke model is \emph{acyclical} if you can never return to the same world
by following the accessibility relation. Show that if a sentence is true at
some world in some Kripke model, then it is also true at some world in some
acyclical Kripke model.
(Hint: If $A$ is true at some world in some Kripke model then $\neg A$ is
K-invalid. By the soundness theorem, there is a fully developed K-tree for
$\neg A$ with an open branch. Now consider the model induced by this branch.)
\end{exercise}
\begin{solution}
Suppose $A$ is true at some world in some Kripke model. Then $\neg A$ is
K-invalid. Take any regular K-tree for $\neg A$. By observation
\ref{obs:regulartrees}, that tree is fully developed. By the soundness theorem
for K-trees, the tree has an open branch. Let $M$ be the model induced by some
such branch $\beta$. Then $M$ is acyclical. This is because the only rules
that allow adding a node $\omega R \upsilon$ to a branch of a K-tree are the
rules for expanding $\Diamond A$ and $\neg\Box A$ nodes. In both cases, the
rule requires that the relevant world variable $\upsilon$ is new on the
branch. (Call this the \emph{novelty requirement}.) Now suppose the
accessibility relation in $M$ has a cycle $\omega_{1} R \omega_{2}$,
$\omega_{2} R \omega_{3}$, \ldots, $\omega_{n-1} R \omega_{n}$,
$\omega_{n} R \omega_{1}$. Each of these facts about $R$ must correspond to a
node on $\beta$. Of these nodes, the one that was added last (to $\beta$)
violates the novelty requirement. So $M$ is acyclical.
By the Completeness Lemma, the target sentence $\neg\neg A$ is true at world
$w$ in $M$. So $A$ is true at $w$ in $M$. So $A$ is true at some world in some acyclical model.
\end{solution}
% This explains why it's OK to always introduce a new world when expanding <>A.
% Technically, we only introduce a new world /name/, and the completeness lemma
% exploits this technicality. But when we read off countermodels, we assume that
% different world names denote different worlds. If -- somehow -- there could be
% sentences C that are only true in cyclical models, our method might still be
% sound: we could not prove ~C. All ~C trees would remain open. But the models
% induced by these open branches would not be countermodels to C. The open
% branches might still "accurately describe" a countermodel, under a function
% that maps different world names to the same world. And then the method might
% even be complete.
% Why is it OK to only ever expand <>A once? What if the only countermodels to
% the target sentence have /two/ witnesses of a diamond sentence? If a tree
% closes with only one witness then we've already reached a contradiction
% assuming there is at least one witness. No point expanding <>A again. If a
% tree remains open, completeness says that we have a countermodel with one
% witness. This would fail if -- somehow -- there could be sentences that are
% true only in models with multiple witnesses. That is, the model induced by an
% open branch wouldn't be a countermodel.
% \begin{exercise}
% When constructing a tree proof, one often has a choice of which rules to
% apply in which order. Show that the choice doesn't matter, in the following
% sense: If there is a K-tree for the target sentence in which all branches
% close, then there is no fully developed K-tree for the target sentence in
% which some branch remains open. xxx Well, if you develop []<>p & (q & ~q),
% and you keep expanding []<>p without every dealing with (q & ~q) then the
% tree never closes. so the choice /does/ matter.
% \end{exercise}
% \begin{solution}
% We have to show that if there some K-tree for a given target sentence closes,
% then there is no fully developed K-tree for the sentence that remains open.
% So assume some K-tree for the target sentence closes. By the Completeness
% Theorem, the target sentence is K-valid. If there were a fully developed but
% open K-tree for the same target sentence, then by the Completeness Lemma the
% negation of that sentence would be true at world $w$ in the model induced by
% some open branch on that tree. This contradicts the fact that the target
% sentence is K-valid.
% \end{solution}
\begin{exercise}
The S5 tree rules from chapter \ref{ch:worlds} are sound and complete for
S5-validity: all and only the S5-valid sentences can be proven. Are the rules
sound for K-validity? Are they complete for K-validity?
\end{exercise}
\begin{solution}
The S5 rules are not sound with respect to K-validity. For example,
$\Box p \to p$ is provable with the S5 rules, but it isn't K-valid. The rules
are, however, complete with respect to K-validity. This follows from the
completeness of the S5 rules and the fact that every K-valid sentence is
S5-valid (observation \ref{obs:kins5}).
\end{solution}
\iffalse
\section{Strong completeness and compactness}%
\label{sec:compactness}
% Greg Restall: trees are upside-down cut-free sequent calculus, rephrased for
% easy teaching. That’s it. If you rephrase them just a *tiny* bit (to make them
% +/- signed trees, instead of littering every second rule with negation) then
% you have an easy and direct proof of the subformula theorem: that any valid
% argument has a purely analytic proof—a proof using only subformulas of the
% premises and the conclusion. To show that for classical predicate logic in
% natural deduction by normalisation? No fun at all!
We have shown that every K-valid sentence is provable with the tree rules for K.
This kind of completeness -- linking validity with provability -- is sometimes
called \emph{weak} completeness. Strong completeness is concerned not with
validity, but with entailment: A proof method is \textbf{strongly complete} with
respect to a logic if, whenever a sentence is entailed (in the logic) by some
sentences $\Gamma$, then there is a proof (in the method) showing that the
sentence is entailed by $\Gamma$.
You will remember from observation \ref{obs:semantic-deduction-theorem} in
chapter 1 that claims about entailment can be converted into claims about
validity. $A$ entails $B$ iff $A \to B$ is valid; $A_{1}$ and $A_{2}$ together
entail $B$ iff $A_{1} \to (A_{2} \to B)$ is valid; and so on. We can therefore
show that, say, $A_{1}$ and $A_{2}$ entail $B$ by constructing a closed tree for
$A_{1} \to (A_{2} \to B)$. After two applications of the rule for negated
conditionals, this tree has three unexpanded nodes, corresponding to the
original premises and the negated conclusion: $A_{1}\; (w)$, $A_{2}\; (w)$, and
$\neg B\; (w)$. In general, to show that some premises $\Gamma$ and entail a
conclusion $B$, we can save a few steps by directly starting the tree with one
node $A_{i}\; (w)$ for each premise $A_{i}$ in $\Gamma$, and another node
$\neg B\; (w)$ for the negated conclusion. Together with observation
\ref{obs:semantic-deduction-theorem}, the soundness and completeness results
from the previous section immediately entail the following.
\begin{observation}{sckentailment}
Some sentences $A_{1},\ldots,A_{n}$ K-entail a sentence $B$ iff there is a
closed K-tree with starting nodes $A_{1}\; (w)$, \ldots, $A_{n}\; (w)$,
$\neg B\; (w)$.
\end{observation}
But this isn't enough for strong completeness. It only shows that if a
conclusion is entailed by \emph{a finite collection} of premises, then the
entailment can be verified by the tree method. One may, however, reasonably ask
whether a sentence is entailed by some infinite collection of sentences. If
$\Gamma$ is infinite then the claim that $\Gamma$ entails $B$ can't be converted
into a claim about validity, because $L_{M}$-sentences are finite. Nor can we
start a tree with separate nodes for each premise followed by a node for the
negated conclusion: With infinitely many premises we would never get to the
negated conclusion, nor would we ever get to a stage where any of these nodes is
expanded.
Here is how we can nonetheless use the tree method do deal with infinitely many
premises. Instead of starting with all the premises
$A_{1}, A_{2}, A_{3}, \ldots$ at once, we proceed in stages. In the first stage,
we try to derive the conclusion $B$ from only the first premise $A_{1}$. If
that fails, or if the tree is getting too large, we move on to the second stage,
where we try to derive $B$ from the first two premises, $A_{1}$ and $A_{2}$,
allowing for somewhat larger trees. And so on. Even though we consider only
finitely many premises at each stage, every premise will eventually be
considered, unless the tree already closes without taking it into account.
Let me describe the method in a little more detail. Suppose we want to prove
that $B$ is K-entailed by infinitely many sentences
$A_{1}, A_{2}, A_{3},\ldots$. In the first stage, we develop a K-tree whose
starting assumptions are $A_{1}\; (w)$ and $\neg B\; (w)$. We don't develop that
tree fully, because this could take forever. Instead, we develop the tree by (i)
applying all rules for the truth-functional connectives until no more of them
can be applied (without repetition), then (ii) applying the rules for $\Diamond$
and $\neg \Box$ until no more of them can be applied, and finally (iii) applying
the rules for $\Box$ and $\neg \Diamond$ until no more of them can be applied.
If at that point the tree is closed, we're done: The proof is complete. If not,
we move on to stage 2. Here we construct another tree with starting assumptions
$A_{1}\; (w)$, $A_{2}\; (w)$ and $\neg B\; (w)$. To develop this tree, we first
repeat everything we did on the first tree, expanding $A_{1}\; (w)$ and
$\neg B\; (w)$. Then we go through another iteration of (i)--(iii). If the tree
is still open, we move on to stage 3, where we add $A_{3}\; (w)$ to the starting
assumptions, copy over all nodes from stage 2 and go through another iteration
of (i)--(iii). And so on.
This method is sound. For suppose at some stage $n$ the method yields a closed
tree. This tree is an ordinary K-tree with starting assumptions $A_{1}\; (w)$,
\ldots, $A_{n}\; (w)$, and $\neg B\; (w)$. By observation
\ref{obs:sckentailment}, it follows that $A_{1},\ldots,A_{n}$ K-entail $B$. And
then all of $A_{1},A_{2},A_{3},\ldots$ K-entail $B$.
More interestingly, the described method is complete. For suppose it never
yields a closed tree. At each stage, the tree has an open branch. Note that any
open branch at a stage after the first extends an open branch from the previous
stage. So there is a sequence of branches $b_{1}, b_{2}, b_{3}, \ldots$, one
from each stage, such that $b_{2}$ extends $b_{1}$, $b_{3}$ extends $b_{2}$, and
so on. Pick any such sequence. We may regard the set of nodes that occur
somewhere in the sequence as a single infinite branch. This infinite branch
contains a node $A_{i}\; (w)$ for every premise, as well as $\neg B\; (w)$. Just
as an ordinary open branch induces a Kripke model (as per definition
\ref{def:inducedmodel}), so does the infinite branch. And because every node on
the branch that can be expanded has been expanded, the Completeness Lemma goes
through just as in the previous section, showing that all nodes on the branch
are correct statements about the induced model. So there is a world in some
Kripke model at which all of $A_{1},A_{2},A_{3},\ldots$ are true and $B$ is
false.
\begin{theorem}{Theorem: Strong completeness of K-trees}{strongcompleteness}
If a sentence $B$ is K-entailed by some sentences $\Gamma$ then there is a
closed K-tree starting with $A_{1}\; (w)$, \ldots, $A_{n}\; (w)$ and
$\neg B\; (w)$, where all of $A_{1},\ldots,A_{n}$ are in $\Gamma$.
\end{theorem}
\begin{proof}
\emph{Proof:} Consider a sequence of K-trees, the first beginning with
$A_{1}\; (w)$ and $\neg B\; (w)$, the second with $A_{1}\; (w)$,
$A_{2}\; (w)$, and $\neg B\; (w)$, and so on -- each extending the previous
one by an added premise from $\Gamma$ and one iteration of (i)--(iii). As
we've just seen, if no tree in this sequence closes, then $B$ is not K-entailed
by $\Gamma$. \qed
\end{proof}
%
Our proof easily carries over to other systems of modal logic. The only part
that needs adapting is the specification of (i)--(iii), where we must add the
extra tree rules in some way that ensures that all nodes are eventually
expanded.
Strong completeness has a noteworthy corollary:
%
\begin{theorem}{Theorem: Compactness of K}{compactness}
If a sentence $B$ is K-entailed by some sentences $\Gamma$ then $B$ is
K-entailed by a finite subset of $\Gamma$.
\end{theorem}
\begin{proof}
\emph{Proof:} By strong completeness, if some sentences $\Gamma$ K-entail $B$,
then there is a closed K-tree starting with $A_{1}\; (w)$, \ldots,
$A_{n}\; (w)$ and $\neg B\; (w)$, where $A_{1},\ldots,A_{n}$ are finitely many
sentences from $\Gamma$. By observation \ref{obs:sckentailment}, it follows
that $B$ is entailed by $A_{1},\ldots,A_{n}$. \qed
\end{proof}
In general, a logic $S$ is called \textbf{compact} if any sentence that is
$S$-entailed by infinitely many sentences is also $S$-entailed by a
finite subset of these sentences.
Compactness is surprising. It is easy to think of cases in which a conclusion is
entailed by infinitely many premises, but not by any finite subset of these
premises. For example, suppose I like the number 0, I like the number 1, I like
the number 2, and so on, for all natural numbers 0,1,2,3,\ldots. Together, these
assumptions entail that I like all natural numbers. But no finite subset of the
assumptions entails that I like all natural numbers.
\begin{exercise}
A set of sentences $\Gamma$ is called \emph{K-satisfiable} if there is a world
in some Kripke model at which all members of $\Gamma$ are true. Show that an
infinite set of sentences $\Gamma$ is K-satisfiable iff every finite subset of
$\Gamma$ is K-satisfiable.
\end{exercise}
\begin{solution}
Let $\Gamma$ is an infinite set of $\L_{M}$-sentences. If $\Gamma$ is
K-satisfiable then obviously every finite subset of $\Gamma$ is satisfiable as
well. For the converse direction, assume $\Gamma$ is not K-satisfiable: There
is no world in any Kripke model at which all members of $\Gamma$ are true.
Then there is no world in any Kripke model at which all members of $\Gamma$
are true while $p \land \neg p$ is false. So $\Gamma \models p\land \neg p$.
By the compactness theorem, it follows that there is a finite subset
$\Gamma^{-}$ for which $\Gamma^{-} \models p \land \neg p$. If
$\Gamma^{-} \models p \land \neg p$ then there is no world in any Kripke model
at which all members of $\Gamma^{-}$ are true while $p \land \neg p$ is false.
Since $p\land \neg p$ is false at every world in every Kripke model, it
follows that there is no world in any Kripke model at which all members of
$\Gamma^{-}$ are true. This shows that if $\Gamma$ is not K-satisfiable then
there is a finite subset ($\Gamma^{-}$) of $\Gamma$ that is not K-satisfiable.
Conversely, if every finite subset of $\Gamma$ is K-satisfiable then $\Gamma$
is K-satisfiable.
\end{solution}
\fi
\section{Soundness and completeness for axiomatic calculi}
\label{sec:scaxiomatic}
Next, we are going to show that the axiomatic calculus for system K is sound and
complete for K-validity. In the axiomatic calculus, a proof is a list of
sentences each of which is either an instance of \pr{Dual} or \pr{K} or can be
derived from earlier sentences on the list by application of \pr{CPL} or
\pr{Nec}. Expressed as a construction rule, \pr{Nec} says that whenever a list
contains a sentence $A$ then one may append $\Box A$. \pr{CPL} says that one may
append any truth-functional consequence of sentences that are already on the
list. (This is an acceptable rule because there is a simple mechanical test --
the truth-table method -- for checking whether a sentence is a truth-functional
consequence of finitely many other sentences.)
Soundness is easy. We want to show that everything that is derivable from some
instances of \pr{Dual} and \pr{K} by applications of \pr{CPL} and \pr{Nec} is
K-valid. We show this by showing that (1) every instance of \pr{Dual} and \pr{K}
is K-valid, and (2) every sentence that is derived from K-valid sentences by
\pr{CPL} or \pr{Nec} is itself K-valid.
\begin{theorem}{Theorem: Soundness of the axiomatic calculus for K}{soundnessK}
Any sentence that is provable in the axiomatic calculus for K is K-valid.
\end{theorem}
\begin{proof}
\emph{Proof:} We first show that every instance of \pr{Dual} and \pr{K} is
K-valid.
\begin{enumerate}[leftmargin=7mm]
\itemsep0mm
\item \pr{Dual} is the schema $\neg\Diamond A \leftrightarrow \Box\neg A$.
By clauses (b), (g), and (h) of definition \ref{def:kripkesemantics},
a sentence $\neg\Diamond A$ is true at a world $w$ in a Kripke model
$M$ iff $\Box\neg A$ is true at $w$ in $M$. It follows by clauses (f)
and (e) that all instances of \pr{Dual} are true at all worlds in all
Kripke models.
\item \pr{K} is the schema $\Box(A \to B) \to (\Box A \to \Box B)$. By
clause (e) of definition \ref{def:kripkesemantics}, a sentence
$\Box(A\to B) \to (\Box A \to \Box B)$ is false at a world $w$ in a
Kripke model only if $\Box(A \to B)$ and $\Box A$ are both true at
$w$ while $B$ is false. By clause (g) of definition
\ref{def:kripkesemantics}, $\Box B$ is false at $w$ only if $B$ is
false at some world $v$ accessible from $w$. But if $\Box(A \to B)$
and $\Box A$ are both true at $w$, then $A\to B$ and $A$ are true at
every world accessible from $w$, again by clause (g). And there can be
no world at which $A\to B$ and $A$ are true while $B$ is false, by
clause (e) of definition \ref{def:kripkesemantics}.
\end{enumerate}
%
Next we show that \pr{CPL} and \pr{Nec} preserve K-validity.
%
\begin{enumerate}[leftmargin=9mm]
\item By definition \ref{def:kripkesemantics}, the truth-functional
operators have their standard truth-table meaning at every world in
every Kripke model. It follows that all truth-functional consequences
of sentences that are true at a world are themselves true at that
world. In particular, if some sentences are true at every world in
every Kripke model, then any truth-functional consequence of these
sentences is also true at every world every Kripke model.
\item Let $w$ be an arbitrary world in an arbitrary Kripke model. If $A$ is
true at every world in every Kripke model, then $A$ is true at every
world accessible from $w$, in which case $\Box A$ is true at $w$ by
clause (g) of definition \ref{def:kripkesemantics}. So if $A$ is K-valid, then $\Box A$ is also K-valid. \qed
\end{enumerate}
\end{proof}
The soundness proof for K is easily extended to other modal systems. Since all
instances of \pr{Dual} and \pr{K} are true at all worlds in all Kripke models,
they are also true at all worlds in any more restricted class of Kripke models.
The arguments for \pr{CPL} and \pr{Nec} also go through if we replace `every
Kripke model' by `every Kripke model of such-and-such type'. So if we want to
show that, say, the axiomatic calculus for T is sound with respect to the
concept of T-validity -- that is, if we want to show that anything that is
derivable from \pr{Dual}, \pr{K}, and \pr{T} by \pr{CPL} and \pr{Nec} is true at
all worlds in all reflexive Kripke models -- all that is left to do is to show
that every instance of the \pr{T}-schema is true at all worlds in all reflexive
Kripke model. (We've already shown this: see observation \ref{obs:treflexive}.)
% In general, if $\Gamma$ is any set of sentences that are valid in a given
% class C of frames, anything that's provable from $K+\Gamma$ is valid in that
% class. (HC.39)
\begin{exercise}
Outline the soundness proof for the axiomatic calculus for S4, whose axiom
schemas are \pr{Dual}, \pr{K}, \pr{T}, and \pr{4}.
\end{exercise}
\begin{solution}
We need to show that everything that's derivable in the axiomatic calculus for
S4 is true at every world in every transitive and reflexive Kripke model. From
the soundness proof for K, we know that all instances of \pr{Dual} and \pr{K}
are true at every world in every Kripke model. From observation
\ref{obs:treflexive}, we know that all instances of \pr{T} are true at every
world in every reflexive Kripke model. From observation \ref{obs:4trans}, we
know that all instances of \pr{4} are true at every world in every transitive
Kripke model. So all axioms in the S4-calculus are valid in the class of
transitive and reflexive Kripke frames. Since \pr{CPL} and \pr{Nec} preserve
validity in any class of Kripke frames, it follows that everything that's
derivable in the S4-calculus is valid in the class of transitive and reflexive
frames.
\end{solution}
Let's turn to completeness. We are going to show that every K-valid sentence is
derivable from some instances of \pr{Dual} and \pr{K} by \pr{CPL} and \pr{Nec}.
% You might want to grab a cup of tea before you continue.
As in section \ref{sec:completenesstrees}, we argue by contraposition. We will
show that any sentence that cannot be derived from \pr{Dual} and \pr{K} by
\pr{CPL} and \pr{Nec} is not K-valid. To show that a sentence is not K-valid, we
will give a countermodel -- a Kripke model in which the sentence is false at
some world. In fact, we will give the \emph{same} countermodel for every
sentence that isn't derivable in the calculus. You might think we need different
countermodels for different sentences, but it turns out that there is a
particular model in which every K-invalid sentence is false at some world. This
model is called the \emph{canonical model} for K.
In order to define the canonical model, let's introduce some shorthand
terminology. We'll say that an $\L_M$-sentence is \emph{K-provable} if it can be
proved in the axiomatic calculus for K. A set of $\L_M$-sentences is
\emph{K-inconsistent} if it contains a finite number of sentences
$A_1,\ldots,A_n$ such that $\neg (A_1 \land \ldots \land A_n)$ is K-provable. A
set is \emph{K-consistent} if it is not K-inconsistent.
(For example, the set $\{ \Box(p \land q), q \to p, \neg \Box q \}$ is
K-inconsistent, because it contains two sentences, $\Box(p \land q)$ and
$\neg \Box q$ whose conjunction is refutable in K, in the sense that the
negation $\neg(\Box(p \land q) \land \neg \Box q)$ of their conjunction is
derivable from some instances of \pr{Dual} and \pr{K} by \pr{CPL} and \pr{Nec}.)
A set of $\L_M$-sentences is called \emph{maximal} if it contains either $A$ or
$\neg A$ for every $\L_M$-sentence $A$. A set is \emph{maximal K-consistent} if
it is both maximal and K-consistent.
% Exercise (HC 114): Show that if $\Gamma$ is maximal consistent, then for any
% sentences $A,B$, (i) $A\in \Gamma$ iff $\neg A \not\in \Gamma$, (ii)
% $A \lor B \in \Gamma$ iff either $A \in \Gamma$ or $B \in \Gamma$, (iii) $A \land B$ ...
\begin{exercise}
Which, if any, of these sets are K-consistent? (a) $\{ p \}$, (b)
$\{ \neg p \}$, (c) the set of all sentence letters, (d) the set of all
$\L_{M}$-sentences.
\end{exercise}
\begin{solution}
(a), (b), and (c) are K-consistent, (d) is not.
\end{solution}
% The universe of the canonical model is always uncountable since there are
% uncountably many (2^\omega) sets of negated/unnegated sentence letters.
Now here's the canonical model for K.
\begin{definition}{}{cmk}
%\leavevmode\vspace{-2em}
The \textbf{canonical model} $M_K$ for K is the Kripke model $\t{W,R,V}$, where%
\vspace{-2mm}
\begin{itemize}[leftmargin=7mm]
\itemsep-1mm
\item $W$ is the set of all maximal K-consistent sets of $\L_M$-sentences,
\item $wRv$ iff $v$ contains every sentence $A$ for which $w$ contains
$\Box A$,
\item for every sentence letter $P$, $V(P)$ is the set of all members of $W$
that contain $P$.
\end{itemize}
\end{definition}
% Exercise: show that for any consistent normal modal logic, the canonical
% accessibility relation R is such that wRv iff for all B\in v we have <>B\in w.
The ``worlds'' in the canonical model are sets of $\L_M$-sentences. The
interpretation function makes a sentence letter true at a world iff the letter
is a member of the world. As we are going to see, this generalizes to arbitrary
sentences:
\begin{enumerate}[leftmargin=10mm]
\item[(1)] A world $w$ in $M_K$ contains all and only the sentences that are
true at $w$ in $M_K$.
\end{enumerate}
We will also prove the following:
\begin{enumerate}[leftmargin=10mm]
\item[(2)] If some sentence cannot be proved in the axiomatic calculus for K,
then its negation is a member of some world in $M_K$.
\end{enumerate}
Together, these two lemmas will establish completeness for the axiomatic