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
Computation-Tree Logic (CTL) atomic propositions: , , ...
Computation-Tree Logic (CTL) atomic propositions: , , ... boolean combinators: ¬ ϕ , ϕ ∨ ψ , ϕ ∧ ψ , ...
Computation-Tree Logic (CTL) atomic propositions: , , ... boolean combinators: ¬ ϕ , ϕ ∨ ψ , ϕ ∧ ψ , ... temporal modalities: X ϕ “next ϕ ” ϕ ϕ U ψ “ ϕ until ψ ” ϕ ϕ ψ
Computation-Tree Logic (CTL) atomic propositions: , , ... boolean combinators: ¬ ϕ , ϕ ∨ ψ , ϕ ∧ ψ , ... temporal modalities: X ϕ “next ϕ ” ϕ ϕ U ψ “ ϕ until ψ ” ϕ ϕ ψ true U ϕ ≡ F ϕ ϕ “eventually ϕ ” ¬ F ¬ ϕ ≡ G ϕ “always ϕ ” ϕ ϕ ϕ ϕ ϕ
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 ϕ ϕ ϕ ϕ ϕ
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.
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.
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.
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.
Semantics of QCTL structure semantics: p ⇔ | = s ∃ p .ϕ | = ϕ
Semantics of QCTL structure semantics: p ⇔ | = s ∃ p .ϕ | = ϕ tree semantics: p ⇔ | = t ∃ p .ϕ | = ϕ p p p
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 )]
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 ′ )))]
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).
Decision problems for QCTL Theorem Under the structure semantics: model checking is PSPACE -complete; satisfiability is undecidable.
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).
Games on graphs
Games on graphs Concurrent games A concurrent game is made of a transition system; q 1 q 0 q 2
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
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
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.
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.
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
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
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 ).
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 ). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
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 ). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
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 ). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
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
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 .
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 .
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
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