On the Expressiveness and Complexity of ATL Fran¸ cois Laroussinie, Nicolas Markey, Ghassan Oreiby LSV, CNRS & ENS-Cachan Recherches en v´ erification automatique March 14, 2006
Overview of CTL out of gate out of gate request q 0 q 1 CTL A Kripke structure Quantification over paths ( E / A ) q 3 q 2 out of gate in gate grant Example There exists a run such that the train is always out of gate. EG out of gate
Overview of CTL out of gate out of gate request q 0 q 1 CTL A Kripke structure Quantification over paths ( E / A ) q 3 q 2 out of gate in gate grant Example There exists a run such that the train is always out of gate. EG out of gate
Overview of ATL out of gate out of gate request q 0 q 1 ctr train ATL A multi-agent system. Quantification over strategies of agents ctr train q 3 q 2 out of gate in gate grant Example Whenever the train is out of gate, the controller cannot force it to enter the gate. AG ( out of gate = ⇒ ¬ � � ctr � � F in gate )
Overview of ATL out of gate out of gate request q 0 q 1 ctr train ATL A multi-agent system. Quantification over strategies of agents ctr train q 3 q 2 out of gate in gate grant Example Whenever the train is out of gate, the controller cannot force it to enter the gate. AG ( out of gate = ⇒ ¬ � � ctr � � F in gate )
Outline of the talk Introduction 1 Overview of CTL and ATL Definitions 2 Multi-agent models Strategy and outcomes ATL (Alternating-time Temporal Logic) Expressiveness 3 Weak Until Complexity 4 Model checking ATL on CGSs Model checking ATL on ATSs Conclusion 5
Outline of the talk Introduction 1 Overview of CTL and ATL Definitions 2 Multi-agent models Strategy and outcomes ATL (Alternating-time Temporal Logic) Expressiveness 3 Weak Until Complexity 4 Model checking ATL on CGSs Model checking ATL on ATSs Conclusion 5
CGS definition Definition A CGS C is a 5-tuple (Loc , Lab , Agt , Chc , Edg) s.t: Loc: a finite set of locations ; Lab: Loc → 2 AP : a labeling function; Agt = { A 1 , ..., A k } : a set of agents (or players ); Chc: Loc × Agt → N ≥ 1 the choice function. Chc( ℓ, A i ) = number of possible moves for A i from ℓ . Edg: Loc × N k → Loc: the transition table.
Example of a CGS Example � p | p � , � r | r � , � s | s � q 0 Start Player 2 � s | r � , � p | s � , � r | p � � r | s � , � s | p � , � p | r � q 0 p r s p q 0 q 1 q 2 Player 1 r q 2 q 0 q 1 s q 1 q 2 q 0 q 2 q 1 2 − Win 1 − Win Figure: Paper, rock and scissors
Semantics of CGSs From a location ℓ , each agent A i chooses some m A i with m A i < Chc( ℓ, A i ) . Edg( ℓ, m A 1 , · · · , m A k ) gives the new location. Notations: Next( ℓ ) = { Edg( ℓ, · · · m A i · · · ) | ∀ m A i · 1 ≤ i ≤ k } � � Next( ℓ, A j , m ) = Edg( ℓ, · · · , m A j − 1 , m , m A j +1 · · · )
CGS example Example � p | p � , � r | r � , � s | s � q 0 Start Player 2 � s | r � , � p | s � , � r | p � � r | s � , � s | p � , � p | r � q 0 p r s p q 0 q 1 q 2 Player 1 r q 2 q 0 q 1 s q 1 q 2 q 0 q 2 q 1 2 − Win 1 − Win Figure: Paper, rock and scissors
CGS example Example � p | p � , � r | r � , � s | s � q 0 Start Player 2 � s | r � , � p | s � , � r | p � � r | s � , � s | p � , � p | r � q 0 p r s p q 0 q 1 q 2 Player 1 r q 2 q 0 q 1 s q 1 q 2 q 0 q 2 q 1 2 − Win 1 − Win Figure: Paper, rock and scissors
CGS example Example � p | p � , � r | r � , � s | s � q 0 Start Player 2 � s | r � , � p | s � , � r | p � � r | s � , � s | p � , � p | r � q 0 p r s p q 0 q 1 q 2 Player 1 r q 2 q 0 q 1 s q 1 q 2 q 0 q 2 q 1 2 − Win 1 − Win Figure: Paper, rock and scissors
ATS definition Definition An ATS A is a 4-tuple (Loc , Lab , Agt , Chc) where: Loc, Lab and Agt are the same as in CGSs; a move is a set of locations: Chc: Loc × Agt → P ( P (Loc)) with the following requirement: for any location ℓ and for moves Q i ∈ Chc( ℓ, A i ), � Q i must be a singleton. i ≤ k The next location is precisely the location that belongs to all the choices of the agents. Next( ℓ ) and Next( ℓ, A i , m ) are defined in the obvious way.
ATS example Example δ ( q 0 , train ) = {{ q 0 } , { q 1 }} . out of gate δ ( q 1 , ctr ) = {{ q 0 } , { q 1 } , { q 2 }} . out of gate request q 0 q 1 δ ( q 2 , train ) = {{ q 0 } , { q 3 }} . train ctr δ ( q 3 , ctr ) = {{ q 0 } , { q 3 }} . δ ( q 0 , ctr ) = δ ( q 1 , train ) = δ ( q 2 , ctr ) = δ ( q 3 , train ) = { Loc } . ctr train q 3 q 2 out of gate in gate grant Figure: Train controller
Translation CGS ↔ ATS � 3 . 1 � � 2 . 2 � , � 2 . 3 � Naive approach A C � 1 . 1 � Move Player 1 Player 2 � 1 . 2 � 1 { B , D } { A , B , D } � 3 . 2 � B � 1 . 3 � � 3 . 3 � 2 { C , D } { C , D } � 2 . 1 � 3 { A , D } { C , D } D Figure: Converting an CGS into an ATS Cost of the translation: polynomial CGS ATS exponential
Translation CGS ↔ ATS � 3 . 1 � � 2 . 2 � , � 2 . 3 � Correct approach A C � 1 . 1 � Move Player 1 Player 2 � 1 . 2 � 1 { B 1 . 1 , D 1 . 2 , D 1 . 3 } { A 3 . 1 , B 1 . 1 , D 2 . 1 } � 3 . 2 � B � 1 . 3 � � 3 . 3 � 2 { C 2 . 2 , C 2 . 3 , D 2 . 1 } { C 2 . 2 , D 1 . 2 , D 3 . 2 } � 2 . 1 � 3 { A 3 . 1 , D 3 . 2 , D 3 . 3 } { C 2 . 3 , D 1 . 3 , D 3 . 3 } D Figure: Converting an CGS into an ATS Cost of the translation: polynomial CGS ATS exponential
Translation CGS ↔ ATS � 3 . 1 � � 2 . 2 � , � 2 . 3 � Correct approach A C � 1 . 1 � Move Player 1 Player 2 � 1 . 2 � 1 { B 1 . 1 , D 1 . 2 , D 1 . 3 } { A 3 . 1 , B 1 . 1 , D 2 . 1 } � 3 . 2 � B � 1 . 3 � � 3 . 3 � 2 { C 2 . 2 , C 2 . 3 , D 2 . 1 } { C 2 . 2 , D 1 . 2 , D 3 . 2 } � 2 . 1 � 3 { A 3 . 1 , D 3 . 2 , D 3 . 3 } { C 2 . 3 , D 1 . 3 , D 3 . 3 } D Figure: Converting an CGS into an ATS Cost of the translation: polynomial CGS ATS exponential
Strategies and outcomes Definition A computation is an infinite sequence ρ = ℓ 0 ℓ 1 · · · such that ∀ i , ℓ i +1 ∈ Next( ℓ i ). A strategy is a function f A i s.t. f A i ( ℓ 0 , · · · , ℓ m ) = a possible move for A i from ℓ m . The outcomes Out( ℓ, f A i ) are the set of computations from ℓ that agree with the strategy f A i of A i . Notations: given A ⊆ Agt, we note: F A = { f A i | A i ∈ A } Out( ℓ, F A )
Syntax of ATL Definition ([AHK97]) The syntax of ATL is defined by the following grammar: ATL ∋ ϕ s , ψ s ::= p | ¬ ϕ s | ϕ s ∨ ψ s | � � A � � ϕ p ϕ p ::= X ϕ s | G ϕ s | ϕ s U ψ s . where p ranges over the set AP and A over the subsets of Agt. ATL subsumes CTL, since we have: E ϕ p ≡ � � Agt � � ϕ p , A ϕ p ≡ � � ∅ � � ϕ p .
Semantics Definition Semantics ℓ | = � � A � � ϕ p iff ∃ F A ∈ Strat( A ) . ∀ ρ ∈ Out( ℓ, F A ) . ρ | = ϕ p ρ | = ϕ s U ψ s iff ∃ i .ρ [ i ] | = ψ s and ∀ 0 ≤ j < i .ρ [ j ] | = ϕ s We have � � A � � ϕ ⇒ ¬ � � Agt � A � � ¬ ϕ , but ¬ � � A � � ϕ � � � Agt � A � � ¬ ϕ . We denote � A � ϕ for ¬ � � A � � ¬ ϕ
Outline of the talk Introduction 1 Overview of CTL and ATL Definitions 2 Multi-agent models Strategy and outcomes ATL (Alternating-time Temporal Logic) Expressiveness 3 Weak Until Complexity 4 Model checking ATL on CGSs Model checking ATL on ATSs Conclusion 5
Can ATL express weak until? Definition ϕ W ψ ≡ ϕ U ψ ∨ G ϕ CTL E ϕ W ψ ≡ EG ϕ ∨ E ϕ U ψ A ϕ W ψ ≡ ¬ E ( ¬ ψ ) U ( ¬ ϕ ∧ ¬ ψ ) Question Can we express � � A � � a W b in ATL? � � A � � ( G ϕ ∨ ϕ U ψ ) is not an ATL formula, � � A � � ϕ W ψ �≡ � � A � � G ϕ ∨ � � A � � ϕ U ψ.
Can ATL express weak until? Definition ϕ W ψ ≡ ϕ U ψ ∨ G ϕ CTL E ϕ W ψ ≡ EG ϕ ∨ E ϕ U ψ A ϕ W ψ ≡ ¬ E ( ¬ ψ ) U ( ¬ ϕ ∧ ¬ ψ ) Question Can we express � � A � � a W b in ATL? � � A � � ( G ϕ ∨ ϕ U ψ ) is not an ATL formula, � � A � � ϕ W ψ �≡ � � A � � G ϕ ∨ � � A � � ϕ U ψ.
Can ATL express weak until? Question Can we express � � A � � a W b in ATL? Answer: No Theorem Formula ϕ = � � A � � a W b cannot be expressed in ATL. Idea: We present two families of models that cannot be distinguished by ATL formulae of any given size. One model satisfies � � A � � a W b while the other does not.
Can ATL express weak until? Question Can we express � � A � � a W b in ATL? Answer: No Theorem Formula ϕ = � � A � � a W b cannot be expressed in ATL. Idea: We present two families of models that cannot be distinguished by ATL formulae of any given size. One model satisfies � � A � � a W b while the other does not.
Can ATL express weak until? Question Can we express � � A � � a W b in ATL? Answer: No Theorem Formula ϕ = � � A � � a W b cannot be expressed in ATL. Idea: We present two families of models that cannot be distinguished by ATL formulae of any given size. One model satisfies � � A � � a W b while the other does not.
Recommend
More recommend