on the semantics of strategy logic
play

On the semantics of Strategy Logic Nicolas Markey IRISA CNRS & - PowerPoint PPT Presentation

On the semantics of Strategy Logic Nicolas Markey IRISA CNRS & Univ. Rennes 1 (based on joint works with Patricia Bouyer, Patrick Gardy, and Franois Laroussinie) Dagstuhl, March 17, 2017 Computation-Tree Logic (CTL) atomic


  1. On the semantics of Strategy Logic Nicolas Markey IRISA – CNRS & Univ. Rennes 1 (based on joint works with Patricia Bouyer, Patrick Gardy, and François Laroussinie) Dagstuhl, March 17, 2017

  2. Computation-Tree Logic (CTL) atomic propositions: , , ...

  3. Computation-Tree Logic (CTL) atomic propositions: , , ... boolean combinators: ¬ ϕ , ϕ ∨ ψ , ϕ ∧ ψ , ...

  4. Computation-Tree Logic (CTL) atomic propositions: , , ... boolean combinators: ¬ ϕ , ϕ ∨ ψ , ϕ ∧ ψ , ... temporal modalities: X ϕ “next ϕ ” ϕ ϕ U ψ “ ϕ until ψ ” ϕ ϕ ψ

  5. Computation-Tree Logic (CTL) atomic propositions: , , ... boolean combinators: ¬ ϕ , ϕ ∨ ψ , ϕ ∧ ψ , ... temporal modalities: X ϕ “next ϕ ” ϕ ϕ U ψ “ ϕ until ψ ” ϕ ϕ ψ true U ϕ ≡ F ϕ ϕ “eventually ϕ ” ¬ F ¬ ϕ ≡ G ϕ “always ϕ ” ϕ ϕ ϕ ϕ ϕ

  6. Computation-Tree Logic (CTL) atomic propositions: , , ... boolean combinators: ¬ ϕ , ϕ ∨ ψ , ϕ ∧ ψ , ... temporal modalities: X ϕ “next ϕ ” ϕ ϕ U ψ “ ϕ until ψ ” ϕ ϕ ψ true U ϕ ≡ F ϕ ϕ “eventually ϕ ” ¬ F ¬ ϕ ≡ G ϕ “always ϕ ” ϕ ϕ ϕ ϕ ϕ path quantifiers: ϕ ϕ ϕ E ϕ A ϕ ϕ ϕ ϕ ϕ

  7. Quantified CTL [ES84,Kup95,Fre01] QCTL extends CTL with propositional quantifiers ∃ p . ϕ means that there exists a labelling of the model with p under which ϕ holds. [ES84] Emerson and Sistla. Deciding Full Branching Time Logic. Information & Control, 1984. [Kup95] Kupferman. Augmenting Branching Temporal Logics with Existential... CAV, 1995. [Fre01] French. Decidability of Quantifed Propositional Branching Time Logics. AJCAI, 2001.

  8. Quantified CTL [ES84,Kup95,Fre01] QCTL extends CTL with propositional quantifiers ∃ p . ϕ means that there exists a labelling of the model with p under which ϕ holds. � � E F ∧ ∀ p . E F ( p ∧ ) ⇒ A G ( ⇒ p ) [ES84] Emerson and Sistla. Deciding Full Branching Time Logic. Information & Control, 1984. [Kup95] Kupferman. Augmenting Branching Temporal Logics with Existential... CAV, 1995. [Fre01] French. Decidability of Quantifed Propositional Branching Time Logics. AJCAI, 2001.

  9. Quantified CTL [ES84,Kup95,Fre01] QCTL extends CTL with propositional quantifiers ∃ p . ϕ means that there exists a labelling of the model with p under which ϕ holds. � � E F ∧ ∀ p . E F ( p ∧ ) ⇒ A G ( ⇒ p ) ≡ uniq ( ) [ES84] Emerson and Sistla. Deciding Full Branching Time Logic. Information & Control, 1984. [Kup95] Kupferman. Augmenting Branching Temporal Logics with Existential... CAV, 1995. [Fre01] French. Decidability of Quantifed Propositional Branching Time Logics. AJCAI, 2001.

  10. Quantified CTL [ES84,Kup95,Fre01] QCTL extends CTL with propositional quantifiers ∃ p . ϕ means that there exists a labelling of the model with p under which ϕ holds. � � E F ∧ ∀ p . E F ( p ∧ ) ⇒ A G ( ⇒ p ) ≡ uniq ( ) � true if we label the Kripke structure; � false if we label the computation tree; [ES84] Emerson and Sistla. Deciding Full Branching Time Logic. Information & Control, 1984. [Kup95] Kupferman. Augmenting Branching Temporal Logics with Existential... CAV, 1995. [Fre01] French. Decidability of Quantifed Propositional Branching Time Logics. AJCAI, 2001.

  11. Semantics of QCTL structure semantics: p ⇔ | = s ∃ p .ϕ | = ϕ

  12. Semantics of QCTL structure semantics: p ⇔ | = s ∃ p .ϕ | = ϕ tree semantics: p ⇔ | = t ∃ p .ϕ | = ϕ p p p

  13. Expressiveness of QCTL QCTL can “count”: E X 1 ϕ ≡ E X ϕ ∧ ∀ p . [ E X ( p ∧ ϕ ) ⇒ A X ( ϕ ⇒ p )] E X 2 ϕ ≡ ∃ q . [ E X 1 ( ϕ ∧ q ) ∧ E X 1 ( ϕ ∧ ¬ q )]

  14. Expressiveness of QCTL QCTL can “count”: E X 1 ϕ ≡ E X ϕ ∧ ∀ p . [ E X ( p ∧ ϕ ) ⇒ A X ( ϕ ⇒ p )] E X 2 ϕ ≡ ∃ q . [ E X 1 ( ϕ ∧ q ) ∧ E X 1 ( ϕ ∧ ¬ q )] QCTL can express (least or greatest) fixpoints: µ T .ϕ ( T ) ≡ ∃ t . [ A G ( t ⇐ ⇒ ϕ ( t )) ∧ ( ∀ t . ′ ( A G ( t ′ ⇐ ⇒ ϕ ( t ′ )) ⇒ A G ( t ⇒ t ′ )))]

  15. Expressiveness of QCTL QCTL can “count”: E X 1 ϕ ≡ E X ϕ ∧ ∀ p . [ E X ( p ∧ ϕ ) ⇒ A X ( ϕ ⇒ p )] E X 2 ϕ ≡ ∃ q . [ E X 1 ( ϕ ∧ q ) ∧ E X 1 ( ϕ ∧ ¬ q )] QCTL can express (least or greatest) fixpoints: µ T .ϕ ( T ) ≡ ∃ t . [ A G ( t ⇐ ⇒ ϕ ( t )) ∧ ( ∀ t . ′ ( A G ( t ′ ⇐ ⇒ ϕ ( t ′ )) ⇒ A G ( t ⇒ t ′ )))] Theorem QCTL and MSO are equally expressive (under both semantics).

  16. Decision problems for QCTL Theorem Under the structure semantics: model checking is PSPACE -complete; satisfiability is undecidable.

  17. Decision problems for QCTL Theorem Under the structure semantics: model checking is PSPACE -complete; satisfiability is undecidable. Under the tree semantics: model checking is k - EXPTIME -complete (for k nested quantifiers); satisfiability is ( k + 1 ) - EXPTIME -complete (for k nested quantifiers).

  18. Games on graphs

  19. Games on graphs Concurrent games A concurrent game is made of a transition system; q 1 q 0 q 2

  20. Games on graphs Concurrent games A concurrent game is made of a transition system; a set of agents (or players); q 1 q 0 q 2

  21. Games on graphs Concurrent games A concurrent game is made of a transition system; a set of agents (or players); a table indicating the transition to be taken given the actions of the players. player 1 q 1 q 0 q 2 q 1 player 2 q 1 q 0 q 2 q 0 q 2 q 1 q 0 q 2

  22. Games on graphs Concurrent games A concurrent game is made of a transition system; a set of agents (or players); a table indicating the transition to be taken given the actions of the players. Turn-based games A turn-based game is a game where only one agent plays at a time.

  23. Reasoning about open systems Strategies A (pure) strategy for a given player is a function telling which action to play depending on what has happened previously.

  24. Reasoning about open systems Strategies A (pure) strategy for a given player is a function telling which action to play depending on what has happened previously. Example

  25. Reasoning about open systems Strategies A (pure) strategy for a given player is a function telling which action to play depending on what has happened previously. Example Strategy for player

  26. Reasoning about open systems Strategies A (pure) strategy for a given player is a function telling which action to play depending on what has happened previously. Example Strategy for player alternately go to and (starting with ).

  27. Reasoning about open systems Strategies A (pure) strategy for a given player is a function telling which action to play depending on what has happened previously. Example Strategy for player alternately go to and . . . (starting with ). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

  28. Reasoning about open systems Strategies A (pure) strategy for a given player is a function telling which action to play depending on what has happened previously. Example Strategy for player alternately go to and . . . (starting with ). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

  29. Reasoning about open systems Strategies A (pure) strategy for a given player is a function telling which action to play depending on what has happened previously. Example Strategy for player alternately go to and . . . (starting with ). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

  30. Reasoning about open systems Strategies A (pure) strategy for a given player is a function telling which action to play depending on what has happened previously. Example Memoryless strategy for player

  31. Reasoning about open systems Strategies A (pure) strategy for a given player is a function telling which action to play depending on what has happened previously. Example Memoryless strategy for player always go to .

  32. Reasoning about open systems Strategies A (pure) strategy for a given player is a function telling which action to play depending on what has happened previously. Example Memoryless strategy for player always go to .

  33. Reasoning about open systems Strategies A (pure) strategy for a given player is a function telling which action to play depending on what has happened previously. Example Memoryless strategy for player . . . always go to . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

  34. Reasoning about open systems Strategies A (pure) strategy for a given player is a function telling which action to play depending on what has happened previously. Example Memoryless strategy for player . . . always go to . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

  35. Strategy Logic [CHP07,MMV10] Strategy logic Explicit quantification over strategies + strategy assignement: ∃ σ 1 . ∀ σ 2 . assign ( A → σ 1 , B → σ 2 ) . ϕ [CHP07] Chatterjee, Henzinger, Piterman. Strategy Logic. CONCUR, 2007. [MMV10] Mogavero, Murano, Vardi. Reasoning about strategies. FSTTCS, 2010.

Recommend


More recommend