An Introduction To Logics of Knowledge and Belief
An Introduction To Logics of Knowledge and Belief
An Introduction to Logics of
arXiv:1503.00806v1 [cs.AI] 3 Mar 2015
Contents
1.1 Introduction to the Book . . . . . . . . . . . . . . 1
1.2 Basic Concepts and Tools . . . . . . . . . . . . . 2
1.3 Overview of the Book . . . . . . . . . . . . . . . . 42
1.4 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . 45
References . . . . . . . . . . . . . . . . . . . . . . . 49
In Section 1.2, we deal with the first two items. We provide examples
that should help to connect the informal concepts with the formal defi-
nitions. Although the informal meaning of the concepts that we discuss
may vary from author to author in this book (and, indeed, from reader to
reader), the formal definitions and notation provide a framework for the
discussion in the remainder of the book.
In Section 1.3, we outline how the basic concepts from this chapter are
further developed in subsequent chapters, and how those chapters relate to
each other. This chapter, like all others, concludes with a section of notes,
which gives all the relevant references and some historical background, and
a bibliography.
• Ka p ∨ ¬Ka p
• Ka p ∨ Ka ¬p
1.2. BASIC CONCEPTS AND TOOLS 3
• Ka (p ∨ ¬p)
• Ka p ∨ ¬Ka ¬p
It turns out that, given the semantics of interest to us, only the first and
third formulas above are valid. Moreover as we will see below, Ka p logically
implies ¬Ka ¬p, so the last formula is equivalent to ¬Ka ¬p, and says ‘agent
a considers p possible’. This is incomparable to the second formula, which
says agent a knows whether p is true’.
One of the appealing features of epistemic logic is that it goes beyond
the ‘factual knowledge’ that the agents have. Knowledge can be about
knowledge, so we can write expressions like Ka (Ka p → Ka q) (a knows
that if he knows that p, he also knows that q). More interestingly, we can
model knowledge about other’s knowledge, which is important when we
reason about communication protocols. Suppose Ann knows some fact m
(‘we meet for dinner the first Sunday of August’). So we have Ka m. Now
suppose Ann e-mails this message to Bob at Monday 31st of July, and Bob
reads it that evening. We then have Kb m ∧ Kb Ka m. Do we have Ka Kb m?
Unless Ann has information that Bob has actually read the message, she
cannot assume that he did, so we have (Ka m ∧ ¬Ka Kb m ∧ ¬Ka ¬Kb m).
We also have Ka Kb ¬Ka Kb m. To see this, we already noted that ¬Ka Kb
m, since Bob might not have read the message yet. But if we can deduce
that, then Bob can as well (we implicitly assume that all agents can do
perfect reasoning), and, moreover, Ann can deduce that. Being a gentleman,
Bob should resolve the situation in which ¬Ka Kb m holds, which he could
try to do by replying to Ann’s message. Suppose that Bob indeed replies on
Tuesday morning, and Ann reads this on Tuesday evening. Then, on that
evening, we indeed have Ka Kb Ka m. But of course, Bob cannot assume
Ann read the acknowledgement, so we have ¬Kb Ka Kb Ka m. It is obvious
that if Ann and Bob do not want any ignorance about knowledge of m,
they better pick up the phone and verify m. Using the phone is a good
protocol that guarantees Ka m∧Kb m∧Ka Kb m∧Kb Ka m∧Ka Kb Ka m∧. . . ,
a notion that we call common knowledge; see Section 1.2.2.
The point here is that our formal language helps clarify the effect of a
(communication) protocol on the information of the participating agents.
This is the focus of Chapter 12. It is important to note that requirements of
protocols can involve both knowledge and ignorance: in the above example
for instance, where Charlie is a roommate of Bob, a goal (of Bob) for the
protocol might be that he knows that Charlie does not know the message
(Kb ¬Kc m), while a goal of Charlie might even be Kc Kb ¬m. Actually,
in the latter case, it may be more reasonable to write Kc Bb ¬m: Charlie
knows that Bob believes that there is no dinner on Sunday. A temporal
progression from Kb m ∧ ¬Ka Kb m to Kb Ka m can be viewed as learning.
4 CHAPTER 1. INTRODUCTION
Alice and Betty each draw three cards from a pack of seven
cards, and Eve (the eavesdropper) gets the remaining card. Can
players Alice and Betty learn each other’s cards without reveal-
ing that information to Eve? The restriction is that Alice and
Betty can make only public announcements that Eve can hear.
We assume that (it is common knowledge that) initially, all three agents
know the composition of the pack of cards, and each agent knows which
cards she holds. At the end of the protocol, we want Alice and Betty to
know which cards each of them holds, while Eve should know only which
cards she (Eve) holds. Moreover, messages can only be public announce-
ments (these are formally described in Chapter 6), which in this setting
just means that Alice and Betty can talk to each other, but it is com-
mon knowledge that Eve hears them. Perhaps surprisingly, such a protocol
exists, and, hopefully less surprisingly by now, epistemic logic allows us
to formulate precise epistemic conditions, and the kind of announcements
that should be allowed. For instance, no agent is allowed to lie, and agents
can announce only what they know. Dropping the second condition would
allow Alice to immediately announce Eve’s card, for instance. Note there
is an important distinction here: although Alice knows that there is an
announcement that she can make that would bring about the desired state
of knowledge (namely, announcing Eve’s card), there is not something that
Alice knows that she can announce that would bring about the desired state
of knowledge (since does not in fact know Eve’s card). This distinction has
be called the de dicto/de re distinction in the literature. The connections
between knowledge and strategic ability are the topic of Chapter 11.
Epistemic reasoning is also important in distributed computing. As
argued in Chapter 5, processes or programs in a distributed environment
often have only a limited view of the global system initially; they gradually
come to know more about the system. Ensuring that each process has
the appropriate knowledge needed in order to act is the main issue here.
1.2. BASIC CONCEPTS AND TOOLS 5
a
A
l r
b
B C
✓ ◆
1 L R
4
a
D E
✓ ◆
2 l r
2
F G
✓ ◆ ✓ ◆
4 3
1 3
This model represents a situation where two players, a and b, take turns,
with a starting at the top node A. If a plays l (‘left’) in this node, the game
ends in node B and the payoff for a is 1 and that for b is 4. If a, however,
plays r in A, the game proceeds to node C, where it is b’s turn. Player
b has a choice between playing L and R (note that we use upper case to
distinguish b’s moves from a’s moves). The game continues until a terminal
node is reached. We assume that both players are rational; that is, each
prefers a higher outcome for themselves over a lower one. What will a play
in the start node A?
One way to determine what will happen in this game is to use backward.
Consider node E. If that node is reached, given that a is rational (denoted
r ata ), a will play l here, since she prefers the outcome 4 over 3 (which she
would get by playing r). Now consider node C. Since b knows that a is
rational, he knows that his payoff when playing R at C is 1. Since b is
rational, and playing L in C gives him 2, he will play L. The only thing
needed to conclude this is (r atb ∧Kb r ata ). Finally, consider node A. Player
a can reason as we just did, so a knows that she has a choice between the
payoff of 2 she would obtain by playing r and the payoff of 1 she would
obtain by playing l. Since a is rational, she plays r at A. Summarising, the
condition that justifies a playing r at A and b playing L at B is
This analysis predicts that the game will end in node D. Although
this analysis used only ‘depth-two’ knowledge (a knows that b knows), to
perform a similar analysis for longer variants of this game requires deeper
and deeper knowledge of rationality. In fact, in many epistemic analyses
in game theory, common knowledge of rationality is assumed. The con-
tribution of epistemic logic to game theory is discussed in more detail in
Chapter 9.
1.2.1 Language
Most if not all systems presented in this book extend propositional logic.
The language of propositional logic assumes a set At of primitive (or atomic)
propositions, typically denoted p, q, . . . , possibly with subscripts. They
typically refer to statements that are considered basic; that is, they lack
logical structure, like ‘it is raining’, or ‘the window is closed’. Classical
logic then uses Boolean operators, such as ¬ (‘not’), ∧ (‘and’), ∨, (‘or’), →
(‘implies’), and ↔ (‘if and only if’), to build more complex formulas. Since
all those operators can be defined in terms of ∧ and ¬ (see Definition 1.2),
the formal definition of the language often uses only these two connectives.
Formulas are denoted with Greek letters: ϕ, ψ, α, . . . . So, for instance,
1.2. BASIC CONCEPTS AND TOOLS 7
Typically, the set Op depends on Ag. For instance, the language for
multi-agent epistemic logic is L(At, Op, Ag), with Op = {Ka | a ∈ Ag}, that
is, we have a knowledge operator for every agent. To study interactions
between knowledge and belief, we would have Op = {Ka , Ba | a ∈ Ag}. The
language of propositional logic, which does not involve modal operators, is
denoted L(At); propositional formulas are, by definition, formulas in L(At).
Definition 1.2 (Abbreviations in the Language)
As usual, parentheses are omitted if that does not lead to ambiguity. The
following abbreviations are also standard (in the last one, A ⊆ Ag).
description/name definiendum definiens
false ⊥ p ∧ ¬p
true > ¬⊥
disjunction ϕ∨ψ ¬(¬ϕ ∧ ¬ψ)
implication ϕ→ψ ¬ϕ ∨ ψ
dual of K Ma ϕ or K̂a ϕ ¬K
V a ¬ϕ
everyone in A knows EA ϕ a∈A Ka ϕ
8 CHAPTER 1. INTRODUCTION
Note that Ma ϕ, which say ‘agent a does not know ¬ϕ’, can also be read
‘agent a considers ϕ possible’. a
1.2.2 Semantics
We now define a way to systematically determine the truth value of a for-
mula. In propositional logic, whether p is true or not ‘depends on the
situation’. The relevant situations are formalised using valuations, where a
valuation
V : At → {true, false}
determines the truth of primitive propositions. A valuation can be ex-
tended so as to determine the truth of all formulas, using a straightforward
inductive definition: ϕ ∧ ψ is true given V iff each of ϕ and ψ is true given
V , and ¬ϕ is true given V iff ϕ is false given V . The truth conditions
of disjunctions, implications, and bi-implications follow directly from these
two clauses and Definition 1.2. To model knowledge and belief, we use ideas
that go back to Hintikka. We think of an agent a as considering possible
1.2. BASIC CONCEPTS AND TOOLS 9
a, b a, b
a
w v
ta , tb ta , ¬tb
b b
a, b a, b
Suppose that at 11:50, both Alice and Bob have just arrived at their
respective stations. Taking ta and tb to represent that Alice (resp., Bob)
arrive on time, this is a situation (denoted w in Figure 1.2) where both ta
and tb are true. Alice knows that ta is true (so in w we have Ka ta ), but she
does not know whether tb is true; in particular, Alice considers possible the
situation denoted v in Figure 1.2, where ta ∧ ¬tb holds. Similarly, in w, Bob
considers it possible that the actual situation is s, where Alice is running
late but Bob will make it on time, so that ¬ta ∧ tb holds. Of course, in s,
Alice knows that she is late; that is, Ka ¬ta holds. Since the only situations
10 CHAPTER 1. INTRODUCTION
This, in a nutshell, explains what the models for epistemic and doxastic
look like: they contain a number of situations, typically called states or
(possible) worlds, and binary relations on states for each agent, typically
called accessibility relations. A pair (v, w) is in the relation for agent a if,
in world v, agent a considers state w possible. Finally, in every state, we
need to specify which primitive propositions are true.
Definition 1.4 (Kripke frame, Kripke model)
Given a set At of primitive propositions and a set Ag of agents, a Kripke
model is a structure M = hS, RAg , V At ), where
• S 6= ∅ is a set of states, sometimes called the domain of M , and
denoted D(M );
• RAg is a function, yielding an accessibility relation Ra ⊆ S × S for
each agent a ∈ Ag;
• V At : S → (At → {true, false}) is a function that, for all p ∈ At and
s ∈ S, determines what the truth value V At (s)(p) of p is in state s
(so V At (s) is a propositional valuation for each s ∈ S).
We often suppress explicit reference to the sets At and Ag, and write M =
hS, R, V i, without upper indices. Further, we sometimes write sRa t or
Ra st rather than (s, t) ∈ Ra , and use Ra (s) or Ra s to denote the set
{t ∈ S | Ra st}. Finally, we sometimes abuse terminology and refer to V as
a valuation as well.
The class of all Kripke models is denoted K. We use Km to denote the
class of Kripke models where | Ag |= m. A Kripke frame F = hS, Ri focuses
on the graph underlying a model, without regard for the valuation. a
Recall that Ma is the dual of Ka ; it easily follows from the definitions that
Example 1.2
Consider the model of Figure 1.2. Note that Ka p∨Ka ¬p represents the fact
that agent a knows whether p is true. Likewise, Ma p ∧ Ma ¬p is equivalent
to ¬Ka ¬p ∧ ¬Ka p: agent a is ignorant about p. We have the following (in
the final items we write Eab instead of E{a,b} ):
6. M |= Eab Eab ((Ka ta ∨Ka ¬ta )∧(Ma tb ∧Ma ¬tb )): in all states, everyone
knows what we stated in the previous item.
12 CHAPTER 1. INTRODUCTION
This shows that the model M of Figure 1.2 is not just a model for a situation
where a knows ta but not tb and agent b knows tb but not ta ; it represents
much more information. a
As the following example shows, in order to model certain situations,
it may be necessary that some propositional valuations occur in more than
one state in the model.
Example 1.3
Recall the scenario of the interview between Alice and Bob, as presented in
Example 1.1. Suppose that we now add the information that in fact Alice
will arrive on time, but Bob is not going to be on time. Although Bob does
not know Alice, he knows that his friend Carol is an old friend of Alice. Bob
calls Carol, leaving a message on her machine to ask her to inform Alice
about Bob’s late arrival as soon as she is able to do so. Unfortunately
for Bob, Carol does not get his message on time. This situation can be
represented in state M, v of the model of Figure 1.3.
a, b a, b a, b
a b
w v v�
ta , tb ta , ¬tb ta , ¬tb
b b
b b b
a, b a, b a, b
Note that in (M, v), we have ¬Ka ¬tb (Alice does not know that Bob
is late), but also Mb (Ka ¬tb ) (Bob considers it possible that Alice knows
that Bob is late). So, although the propositional valuations in v and v 0 are
the same, those two states represent different situations: in v agent a is
uncertain whether ¬tb holds, while in v 0 she knows ¬tb . Also, in M, v, Bob
considers it possible that both of them will be late, and that Alice knows
this: this is because Rb vu0 holds in the model, and M, u0 |= Ka (¬ta ∧ ¬tb ).a
We often impose restrictions on the accessibility relation. For example,
we may want to require that if, in world v, agent a considers world w possi-
1.2. BASIC CONCEPTS AND TOOLS 13
1. R is serial if for all s there is a t such that Rst. The class of se-
rial Kripke models, that is, {M = hS, R, V i | every Ra is serial} is
denoted KD.
3. R is transitive if for all s, t, u, if Rst and Rtu then Rsu. The class of
transitive Kripke models is denoted K4.
4. R is Euclidean if for all s, t, and u, if Rst and Rsu then Rtu. The
class of Euclidean Kripke models is denoted K5
Of special interest in this book is the class S5. In this case, the accessi-
bility relations are equivalence classes. This makes sense if we think of Ra st
holding if s and t are indistinguishable by agent a based on the information
that a has received. S5 has typically been used to model knowledge. In
an S5 model, write s ∼a t rather than Ra st, to emphasize the fact that Ra
is an equivalence relation. When it is clear that M ∈ S5, when drawing
the model, we omit reflexive arrows, and since the relations are symmetric,
we connect states by a line, rather than using two-way arrows. Finally,
we leave out lines that can be deduced to exist using transitivity. We call
this the S5 representation of a Kripke model. Figure 1.4 shows the S5
representation of the Kripke model of Figure 1.3.
a b
w v v�
ta , tb ta , ¬tb ta , ¬tb
b b b
(c) X |= α.
(e) KD |= Kϕ → M ϕ.
(f) T |= Kϕ → ϕ.
(g) K4 |= Kϕ → KKϕ.
(i) KB |= ϕ → KM ϕ.
¬pa , pb
w
a a
pa , pb ¬pa , ¬pb
a, b
s t
b b
u pa , ¬pb
Figure 1.5: The (S5 representation of the) model for Example 1.4.
We have
This models the agreement each mother made with her daughter. Now
consider the situation at state s. We have M, s |= Ka ¬(pa ∧ ¬pb ), that
is, Alice knows that it is not the case that her daughter is alone at the
playground (otherwise her daughter would have informed her). What does
each agent know at s? If we consider only propositional facts, it is easy
to see that Alice knows pa → pb and Betty knows pb → pa . What does
everyone know at s? The following sequence of equivalences is immediate
from the definitions:
M, s |= E{a,b} ϕ
iff M, s |= Ka ϕ ∧ Kb ϕ
iff ∀x(Ra sx ⇒ M, x |= ϕ) and ∀y(Rb sy ⇒ M, y |= ϕ)
iff ∀x ∈ {s, w, t} (M, x |= ϕ) and ∀y ∈ {s, u, t} (M, y |= ϕ)
iff M |= ϕ.
Thus, in this model, what is known by everyone are just the formulas valid
in the model. Of course, this is not true in general.
Now suppose that Alice and Betty an opportunity to talk to each other.
Would they gain any new knowledge? They would indeed. Since M, s |=
1.2. BASIC CONCEPTS AND TOOLS 17
r s r s
(s0 , d0 ) (s−1 , d0 ) (s−1 , d−1 ) (s−2 , d−1 ) (s−2 , d−2 )
Figure 1.6: The (S5 representation of the) model for Example 1.5.
Writing E for ‘the sender and receiver both know’, it easily follows that
(M, s) |= EA ϕ iff for all t such that REA st, we have (M, t) |= ϕ.
(M, s) |= DA ϕ iff for all t such that RDA st, we have (M, t) |= ϕ.
T |= Da ϕ → ϕ.
The relative strengths shown in (1.1) are strict in the sense that none
of the converse implications are valid (assuming that A 6= {a}).
We conclude this section by defining some languages that are used
later in this chapter. Fixing At and Ag, we write LX for the language
L(At, Op, Ag), where
X =K if Op = {Ka | a ∈ Ag}
X = CK if Op = {Ka , CA | a ∈ Ag, A ⊆ Ag}
X = DK if Op = {Ka , DA | a ∈ Ag, A ⊆ Ag}
X = CDK if Op = {Ka , CA , DA | a ∈ Ag, A ⊆ Ag}
X = EK if Op = {Ka , EA | a ∈ Ag, A ⊆ Ag}.
Bisimulation
It may well be that two models (M, s) and (M 0 , s0 ) ‘appear different’, but
still satisfy the same formulas. For example, consider the models (M, s),
(M 0 , s0 ), and (N, s1 ) in Figure 1.7. As we now show, they satisfy the same
formulas. We actually prove something even stronger. We show that all
of (M, s), (M, t), (M 0 , s0 ), (N, s1 ), (M, s2 ), and (N, s3 ) satisfy the same
formulas, as do all of (M, u), (M, w), (M 0 , w0 ), (N, w1 ), and (N, w2 ). For
the purposes of the proof, call the models in the first group green, and
the models in the second group red. We now show, by induction on the
structure of formulas, that all green models satisfy the same formulas, as
do all red models. For primitive propositions, this is immediate. And if two
models of the same colour agree on two formulas, they also agree on their
negations and their conjunctions. The other formulas we need to consider
are knowledge formulas. Informally, the argument is this. Every agent
considers, in every pointed model, both green and red models possible. So
his knowledge in each pointed model is the same. We now formalise this
reasoning.
Definition 1.9 (Bisimulation)
Given models M = (S, R, V ) and M 0 = (S 0 , R0 , V 0 ), a non-empty relation
R ⊆ S × S 0 is a bisimulation between M and M 0 iff for all s ∈ S and s0 ∈ S 0
with (s, s0 ) ∈ R:
p, ¬q
p, ¬q
M0
M w w0
a, b a, b
p, q p, q
s t a, b
a, b a, b
u s0
p, q
p, ¬q
N
p, q p, ¬q p, q p, ¬q p, q
s1 w1 s2 w2 s3
a, b a, b a, b a, b
M, s |= ϕ ⇔ M 0 , s0 |= ϕ. a
¬p
t1
M N a b
p ¬p p p
a, b
s t s1 s2
b a
¬p
t2
Figure 1.8: Two bisimilar models that do not preserve distributed know-
ledge.
Expressivity
To give an example of expressivity and the tools that are used to study it, we
start by showing that finiteness of models cannot be expressed in epistemic
logic, even if the language includes operators for common knowledge and
distributed knowledge.
22 CHAPTER 1. INTRODUCTION
Theorem 1.4
There is no formula ϕ ∈ LCDK such that, for all S5-models M = hS, R, V i,
M |= ϕ iff S is finite a
a, b
M
p
s
M0 p p p p
s1 s2 s3 s4
a, b a, b a, b a, b
Figure 1.9: A finite and an infinite model where the same formulas are
valid.
M is finite and M 0 is not. Nevertheless, the two models are easily seen to
be group bisimilar, so they cannot be distinguished by epistemic formulas.
More precisely, for all formulas ϕ ∈ LCDK , we have M, s |= ϕ iff M 0 , s1 |= ϕ
iff M 0 , s2 |= ϕ iff M 0 , sn |= ϕ for some n ∈ N, and hence M |= ϕ iff M 0 |= ϕ.
a
Theorem 1.5
LK vK LCK and LK 6vS5 LCK . a
p
M2 s1 s2 s3 N 2 t1 t2 t3
a b a b
p
M3 s 1 s2 s3 s4 N 3 t1 t2 t3 t4
a b a a b a
Figure 1.10: Models Mn and Nn . The atom p is only true in the pointed
models (Nn , sn+1 ).
Proof For part (a), vK holds trivially. We use the models in Figure 1.8 to
show that LDK 6vS5 LK . Since (M, s) ↔ (N, s1 ), the models verify the same
L-formulas. However, LDK discriminates them: we have (M, s) |= ¬D{a,b} p,
while (N, s1 ) |= D{a,b} p. Since (M, s) and (N, s1 ) also verify the same LCK -
formulas, part (3) also follows.
For part (b), observe that (1.2) is also true for all formulas ϕ ∈ LDK ,
so the formula C{a,b} ¬p ∈ LCK is not equivalent to a formula in LDK .
Part (c) is proved using exactly the same models and argument as part
(a).
For part (d), v is obvious. To show that LCDK 6vS5 LDK , we can use
the models and argument of part (b). Similarly, for part (e), v is obvious.
To show that LCDK 6vS5 LDK , we can use the models and argument of part
(a). a
But if both agents possess the same knowledge in (N, s1 ), how can
communication help them in any way, that is, how can it be that there
is distributed knowledge (of p) that no individual agent has? Similarly, if
a has the same knowledge in (M, s) in (N, s1 ), and so does b, why would
communication in one model (N ) lead them to know p, while in the other,
it does not? Semantically, one could argue that in s1 agent a could ‘tell’
agent b that t2 ‘is not possible’, and b could ‘tell’ a that t1 ‘is not possible’.
But how would verify the same formulas? This observation has led some
researchers to require that distributed knowledge be interpreted in what
are called bisimulation contracted models (see the notes at the end of the
chapter for references). Roughly, a model is bisimulation contracted if it
does not contain two points that are bisimilar. Model M of Figure 1.8 is
bisimulation contracted, model N is not.
1.2. BASIC CONCEPTS AND TOOLS 25
Succinctness
(i) | αn |≤ k1 n;
(ii) | βn | ≥ 2k2 n ;
(iii) βn is the shortest formula in L2 that is equivalent to αn on X .a
Theorem 1.7
The language LEK is exponentially more succinct than LK on X , for all X
between K and S5. a
and
Decidability Problems
A decidability problem checks some input for some property, and returns
‘yes’ or ‘no’.
Definition 1.12 (Satisfiability)
The satisfiability problem for X is the following reasoning problem.
Problem: satisfiability in X , denoted satX .
Input: a formula ϕ ∈ L.
Question: does there exist a model M ∈ X and a state s ∈
D(M ) such that M, s |= ϕ?
Output: ‘yes’ or ‘no’.
1.2. BASIC CONCEPTS AND TOOLS 27
key to proving Fact 1.1. For a class of models X , let Fin(X ) ⊆ X be the
set of models in X that are finite.
Proposition 1.2 (Finite model property)
For all classes of models in Definition 1.7 and languages L in Definition 1.1,
we have, for all ϕ ∈ L,
X |= ϕ iff Fin(X ) |= ϕ. a
Fact 1.2 does not say that the models in X and the finite models in X
are the same in any meaningful sense; rather, it says that we do not gain
valid formulas if we restrict ourselves to finite models. It implies that a
formula is satisfiable in a model in X iff it is satisfiable in a finite model
in X . It follows that in the languages we have considered so far, ‘having
a finite domain’ is not expressible (for if there were a formula ϕ that were
true only of models with finite domains, then ϕ would be a counterexample
to Fact 1.2).
Definition 1.14 (Size of Models)
For a finite model M = hS,Ag , V At i, the size of M , denoted kM k, is the
sum of the number of states (| S |, for which we also write | M |) and the
number of pairs in the accessibility relation (| Ra |) for each agent a ∈ Ag.a
The idea behind the proof of Proposition 1.3 is that states that ‘agree’ on
all subformulas of ϕ can be ‘identified’. Since there are only | ϕ | subformulas
of ϕ, and 2|ϕ| truth assignments to these formulas, the result follows. Of
course, work needs to done to verify this intuition, and to show that an
appropriate model can be constructed in the right class X .
To reason about the complexity of a computation performed by an
algorithm, we distinguish various complexity classes. If a deterministic al-
gorithm can solve a problem in time polynomial in the size of the input, the
problem is said to be in P. An example of a problem in P is to decide, given
two finite Kripke models M1 and M2 , whether there exists a bisimulation
between them. Model checking for the basic multi-modal language is also
in P; see Proposition 1.4.
In a nondeterministic computation, an algorithm is allowed to ‘guess’
which of a finite number of steps to take next. A nondeterministic algorithm
1.2. BASIC CONCEPTS AND TOOLS 29
for a decision problem says ‘yes’ or accepts the input if the algorithm says
‘yes’ to an appropriate sequence of guesses. So a nondeterministic algorithm
can be seen as generating different branches at each computation step, and
the answer of the nondeterministic algorithm is ‘yes’ iff one of the branches
results in a ‘yes’ answer.
The class NP is the class of problems that are solvable by a nondeter-
ministic algorithm in polynomial time. Satisfiability of propositional logic is
an example of a problem in NP: an algorithm for satisfiability first guesses
an appropriate truth assignment to the primitive propositions, and then
verifies that the formula is in fact true under this truth assignment.
A problem that is at least as hard as any problem in NP is called NP-
hard. An NP-hard problem has the property that any problem in NP can be
reduced to it using a polynomial-time reduction. A problem is NP-complete
if it is both in NP and NP-hard; satisfiability for propositional logic is well
known to be NP-complete. For an arbitrary complexity class C, notions of
C-hardness and C-completeness can be similarly defined.
Many other complexity classes have been defined. We mention a few
of them here. An algorithm that runs in space polynomial in the size of
the input it is in PSPACE. Clearly if an algorithm needs only polynomial
time then it is in polynomial space; that is P ⊆ PSPACE. In fact, we also
have NP ⊆ PSPACE. If an algorithm is in NP, we can run it in polynomial
space by systematically trying all the possible guesses, erasing the space
used after each guess, until we eventually find one that is the ‘right’ guess.
EXPTIME consists of all algorithms that run in time exponential in the
size of the input; NEXPTIME is its nondeterministic analogue. We have P
⊆ NP ⊆ PSPACE ⊆ EXPTIME ⊆ NEXPTIME. One of the most important
open problems in computer science is the question whether P = NP. The
conjecture is that the two classes are different, but this has not yet been
proved; it is possible that a polynomial-time algorithm will be found for
an NP-hard problem. What is known is that P 6= EXPTIME and NP 6=
NEXPTIME.
The complement P̄ of a problem P is the problem in which all the
‘yes’ and ‘no’ answers are reversed. Given a complexity class C, the class
co-C is the set of problems for which the complement is in C. For every
deterministic class C, we have co-C = C. For nondeterministic classes, a class
and its complement are, in general, believed to be incomparable. Consider,
for example, the satisfiability problem for propositional logic, which, as we
noted above, is NP-complete. Since a formula ϕ is valid if and only if ¬ϕ is
not satisfiable, it easily follows that the validity problem for propositional
logic is co-NP-complete. The class of NP-complete and co-NP-complete
problems are believed to be distinct.
30 CHAPTER 1. INTRODUCTION
K, T , S4, KD45 and S5) and the language. Let Ag=1 consist of only one
agent, let Ag≥1 6= ∅ be an arbitrary set of agents, and let Ag≥2 be a set of
at least two agents. Finally, let Op = {Ka | a ∈ Ag}.
Theorem 1.8 (Satisfiability)
The complexity of the satisfiability problem is
2. PSPACE-complete if
3. EXPTIME-complete if
From the results in Theorem 1.8, it follows that the satisfiability prob-
lem for logics of knowledge and belief for one agent, S5 and KD45, is
exactly as hard as the satisfiability problem for propositional logic. If we
do not allow for common knowledge, satisfiability for the general case is
PSPACE-complete, and with common knowledge it is EXPTIME-complete.
(Of course, common knowledge does not add anything for the case of one
agent.)
For validity, the consequences of Theorem 1.8 are as follows. We re-
marked earlier that if satisfiability (in X ) is in some class C, then validity
is in co-C. Hence, checking validity for the cases in item 1 is co-NP-complete.
Since co-PSPACE = PSPACE, the validity problem for the cases in item 2 is
PSPACE-complete, and, finally, since co-EXPTIME = EXPTIME, the valid-
ity problem for the cases in item 3 is EXPTIME-complete. What these re-
sults on satisfiability and validity mean in practice? Historically, problems
that were not in P were viewed as too hard to deal with in practice. How-
ever, recently, major advances have been made in finding algorithms that
deal well with many NP-complete problems, although no generic approaches
have been found for dealing with problems that are co-NP-complete, to say
nothing of problems that are PSPACE-complete and beyond. Nevertheless,
even for problems in these complexity classes, algorithms with humans in
the loop seem to provide useful insights. So, while these complexity results
suggest that it is unlikely that we will be able to find tools that do auto-
mated satisfiability or validity checking and are guaranteed to always give
correct results for the logics that we focus on in this book, this should not
be taken to say that we cannot write algorithms for satisfiability, validity,
32 CHAPTER 1. INTRODUCTION
or model checking that are useful for the problems of practical interest.
Indeed, there is much work focused on just that.
1.2.5 Axiomatisation
In the previous section, the formalisation of reasoning was defined around
the notion of truth: X |= ϕ meant that ϕ is true in all models in X . In
this section, we discuss a form of reasoning where a conclusion is inferred
purely based on its syntactic form. Although there are several ways to do
this, in epistemic logic, the most popular way to define deductive inference
is by defining a Hilbert-style axiom system. Such systems provide a very
simple notion of formal proofs. Some formulas are valid merely because
they have a certain syntactic form. These are the axioms of the system.
The rules of the system say that one can conclude that some formula is
valid due to other formulas being valid. A formal proof or derivation is a
list of formulas, where each formula is either an axiom of the system or can
be obtained by applying an inference rule of the system to formulas that
occur earlier in the list. A proof or derivation of ϕ is a derivation whose
last formula is ϕ.
Basic system
Our first definition of such a system will make the notion more concrete.
We give our definitions for a language where the modal operators are Ka
for the agents in some set Ag, although many of the ideas generalise to a
setting with arbitrary modal operators.
Definition 1.15 (System K)
Let L = L(At, Op, Ag), with Op = {Ka | a ∈ Ag}. The axiom system K
consists of the following axioms and rules of inference:
We present the proof as a sequence of numbered steps (so that the formula
ϕi in the derivation is given number i). This allows us to justify each step
in the proof by describing which axioms, rules of inference, and previous
steps in the proof it follows from.
1. (ϕ ∧ ψ) → ϕ 1
2. Ka ((ϕ ∧ ψ) → ϕ) Nec, 1
3. Ka ((ϕ ∧ ψ) → ϕ) → (Ka (ϕ ∧ ψ) → Ka ϕ) K
4. Ka (ϕ ∧ ψ) → Ka ϕ MP, 2, 3
5. (ϕ ∧ ψ) → ψ 1
6. Ka ((ϕ ∧ ψ) → ψ) Nec, 5
7. Ka ((ϕ ∧ ψ) → ψ) → (Ka (ϕ ∧ ψ) → Ka ψ) K
8. Ka (ϕ ∧ ψ) → Ka ψ MP, 6, 7
9. (Ka (ϕ ∧ ψ) → Ka ϕ) →
((Ka (ϕ ∧ ψ) → Ka ψ) → (Ka (ϕ ∧ ψ) → (Ka ϕ ∧ Ka ψ))) 1
10. (Ka (ϕ ∧ ψ) → Ka ψ) → (Ka (ϕ ∧ ψ) → (Ka ϕ ∧ Ka ψ)) MP, 4, 9
11. Ka (ϕ ∧ ψ) → (Ka ϕ ∧ Ka ψ) MP, 8, 10
Lines 1, 5, and 9 are instances of propositional tautologies (this can be
checked using a truth table). Note that the tautology on line 9 is of the
form (α → β) → ((α → γ) → (α → (β ∧ γ))). A proof like that above
may look cumbersome, but it does show what can be done using only the
34 CHAPTER 1. INTRODUCTION
KCD Ka (α ∧ β) → Ka α and Ka (α ∧ β) → Ka β.
1. Ka (ϕ ∧ ψ) → Ka ϕ KCD
2. Ka (ϕ ∧ ψ) → Ka ψ KCD
3. Ka (ϕ ∧ ψ) → (Ka ϕ ∧ Ka ψ) CC, 1, 2 a
T. Ka ϕ → ϕ
D. Ma >
B. ϕ → Ka Ma ϕ
4. Ka ϕ → Ka Ka ϕ
5. ¬Ka ϕ → Ka ¬Ka ϕ
1.2. BASIC CONCEPTS AND TOOLS 35
A simple way to denote axiom systems is just to add the axioms that are
included together with the name K. Thus, KD is the axiom system that
has all the axioms and rules of the system K (1, K, and rules MP and
Nec) together with D. Similarly, KD45 extends K by adding the axioms
D, 4 and 5. System S4 is the more common way of denoting KT4, while
S5 is the more common way of denoting KT45. If it is necessary to make
explicit that there are m agents in Ag, we write Km , KDm , and so on. a
Fix. CA ϕ → EA (ϕ ∧ CA ϕ).
Ind. From ϕ → EA (ψ ∧ ϕ) infer ϕ → CA ψ.
For each axiom system X considered earlier, let XC be the result of adding
Fix and Ind to X. a
The fixed point axiom Fix says that common knowledge can be viewed
as the fixed point of an equation: common knowledge of ϕ holds if everyone
knows both that ϕ holds and that ϕ is common knowledge. Ind is called the
induction rule; it can be used to derive common knowledge ‘inductively’.
If it is the case that ϕ is ‘self-evident’, in the sense that if it is true, then
38 CHAPTER 1. INTRODUCTION
W. Ka ϕ → DA ϕ if a ∈ A.
KD . DA (ϕ → ψ) → (DA ϕ → DA ψ).
TD . DA ϕ → ϕ.
DD . ¬DA ¬>.
BD . ϕ → DA ¬DA ¬ϕ.
4D . DA ϕ → DA DA ϕ.
5D . ¬DA ϕ → DA ¬DA ϕ.
Proving Completeness
We want to prove that the axiom systems that we have defined are sound
and complete for the corresponding semantics; that is, that K is sound and
complete with respect to K, S5 is sound and complete with respect to S5,
and so on. Proving soundness is straightforward: we prove by induction on
k that any formula proved using a derivation of length k is valid. Proving
completeness is somewhat harder. There are different approaches, but the
common one involves to show that if a formula is not derivable, then there
is a model in which it is false. There is a special model called the canonical
model that simultaneously shows this for all formulas. We now sketch the
construction of the canonical model.
The states in the canonical model correspond to maximal consistent sets
of formulas, a notion that we define next. These sets provide the bridge
between the syntactic and semantic approach to validity.
Definition 1.20 (Maximal consistent set)
A formula ϕ is consistent with axiom system X if we cannot derive ¬ϕ in X.
A finite set {ϕ1 , . . . , ϕn } of formulas is consistent with X if the conjunction
1.2. BASIC CONCEPTS AND TOOLS 39
We can show that a maximal consistent set Γ has the property that,
for every formula ϕ ∈ L, exactly one of ϕ and ¬ϕ is in Γ. If both were
in Γ, then Γ would be inconsistent; if neither were in Γ, then Γ would not
be maximal. A maximal consistent set is much like a state in a Kripke
model, in that every formula is either true or false (but not both) at a
state. In fact, as we suggested above, the states in the canonical model can
be identified with maximal consistent sets.
Definition 1.21 (Canonical model)
The canonical model for L and X is the Kripke model M = hS, R, V i defined
as follows:
Completeness follows relatively easily once these two facts are estab-
lished. If a formula ϕ ∈ L cannot be derived in X then ¬ϕ must be
consistent with X, and thus can be shown to be an element of a maximal
consistent set, say Γ. Γ is a state in the canonical model for X and L. By
the Truth Lemma, ¬ϕ is true at Γ, so there is a model where ϕ is false,
proving the completeness of X.
This argument fails if the language includes the common knowledge
operator. The problem is that with the common knowledge operator in the
language, the logic is not compact: there is a set of formulas such that all its
finite subsets are satisfiable, yet the whole set is not satisfiable. Consider
the set {EAn p | n ∈ N} ∪ {¬C p}, where A ⊆ Ag is a group with at least
A
two agents. Each finite subset of this set is easily seen to be satisfiable in
a model in S5 (and hence in a model in any of the other classes we have
considered), but the whole set of formulas is not satisfiable in any Kripke
model. Similarly, each finite subset of this set can be shown to be consistent
with S5C. Hence, by definition, the whole set is consistent with S5C (and
hence all other axiom systems we have considered). This means that this
set must be a subset of a maximal consistent set. But, as we have observed,
there is no Kripke model where this set of formulas is satisfied.
This means that a different proof technique is necessary to prove com-
pleteness. Rather than constructing one large canonical model for all for-
mulas, for each formula ϕ, we construct a finite canonical model tailored
to ϕ. And rather than considering maximal consistent subsets to the set
of all formulas in the language, we consider maximal consistent sets of the
set of subformulas of ϕ.
The canonical model Mϕ = hSϕ , R, V i for ϕ and KC is defined as
follows:
1.4 Notes
The seminal work of the philosopher Jaakko Hintikka (1962) is typically
taken as the starting point of modern epistemic logic. Two texts on epis-
temic logic by computer scientists were published in 1995: one by Fagin,
Halpern, Moses, and Vardi (1995) and the other by Meyer and van der Hoek
(1995). Another influential text on epistemic logic, which focuses more on
philosophical aspects, is by Rescher (2005). Formal treatments of the no-
tion of knowledge in artificial intelligence, in particular for reasoning about
action, go back to the work of Moore (1977). In the mid-1980s, the con-
ference on Theoretical Aspects of Reasoning About Knowledge (TARK),
later renamed to “Theoretical Aspects of Rationality and Knowledge, was
started (1986); in the mid-1990s, the Conference on Logic and Foundations
of Game and Decision Theory (LOFT) (1996) began. These two conferences
46 CHAPTER 1. INTRODUCTION
tems of the form XC is already in the proof of Kozen and Parikh (1981) for
proving completeness of dynamic logic. Completeness for axiom systems
of the form XD was proved by Fagin, Halpern, and Vardi (1992) and by
van der Hoek and Meyer (1992). A novel proof is provided by Wang (2013,
Chapter 3). Theorem 1.6 is part of logical folklore. A proof of Theorem 1.7
was given by French, van der Hoek, Iliev, and Kooi (2013).
References
Aumann, R. J. (1976). Agreeing to disagree. Annals of Statistics 4 (6), 1236–1239.
Bezhanishvili, N. and W. van der Hoek (2014). Structures for epistemic logic. In
A. Baltag and S. Smets (Eds.), Logical and Informational Dynamics, a volume
in honour of Johan van Benthem, pp. 339–381. Springer.
Blackburn, P., J. van Benthem, and F. Wolter (Eds.) (2006). Handbook of Modal
Logic. Elsevier Science Publishers B.V.: Amsterdam, The Netherlands.
van Ditmarsch, H., W. van der Hoek, and B. Kooi (2007). Dynamic Epistemic
Logic. Berlin: Springer.
Emerson, E. A. (1990). Temporal and modal logic. In J. van Leeuwen (Ed.), Hand-
book of Theoretical Computer Science Volume B: Formal Models and Semantics,
pp. 996–1072. Elsevier Science Publishers B.V.: Amsterdam, The Netherlands.
Fagin, R., J. Y. Halpern, and M. Y. Vardi (1992). What can machines know? on
the properties of knowledge in distributed systems. Journal of the ACM 39 (2),
328–376.
French, T., W. van der Hoek, P. Iliev, and B. Kooi (2013). On the succinctness of
some modal logics. Artificial Intelligence 197, 56–85.
Hayek, F. (1945). The use of knowledge in society. American Economic Review 35,
519–530.
Hintikka, J. (1962). Knowledge and Belief. Cornell University Press: Ithaca, NY.
Reprint: ‘Knowledge and Belief’, in: Texts in Philosophy, Vol. 1, Kings College
Publications, 2005.
van der Hoek, W. and J.-J. Meyer (1992). Making some issues of implicit knowledge
explicit. International Journal of Foundations of Computer Science 3 (2), 193–
224.
Koriat, A. (1993). How do we know that we know? the accessibility model of the
feeling of knowing. Psychological review 100, 609–639.
LOFT (since 1996). Logic and the foundations of game and decision theory. http:
//www.econ.ucdavis.edu/faculty/bonanno/loft.html.
Meyer, J.-J. C. and W. van der Hoek (1995). Epistemic Logic for AI and Computer
Science. Cambridge University Press: Cambridge, England.
Wang, Y. (2013). Logical Dynamics of Group Knowledge and Subset Spaces. Ph.
D. thesis, University of Bergen.