Uploaded by bayconi

modal-logic-and-its-applications

advertisement
Modal Logic and Its applications
Cheng-Chia Chen
Department of Computer Science,
National Cheng-Chi University
Slide-1
Contents
•
•
•
•
•
Classical propositional logic (CPL)
Basic modal logic
logic of knowledge and belief
deontic logic
logic of actions and programs(PDL)
Slide-2
Elements of a Logic
•
•
•
•
•
•
Language
syntax
(formal language)
semantics (model theory)
axiomatics (proof theory)
decidability & complexity (computation theory)
automated deduction (Theorem proving)
Slide-3
Classical Propositional Logic(CPL)
• The language L:
– a set of proposition symbols (PV) :
– p,q, r ... means it-is-raining, it-is-cloudy, ...
• logical connectives: /\ (and), ~ (negation)
• (well-formed) formulas (abstract syntax):
P ::= p | P /\ Q | ~P
• Definitions:
P \/ Q abbreviates ~(~P /\ ~Q)
P => Q abbreviates ~(P /\ ~Q)
Slide-4
The semantics for CPL
• Goals:
– 1. define the contexts in which formulas can be
given truth values.
– 2. define the truth conditions for formulas.
• interpretation (world, state): any assignment of
truth value {1,0} to propositional symbols
• Truth conditions (or satisfaction relation) |= :
• I |= p iff I(p)=T;
• I |= P /\ Q iff I |= P and I |= Q
• I |= ~P iff not I |= P
Slide-5
Some logical notions
• A formula is satisfiable iff it is true in some world.
• A formula is valid (a tautology) (|= A) if it is true in
all worlds.
• A is a logical consequence of a set of formulas S (S
|= A) iff A is true in all models of S.
• Problems : How to characterize the set
{A | A is a tautology} ?
Slide-6
Calculus and provability
• A calculus C over a language L is a finite set of
rules, each of the form:
– (A1,A2, ..., An, B)
– A1,A2,...,An : Premises
– B: conclusion
– if n = 0 => axioms
• Example: (A, B, A /\B), (A, A=>B, B),
(A=>B, B, A),...
Slide-7
Provability
• Given a calculus C,
• The set C = {A | A is C-provable(denoted |-C A)}
is defined recursively as follows:
– Basis:If (A) is a rule, then A in C ---axioms
– Ind: If (A1,..,An,B) is a rule &
–
A1,...,An in C, then B in C.
Slide-8
An axomatization for CPL
• Let CPL be the calculus:
(1) Axiom schema:
– A => (B => A)
– (A=>(B =>C)) => ((A=>B)=>(A=>C))
– (~A => ~B) => (B => A)
(2) Inference rule:
– from A and A => B infer B (MP)
• Theorem: A is valid in CPL iff A is CPL-provable
Slide-9
Basic Modal logic
• The logical study of necessity and possibility
• The language:
– CPL augmented with two modal operators: []
(necessity) and ⃟ (possibility).
– P : any proposition , then
[]P (<>P) means “P is necessarily (possibly) true”.
– Meaning of []p:
• depends on the context it is used, not only
determined by the truth value of p
• A family of logics instead of a single logic
Slide-10
Types of necessity
• logical necessity:
– e.g, p \/ ~p is logically necessarily true.
• physical necessity:
– F=ma
• Epistemic necessity:
– e.g., It is believed(known) that ...
• Normal necessity:
– e.g., It is obligated (permitted, forbidden) that ...
• time-related (always, eventual)
• Others:
– After the programs terminates P must holds,...
Slide-11
Formal Definition
• The language:
– Alphabet (S):
• PV: a set of propositional variables.
• logical connectives: ~ (not), /\ (and), [] (necessity)
– MF: a set of modal formulas defined inductively:
• A ::= p | A /\ B | ~ A | []A
– Abbreviations (Macros)
• (A \/ B) abbreviates ~(~A /\ ~B);
• (A  B) abbreviates ~(A /\ ~B)
• ⃟ A abbreviates ~[]~A
Slide-12
Possible-world Semantics for modal logic
• Truth conditions for p /\ q, p \/ q, p  q, and ~p .
– Let p = “I win the game”,
–
q = “It is 5 p.m.”
– Assume I win the game and
–
the present time is 3 p.m,
– then p/\q: false, p\/q: true and pq: false.
• But how about the statement:
[]p =It must be the case that I win the game. “
Slide-13
Meaning of necessity and possibility:
• The game:
– Two players A,B, each getting a card from four
cards labeled 1,2,3,4 randomly.
• rule:
– The player who get a card larger than the other’s
wins.
Slide-14
Scenario I: A gets “2”.
• Then consider the following sentences:
– 1. “A may possibly win”
• = “It is possibly true that A win” = “⃟A_win”
– 2. “A may possibly not win”
– 3. “A must win”
– 4. “B must not get “2””
• Which is right ? why?
Slide-15
The answer:
• Statement 1 is right
– since (2,1) may be the real world, in which A
wins.
• Statement 2 is right
– since (2,3), (2,4) are possible, in which A does
not win.
• statement 3 is false
– since there are cases (e.g., (2,3), (2,4)) in which
A does not win.
• Statement 4 is true since in all possible cases B
does not get 2.
Slide-16
The Rule:
(2,1)
A_win
~B_2
(3,4)
Impossible worlds
~[]A_win
⃟ A_win
⃟ ~A_win
[] ~B_2
(2,4)
~A_win
~B_2
(2,3)
~A_win
~B_2
(2,?)
Real world
Possible worlds
Slide-17
The Possible-world Semantics:
• Let W = the set of worlds
– e.g, {(x,y) | x = 1..4, y =1..4 & x  y}
• Let V : W x PV -> {0,1} be a valuation function
s.t., V(w,p) =1 iff p is assigned true at world w.
– e.g, V((2,1), A-win) = 1
• R be a binary relation (I.e., subset of WxW) s.t.
wRw’ iff w’ is a possible world of w.
– e.g, (2,x)R(2,1), (2,x)R(2,3), (2,x)R(2,4).
• The triple M=<W,R,V> is called a (possible-world)
structure.
Slide-18
Truth-conditions for modal formulas
M = <W,R,V>: a possible world structure;
w: a world ∈ W,
• The statement : “A is true at world w in structure M”
is defined as follows:
– M,w |= p iff V(w,p) = 1
– M,w |= A /\ B iff M,w |= A and M,w |= B
– M,w |= ~A iff not M,w |= A.
– M,w |= ⃟ A iff
–
A is true at some possible world of w.
– M,w |= [] A iff A is true at all possible worlds of w.
Slide-19
Some definitions
•
•
•
•
A: modal formula, M: structure,
C: a class of structures
A is valid iff it is true in all worlds of all structures.
A is C-valid iff it is true at all worlds of all
structures of C.
• Problem: Given a class of structures C,
– {A | A is C-valid } = ?
Slide-20
Interesting classes of structures
•
•
•
•
•
•
Class name
T
D
4
5
B
Property of R
reflexive: wRw.
serial: for all w, there is w’ s.t. w R w’.
transitive: wRw’ & w’Rw’’ ⇒ wRw’’.
Eulidean: wRw’ & wRw’’ ⇒ w’ R w’’.
symmetric: wRw’ ⇒ w’Rw.
• r: any string from {T,D,4,5,B} without repetition.
• Kr = the class of the structures whose R satisfying all
properties mentioned in r.
– (I.e., Every theorem of the logic Kr is valid in all Krstruture, and vice versa.)
Slide-21
Axiomatization of modal logics
•
•
•
•
•
•
•
•
•
Axioms
definitions
PC
all truth-functional tautologies
K
[](PQ) ([]P []Q)
T
[]P  P
D
[]P  ~[]~p
4
[]P [][]P
5
~[]P []~[]P
B
~P []~[]P.
Inference rule: MP: from P, P  Q infer Q
Nec: from P infer []P
Slide-22
Axiomatizations of modal logic
• r: any subset {T,D,4,5,B}.
• Kr = the axiom system (calculus) including axioms
K, PC and all of r and inference rules MP and Nec.
• Kr-provable formulas are defined recursively as
follows:
– 1. Every axioms of Kr is Kr-provable.
– 2. If P, P  Q are Kr-provable then so is Q (MP)
– 3. If P is Kr-provable, then so is []P (Nec).
• Theorem[Chellas80]:
– A is Kr-valid iff A is Kr-provable.
Slide-23
Some useful modal logics
•
•
•
•
•
•
Logical system Property of R
S5 (KT45)
equivalence
KD
serial
KD45
almost equ.
S4 (KT4)
ref. tran.
S4.3
linear(total)
w

