Awareness and forgetting of facts and agents

Awareness and forgetting of facts and agents
Hans van Ditmarsch
University of Sevilla, Spain & University of Otago, New Zealand
Email: [email protected]
Tim French
University of Western Australia, Perth, Australia
Email: [email protected]
Knowledge and awareness
◮
Difference between knowledge and awareness?
◮
You are unaware of a proposition iff you do not know that it is
the case, and you also do not know that it is not the case.
◮
becoming aware / forgetting
is related to
program refinement / program abstraction
Becoming aware of a new fact
Agent i is uncertain of the value of fact (prop. variable) p.
i
¬p
i
p
i
One way in which agent i becomes aware of another fact q.
i
i
¬pq
i
i
¬p¬q
i
p¬q
i
But what about an initial value for q?
Two types of facts, and forgetting
Distinguish two types of facts:
◮
the agent is aware of the relevant facts
◮
the agent is unaware of the irrelevant facts — between ( and )
agent i becomes aware of fact q i
i
¬p(q)
i
p(q)
i
agent i forgets fact q
i
¬pq
i
i
¬p¬q
i
p¬q
i
Becoming aware of other agents
agent i becomes aware of agent j
i (j) ¬p(q)
i
ij
p(q) i (j)
¬p(q)
j
agent i forgets agent j
ij
¬p(q)
Agent i becomes aware of and forgets about agent j.
On the right it holds that:
If j knows that p is false, then j is uncertain if i knows that.
i
p(q)
ij
Implicit knowledge and explicit knowledge
No relation between implicit knowledge and explicit knowledge:
agent i becomes aware of fact q i
i
¬p(q)
i
p(q)
i
i
¬pq
i
i
¬p¬q
i
p¬q
i
p¬q
i
Implicit knowledge becomes explicit knowledge:
i
¬p(q)
i
agent i becomes aware of fact q i
i
i ¬p(¬q) i
p(¬q)
i
i
¬pq
i
i
¬p¬q
i
Logics for awareness change
◮
Logic of public global awareness
◮
Logic of individual global awareness
◮
Logic of individual local awareness
◮
Quantifying over all possible ways to become aware,
no specific awareness change
Structures
An epistemic awareness model M = (S, R, A, V ) for N and P
consists of a domain S of (factual) states (or ‘worlds’), an
accessibility function R : N → P(S × S), an awareness function
A : N → S → P(P ∪ N) and a valuation function V : P → P(S).
Given an agent i and a state s, a fact in Ai (s) is called relevant,
and a fact in P \ Ai (s) is called irrelevant. Similarly, an agent in
Ai (s) is called visible, and an agent in N \ Ai (s) is called invisible.
Structures — restrictions for the awareness function
◮
public global awareness:
the value of A is the same for all agents and for all states.
◮
individual global awareness:
the awareness is the same in all states, but maybe different
between agents.
◮
individual local awareness:
the awareness may be different for all agents and in all states.
◮
no uncertain awareness:
if (s, t), (s, u) ∈ Ri , then Ai (t) = Ai (u).
(for equivalence relations: Ri is a refinement of the partition
induced by Ai .)
Logic of public global awareness — LPGA
The language L0 of public global awareness is defined as
ϕ ::= p | ϕ ∧ ϕ | ¬ϕ | Ki ϕ | ∃pϕ | ∃i ϕ | Aϕ
Notational abbreviations:
⊤
K̇i ϕ
˙
∃pϕ
˙∃i ϕ
˙
`pϕ
˙`i ϕ
K̇i ϕ
˙
∃pϕ
˙ ϕ
∃i
˙
`pϕ
˙ ϕ
`i
=
=
=
=
=
=
∃p(p ∨ ¬p)
Aϕ ∧ Ki ϕ
¬Ap ∧ ∃p(ϕ ∧ Ap)
¬AKi ⊤ ∧ ∃i (ϕ ∧ AKi ⊤)
Ap ∧ ∃p(ϕ ∧ ¬Ap)
AKi ⊤ ∧ ∃i (ϕ ∧ ¬AKi ⊤)
agent i (explicitly) knows ϕ
after the agents become aware of fact p, ϕ
after the agents become aware of agent i , ϕ
after the agents forget fact p, ϕ
after the agents forget agent i , ϕ
Logic of public global awareness — semantics
(M, s) |= p
(M, s) |= ϕ ∧ ψ
(M, s) |= ¬ϕ
(M, s) |= Ki ϕ
(M, s) |= ∃pϕ
(M, s) |= ∃i ϕ
(M, s) |= Aϕ
iff
iff
iff
iff
iff
s ∈ V (p)
(M, s) |= ϕ and (M, s) |= ψ
(M, s) 6|= ϕ
for all t : (s, t) ∈ Ri ⇒ (M, t) |= ϕ
there is a (M ′ , s ′ ) such that
(M, s) ↔ p (M ′ , s ′ ) and (M ′ , s ′ ) |= ϕ
iff there is a (M ′ , s ′ ) such that
(M, s) ↔ i (M ′ , s ′ ) and (M ′ , s ′ ) |= ϕ
iff var (ϕ) ⊆ A(S)
Public global awareness — example
agent i becomes aware of fact q i
i
¬p(q)
i
p(q)
i
i
The following hold throughout the initial model:
˙ K̇i ¬(p ∨ q)
Ap, ¬Aq, ∃q
The two models are bisimilar except for fact q.
¬pq
i
i
¬p¬q
i
p¬q
i
Public global awareness — another example
agent i becomes aware of agent j
i (j) ¬p(q)
i
ij
p(q) i (j)
¬p(q)
j
ij
¬p(q)
i
p(q)
In the initial model, in the (left) state where p is false and relevant
and q is true and irrelevant, it is true that:
◮
∃j(Kj ¬p → ¬Kj Ki Kj ¬p ∧ ¬Kj ¬Ki Kj ¬p)
After the agents become aware of j, then if that agent knows
that p is false he is uncertain if agent i knows that.
The two models are bisimilar except for agent j.
ij
Logic of individual global awareness — LIGA
The language L of individual awareness is defined as
ϕ ::= p | ϕ ∧ ϕ | ¬ϕ | Ki ϕ | ∃i pϕ | ∃i i ϕ | Ai ϕ
Abbreviations for explicit knowledge and awareness:
K̇i ϕ = Ai ϕ ∧ Ki ϕ
∃˙ i pϕ = ¬Ai p ∧ ∃i p(ϕ ∧ Ai ϕ)
∃˙ i jϕ = ¬Ai Kj ⊤ ∧ ∃i j(ϕ ∧ Ai Kj ⊤)
(M, s) |= ∃i pϕ iff there is a (M ′ , s ′ ) such that
(M, s) ↔ i (M ′ , s ′ ), (M, s) ↔ p (M ′ , s ′ ),
and (M ′ , s ′ ) |= ϕ
(M, s) |= ∃i jϕ iff there is a (M ′ , s ′ ) such that
(M, s) ↔ i (M ′ , s ′ ), (M, s) ↔ j (M ′ , s ′ ),
and (M ′ , s ′ ) |= ϕ
(M, s) |= Ai ϕ iff var (ϕ) ⊆ Ai (S)
Individual global awareness — example
Let’s skip that one!
Awareness bisimulation — example
In the actual state s agent i is aware of agent j and of fact p, and
state t is i -accessible from the actual state. In state t, agent j is
aware of p and q. That agent j is also aware of q should leave
agent i indifferent, as she was not aware of q in the actual state.
Therefore, in case agent i were to become aware of q in state s,
she should consider it possible that j is unaware of q in that
i -accessible state t. Under conditions of public or individual global
awareness this is not a variation we care to consider: if j is aware
of q in t, then he is already aware of q in the actual state s.
Clearly, we do not want to change the value of atoms of which
agents are aware in the actual state.
Bisimulation — definition
A non-empty relation R ⊆ S × S ′ is a bisimulation, iff for all s ∈ S
and s ′ ∈ S ′ with (s, s ′ ) ∈ R:
atoms s ∈ V (p) iff s ′ ∈ V ′ (p) for all p ∈ P;
aware for all i ∈ N, Ai (s) = A′i (s ′ );
forth for all i ∈ N and t ∈ S, if Ri (s, t) then there is a
t ′ ∈ S ′ such that Ri (s ′ , t ′ ) and (t, t ′ ) ∈ R;
back for all i ∈ N and t ′ ∈ S ′ , if Ri (s ′ , t ′ ) then there is a
t ∈ S such that Ri (s, t) and (t, t ′ ) ∈ R.
◮
(M, s) ↔ (M ′ , s ′ ): there is a bisimulation between M and M ′
linking s and s ′ .
◮
A bisimulation except for fact p satisfies atoms for P − p,
and aware to the extent that Ai (s) − p = Ai (s ′ ) − p.
(M, s) ↔ p (M ′ , s ′ ): there is a bisimulation except for fact p.
◮
Awareness bisimulation — definition
A non-empty relation RA ⊆ S × S ′ is an awareness bisimulation
between (M, u) and (M ′T
, u ′ ), notation (M, u) ↔ A (M ′ , u ′ ), iff
(u, u ′ ) ∈ RA and RA = j∈N(u) RA
j [A(u)]. We continue by
A
′′
′′
defining Rj [A ] for any A : N → P(P ∪ N). Let such a A′′ be
′′
given, s ∈ S, and s ′ ∈ S ′ , then (s, s ′ ) ∈ RA
j [A ] iff:
atoms s ∈ V (p) iff s ′ ∈ V ′ (p) for all p ∈ A′′j ;
aware for all i ∈ A′′j , Ai (s) ∩ A′′j = A′i (s ′ ) ∩ A′′j ;
forth for all i ∈ A′′j and t ∈ S, if Ri (s, t) then there is a
′′
′
t ′ ∈ S ′ s.t. Ri (s ′ , t ′ ) and (t, t ′ ) ∈ RA
j [A ∩ A (t)];
back for all i ∈ A′′j and t ′ ∈ S ′ , if Ri (s ′ , t ′ ) then there is a
′′
′
t ∈ S such that Ri (s, t) and (t, t ′ ) ∈ RA
j [A ∩ A (t)].
′′
′
In the back and forth clauses, the relation RA
j [A ∩ A (t)] is
inductively assumed to be already defined.
Awareness bisimulation RA versus bisimulation R
◮
R is a refinement of RA
◮
Public global awareness: R|A(S) = RA
◮
Individual global awareness: a more complex relation, but this
is also a boundary case.
Logic of individual local awareness — LILA
Basic construct for becoming aware is ∃A
i pϕ, with an upper index
to distinguish it from the previous ∃i pϕ, where the A expresses
that it is interpreted using RA . Its semantics is:
(M, s) |= ∃A
i pϕ
iff
there is a (M ′ , s ′ ) s.t. (M, s) ↔ A (M ′ , s ′ ) and (M ′ , s ′ )Ai +p |= ϕ
This says that (there is a way in which) the agent i becomes aware
of atom p in the current state if there is a model similar to the
current one in all its observable aspects except that fact p is added
to the awareness set for that agent in all states accessible for that
agent from actual state s (in accordance with ‘no uncertain
awareness’).
Many issues of ongoing and further research
◮
Precise sense in which ‘public global’ and ‘individual global’
are boundary cases of ‘individual local’.
◮
Axiomatization, model checking (aye, bisimulation quantified
logics...)
◮
Logics for awareness change and information change,
such as announcements addressing an issue.
Many issues of ongoing and further research
◮
Precise sense in which ‘public global’ and ‘individual global’
are boundary cases of ‘individual local’.
◮
Axiomatization, model checking (aye, bisimulation quantified
logics...)
◮
Logics for awareness change and information change,
such as announcements addressing an issue.
(‘I am playing cello tomorrow’)