usage
logic of knowledge
deontic logic
logic of belief
Intuitionistic logic
temporal logic
{w’ | w R w’}

w

real world must be possible



Worlds inside are
fully connected
real world may and may not be possible
Slide-24
Logic of Knowledge and Belief
• Modal logic of knowledge : KT45(S5)
• Modal logic of belief: KD45( weak S5)
• Epsitemic interpretation of knowledge&belief axioms
– KA means A is known; BA means A is believed.
– T: []A  A
(knowledge axioms)
– D: []A  ~[]~A
(belief axiom)
– 4: []A [][] A
(positive introspection)
– 5:~[]A []~[]A
(negative introspection)
– K:[]A /\ [](A  B) []B (distribution axiom)
– Nec: From p infer []p -- agent knows the logic
Slide-25
Extensions to multimodal logics:
– S5 (KD45) can model only one single agent’s
knowledge (believes)
– Multi-agent cases: n agents: 1,2,3,...,n;
• 2n knowledge(and belief) operators K1,B1,...,Kn,Bn:
• KiA ( BiA ) means agent i knows(resp. believes) A.
– Resulting logic: S5nWS5n
• N copies of S5, and N copies of KD45,
each for one agent.e.g., Tj: KjAA where j =1,..,n.
– semantics: Structure M=<W,{Ki,Bi}i=1..n, V>
• Each Ki is an equivalence relation on W and Bi is a
serial,trans. and euclidean relation.
Slide-26
Related Issues[Halpern85]
• Logical Omniscience Problem:
• Agents with S5 (KD45) ability are perfect logical
reasoners, but human never be.
• Common knowledge, Distributed knowledge
– [E]P = [1]P /\ [2]P.../\[n]P
– [C]P = [E]P /\[E][E]P /\ [E][E][E]P /\ ...
= [E]P /\[E][C]P
– [D]P = P can be known by an agent who knows
all what others known (the wisest man).
– Needed and useful in many fields
(Economics,distributing sys,AI ...)
Slide-27
Deontic interpretation of modal logic
• Deontic logic (D or KD)
– PA means A is permitted; OA means A is
obligated; FA means A is forbidden.
– A is (strongly) forbidden =
• Doing A or bringing about A will result in punishment
(dangerous, disastrous) worlds.
– A is obligated = not doing A or not bring about A
will result in punishment. = ~A is forbidden.
– A is (weekly) permitted = A is not forbidden =
doing A may not result in punishment.
– Another possible pairs:
– weekly forbidden/strongly permitted
Slide-28
Semantic analysis of forbidden, obligation and permission
~drive-car
murder
~pay-tax
~dead
~drive-car
~pay-tax
dead
~murder
~drive-car
pay-tax
~murder
~dead
drive-car
~dead pay-tax
~ murder
current world
commit-crime or dead
(undesired world)
Permitted worlds
drive-car
murder
pay-tax
dead
sets of worlds which may
become the real world
F murder : since all murder-worlds are red.
O pay-tax: since all ~pay-tax world are red.
P drive-car: some drive-car-world is white.
Slide-29
Formalization of Deontic logic
• W: The set of all possible worlds
• D: A set of undesired, punishment world
• V: WXPV -> {0,1} with the constraint that
– V(w,v) = 1 iff w ∈ D.
• I.e., we use v to denote all sanction or punishment
worlds.
• R: a binary relation on W, s.t.
– wRw’ means w’ is a possible world that the agent
may choose to become the real world from w.
Slide-30
Truth conditions for PA,OA, &FA
– M,w |= FA iff M,w |= [] (Av)
• ie., for all w’, if wRw’ & M,w|=A then M,w |= v.
– M,w |= OA iff M,w |= F~A iff M,w |= [](~A v)
– M,w |= PA iff M,w |=~FA iff M,w |= ⃟(A/\ ~v)
• I.e., there is a world w’ s.t. wRw’ & M,w |= A /\ ~v.
Slide-31
Properties of the deontic logic:
• By definition:
– FA = [] (A v) ;
– OA = F~A = [](~A  v);
– PA = ~FA =  (A /\ ~v);
• All KD axioms(K, D)
• Desirable property: OA => PA: not valid in K but
valid in KD (I.e., R must be serial)
Slide-32
Temporal interpretation of modal logic
Taxonomy of temporal structures:
• linear
v.s. branch-time,
• past time v.s. future time v.s. past&future
• continuous v.s. discrete
possible past
now
real history
real past
real future
possible future
Slide-33
Linear discrete time temporal logic
• Temporal operators:
– FA means A is eventually true
– GA means A is always true
– A U B means A is true until B becomes true
– 0A: A is true at the next time.
Slide-34
Meaning of temporal formulas
•Linear discrete-time temporal structure:
0
initial world
1
2
3 ..... n n+1
Fp
Gq q
q
0r r
AUB
A A
m
q
q
A
A
p
q ....
q.....
B
Slide-35
Meaning of temporal formulas
•
•
•
•
linear discrete temporal logic:
W = N = {0,1,2,3,...} :time point set
V:NXPV -> {0,1}
Truth conditions:
– M,n |= 0A iff M,n+1 |= A.
– M,n |= FA iff there is m  n s.t., M,m |= A
– M,n |= GA iff for all m  n, M,m |= A.
– M,n |= A U B iff there is m  n s.t., M,m|= B &
for all m > s  n, M,s |= A.
Slide-36
Logic of programs and actions
• Modal logic of programs (Dynamic Logic)
• PDL: propositional version of DL
• The language:
– Primitive programs: a,b,c,...
– Primitive propositions: p,q,r...
– program constructs: “ ;”, “|”,”*”,”?”.
– logic connectives: /\,~, [A] for each program A.
Slide-37
Syntax of Programs
– (Compound) Programs A ::=
•
•
•
•
•
•
a
| any primitive program is a program (x++ in C)
A;B | doing A and then doing B
A+B | doing A or doing B nondeterministically
A*
| iterate A a nondeterminstic number of times
A* = t + A + A;A + A;A;A + ...
P?
| test if P is true.
Slide-38
Syntax of Formulas
– Formulas(assertions): P ::=
–p
any primitive proposition is a formula
– P /\ Q both P and Q are true
– ~P
P is not true
– [A]P
After A terminates, P will be true.
– <A>P = ~[A]~P means P holds at some
execution of A.
Slide-39
An Example:
• integer x,y,z
– x := 3 ;
– y := (1,4);
– z := x+1 | y := x
• Problems:
– Is it true that z > 0 or y  x-2 after executing the
program, suppose initially the program state is
(4,3,2) ?
Slide-40
Formalization of the problem:
• two primitive propositions:
– p = “z > 0” ; q = “z  x-2”
• four primitive programs:
– a = “x := 3”,
b = “y :=(1,4)”,
– c = “z := x+1” , d = “y := x”.
• The program : A = a;b; (c | d)
• The problem: is [A] (p \/ q) true ?
Slide-41
Analysis:
• A program state is triple (I,j,k) of integers,
– which denote the possible simultaneous values
of variables (x,y,z).
• Let W = {(i,j,k) | i,j,k are integers} be the set of all
possible program states.
Slide-42
a = “x := 3”,
p = “z > 3” ,
b = “y :=(1,4)”, c = “z := x+1” , d = “y := x”.
q = “z >= x+1”
a;b;(c+d)
c
a;b
(4,3,2)
initial program
state
(3,1,2)
a
b
b
(3,3,2)
~p
~(p\/q)
~q
(3,4,4)
p
p\/q
q
(3,3,2)
~p ~(p\/q)
~q
d
c+d
(3,3,2)
(3,1,4)
p
p\/q
q
c
(3,4,2)
d
Slide-43
(i,1,k)
(3,j,k)
a: x:=3
b: y:=(1,4)
(i,j,k)
b
(i,4,k)
c: z:= x+1
(i,j,i+1)
d: y := x
(i,4,k)
Slide-44
The Semantic rules
• 0. Let W = the set of all possible program states
• 1. Each primitive proposition has a truth value in a
program state:
– denoted by a function: V: W x PV  {1,0} s.t.
– V(w,p) = 1 iff p is true at state w.
• 2. Each primitive program a is a state transformer,
denoted by a binary relation R(a): WxW s.t.,
• w R(a) w’ means the program state can become w’
from w by executing a.
• M=<W,R,V> is called a (program) structure.
Slide-45
Composition rule for programs:
• R(A;B) = R(A)R(B) = {(w,w’’) | there is w’ s.t., w R w’
and w R w’’.
• R(A+B) = R(A) U R(B);
• R(A)* = I UR(A) UR(A)R(A) U ...
= R(A)* I.e., ref. and trans closure of R(A).
• R(P?) = {(w,w) | P is true at w}.
• Define classical program constructs:
– if P then A else B  P?;A + ~P?;B
– while P do A
 (P?;A)* ; (~P?)
– Repeat A until P  A;(~P?;A)*;P?
Slide-46
Truth conditions for Formulas
– M,w |= p
iff V(w,p)=1
– M,w |= P /\ Q iff M,w|=P and M,w|=Q.
– M,w|=~P
iff not M,w|=P.
– M,w|= [A]P iff for all w’, w RA w’ then M,w’|=P.
– M,w|=<A>P iff there is w s.t. wRAw’ & M,w’|=p.
• A formula is valid iff it is true at every world of every
program structure.
• A formula is satisfiable if it is true at some world of
some program structure.
• Subsume Hoare logic: P {A} Q  (P  [A] Q)
Slide-47
Variants of PDL [Harel84]
• DPDL
– atomic programs are deterministic
• SPDL (structure PDL)
– remove + and *
– add “if then else” and “while do”.
• SDPDL (structure DPDL):
– atomic programs are deterministic
– replace + and * by “if then else” and “while do”.
Slide-48
PDL as a logic of actions
• Too strong part:
– The *-operator may not be necessary
– The +-operator is not very natural
• Too weak part:
– need a notion of not doing something
• (I.e., A: an action => -A : an action (not doing A)
– need a notion of concurrent/parallel execution of
actions. A,B: actions =>
• A&B means (doing A and B in parallel))
• A \/ B means A;B + B;A + A&B
– Need internal free choice: A  B
Slide-49
Axiomatize PDL
• The following formulas are valid in PDL
1. CPL: all tautologies of propositonal logic
2. K:
[A](PQ) /\ [A]P  [A]Q
3. cmp: [A;B]P <-> [A][B]P
4. union: [A+B]P <->([A]P /\ [B]P)
5. test: [P?]Q <-> (PQ)
6. mix: [A*]P -> (P /\[A]P /\ [A][A]P /\ …)
∴ [A*]P -> (P /\ [A][A*]P)
7. induction: (P /\ [A*](P [A]P))  [A*]P
Slide-50
PDL
• Valid inference rules in PDL:
– MP: From P and P  Q infer Q
– Gen: From P infer [A]P
• Theorem:
– 1. P is valid in PDL iff P can be proved from the
above calculus. (In symbols, |=PDLP|-PDLP)
– 2. The set {A | A is a valid in PDL} is EXPTIMEcomplete
Slide-51
Download