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

on the semantics of strategy logic
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 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

slide-2
SLIDE 2

Computation-Tree Logic (CTL)

atomic propositions: , , ...

slide-3
SLIDE 3

Computation-Tree Logic (CTL)

atomic propositions: , , ... boolean combinators: ¬ ϕ, ϕ ∨ ψ, ϕ ∧ ψ, ...

slide-4
SLIDE 4

Computation-Tree Logic (CTL)

atomic propositions: , , ... boolean combinators: ¬ ϕ, ϕ ∨ ψ, ϕ ∧ ψ, ... temporal modalities: X ϕ

ϕ

“next ϕ” ϕ U ψ

ϕ ϕ ψ

“ϕ until ψ”

slide-5
SLIDE 5

Computation-Tree Logic (CTL)

atomic propositions: , , ... boolean combinators: ¬ ϕ, ϕ ∨ ψ, ϕ ∧ ψ, ... temporal modalities: X ϕ

ϕ

“next ϕ” ϕ U ψ

ϕ ϕ ψ

“ϕ until ψ”

ϕ

“eventually ϕ” true U ϕ ≡ F ϕ ¬ F ¬ ϕ ≡ G ϕ

ϕ ϕ ϕ ϕ ϕ

“always ϕ”

slide-6
SLIDE 6

Computation-Tree Logic (CTL)

atomic propositions: , , ... boolean combinators: ¬ ϕ, ϕ ∨ ψ, ϕ ∧ ψ, ... temporal modalities: X ϕ

ϕ

“next ϕ” ϕ U ψ

ϕ ϕ ψ

“ϕ until ψ”

ϕ

“eventually ϕ” true U ϕ ≡ F ϕ ¬ F ¬ ϕ ≡ G ϕ

ϕ ϕ ϕ ϕ ϕ

“always ϕ” path quantifiers: Eϕ ϕ Aϕ ϕ ϕ ϕ ϕ ϕ ϕ

slide-7
SLIDE 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.

slide-8
SLIDE 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.

slide-9
SLIDE 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.

slide-10
SLIDE 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.

slide-11
SLIDE 11

Semantics of QCTL

structure semantics: | =s ∃p.ϕ ⇔

p

| = ϕ

slide-12
SLIDE 12

Semantics of QCTL

structure semantics: | =s ∃p.ϕ ⇔

p

| = ϕ tree semantics: | =t ∃p.ϕ ⇔

p p p p

| = ϕ

slide-13
SLIDE 13

Expressiveness of QCTL

QCTL can “count”: E X1 ϕ ≡ E X ϕ ∧ ∀p. [E X(p ∧ ϕ) ⇒ A X(ϕ ⇒ p)] E X2 ϕ ≡ ∃q. [E X1(ϕ ∧ q) ∧ E X1(ϕ ∧ ¬ q)]

slide-14
SLIDE 14

Expressiveness of QCTL

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

slide-15
SLIDE 15

Expressiveness of QCTL

QCTL can “count”: E X1 ϕ ≡ E X ϕ ∧ ∀p. [E X(p ∧ ϕ) ⇒ A X(ϕ ⇒ p)] E X2 ϕ ≡ ∃q. [E X1(ϕ ∧ q) ∧ E X1(ϕ ∧ ¬ 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).

slide-16
SLIDE 16

Decision problems for QCTL

Theorem

Under the structure semantics: model checking is PSPACE-complete; satisfiability is undecidable.

slide-17
SLIDE 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).

slide-18
SLIDE 18

Games on graphs

slide-19
SLIDE 19

Games on graphs

Concurrent games

A concurrent game is made of a transition system; q0 q1 q2

slide-20
SLIDE 20

Games on graphs

Concurrent games

A concurrent game is made of a transition system; a set of agents (or players); q0 q1 q2

slide-21
SLIDE 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

  • f the players.

q0 q1 q2 q0 q2 q1 q1 q0 q2 q2 q1 q0 player 1 player 2

slide-22
SLIDE 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

  • f the players.

Turn-based games

A turn-based game is a game where only one agent plays at a time.

slide-23
SLIDE 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.

slide-24
SLIDE 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

slide-25
SLIDE 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

slide-26
SLIDE 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 ).

slide-27
SLIDE 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 ). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

slide-28
SLIDE 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 ). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

slide-29
SLIDE 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 ). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

slide-30
SLIDE 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

slide-31
SLIDE 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 .

slide-32
SLIDE 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 .

slide-33
SLIDE 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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

slide-34
SLIDE 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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

slide-35
SLIDE 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.

slide-36
SLIDE 36

Strategy Logic [CHP07,MMV10]

Strategy logic

Explicit quantification over strategies + strategy assignement: ∃σ1. ∀σ2. assign(A → σ1, B → σ2). ϕ Quantification

  • ver strategies

Assignment of strategies to players Temporal-logic property

[CHP07] Chatterjee, Henzinger, Piterman. Strategy Logic. CONCUR, 2007. [MMV10] Mogavero, Murano, Vardi. Reasoning about strategies. FSTTCS, 2010.

slide-37
SLIDE 37

Strategy Logic [CHP07,MMV10]

Strategy logic

Explicit quantification over strategies + strategy assignement: ∃σ1. ∀σ2. assign(A → σ1, B → σ2). ϕ

Example

existence of a pure Nash equilibrium: ∃σ1 . . . ∃σn. assign(A1 → σ1, . . . An → σn).

  • i

((∃σ′

i.assign(Ai → σ′ i). ϕi) ⇒ ϕi.)

  • [CHP07] Chatterjee, Henzinger, Piterman. Strategy Logic. CONCUR, 2007.

[MMV10] Mogavero, Murano, Vardi. Reasoning about strategies. FSTTCS, 2010.

slide-38
SLIDE 38

Strategy Logic [CHP07,MMV10]

Strategy logic

Explicit quantification over strategies + strategy assignement: ∃σ1. ∀σ2. assign(A → σ1, B → σ2). ϕ

Example

existence of a pure Nash equilibrium: existence of dominant strategy for Player 1: ∃σ1. ∀σ2 . . . ∀σn.assign(A1 → σ1, . . . An → σn).

  • (∃σ′
  • 1. assign(A1 → σ′

1). ϕ) ⇒ ϕ

  • [CHP07] Chatterjee, Henzinger, Piterman. Strategy Logic. CONCUR, 2007.

[MMV10] Mogavero, Murano, Vardi. Reasoning about strategies. FSTTCS, 2010.

slide-39
SLIDE 39

Strategy Logic [CHP07,MMV10]

Strategy logic

Explicit quantification over strategies + strategy assignement: ∃σ1. ∀σ2. assign(A → σ1, B → σ2). ϕ

Example

existence of a pure Nash equilibrium: existence of dominant strategy for Player 1: client-server interactions: ∃σS. ∃σc. assign(S → σS). (A G mutual exclusion ∧ A G

  • C

assign(C → σc). A F accessC)

[CHP07] Chatterjee, Henzinger, Piterman. Strategy Logic. CONCUR, 2007. [MMV10] Mogavero, Murano, Vardi. Reasoning about strategies. FSTTCS, 2010.

slide-40
SLIDE 40

Strategy Logic

Strategy logic model-checking ≡ QCTL model checking.

slide-41
SLIDE 41

Strategy Logic

Strategy logic model-checking ≡ QCTL model checking. strategies = labelling of execution tree with actions such that A G

  • a

ma ∧

  • b=a

mb

slide-42
SLIDE 42

Strategy Logic

Strategy logic model-checking ≡ QCTL model checking. strategies = labelling of execution tree with actions such that A G

  • a

ma ∧

  • b=a

mb

  • utcomes of active strategies can be labelled with pout;
slide-43
SLIDE 43

Strategy Logic

Strategy logic model-checking ≡ QCTL model checking. strategies = labelling of execution tree with actions such that A G

  • a

ma ∧

  • b=a

mb

  • utcomes of active strategies can be labelled with pout;

then check that all outcomes satisfy ϕ: A(G pout ⇒ ϕ).

slide-44
SLIDE 44

Strategy Logic

Strategy logic model-checking ≡ QCTL model checking. strategies = labelling of execution tree with actions such that A G

  • a

ma ∧

  • b=a

mb

  • utcomes of active strategies can be labelled with pout;

then check that all outcomes satisfy ϕ: A(G pout ⇒ ϕ).

Theorem

Strategy-logic model-checking is decidable. Strategy-logic satisfiability is decidable when restricted to turn-based games.

slide-45
SLIDE 45

What is the exact semantics?

∃σ. A G(assign(A → σ). ϕ)

slide-46
SLIDE 46

What is the exact semantics?

∃σ. A G(assign(A → σ). ϕ) Two possible semantics:

slide-47
SLIDE 47

What is the exact semantics?

∃σ. A G(assign(A → σ). ϕ) Two possible semantics: a b b a a a a

slide-48
SLIDE 48

What is the exact semantics?

∃σ. A G(assign(A → σ). ϕ) Two possible semantics: a b b a a a a ϕ must hold from any node, but the labelling is fixed.

slide-49
SLIDE 49

What is the exact semantics?

∃σ. A G(assign(A → σ). ϕ) Two possible semantics: a b b a a a a ϕ must hold from any node, but the labelling is fixed.

slide-50
SLIDE 50

What is the exact semantics?

∃σ. A G(assign(A → σ). ϕ) Two possible semantics: a b b a a a a ϕ must hold from any node, but the labelling is fixed. a b b a a a a ϕ must hold from any node, but the labelling is translated.

slide-51
SLIDE 51

What is the exact semantics?

∃σ. A G(assign(A → σ). ϕ) Two possible semantics: a b b a a a a ϕ must hold from any node, but the labelling is fixed. a b b ϕ must hold from any node, but the labelling is translated.

slide-52
SLIDE 52

What is the exact semantics?

∃σ. A G(assign(A → σ). ϕ) Two possible semantics: a b b a a a a ϕ must hold from any node, but the labelling is fixed.

This is the semantics

  • f Strategy Logic

a b b ϕ must hold from any node, but the labelling is translated.

slide-53
SLIDE 53

What is the exact semantics?

∃σ. A G(assign(A → σ). ϕ) Two possible semantics: a b b a a a a ϕ must hold from any node, but the labelling is fixed.

This is the semantics

  • f Strategy Logic

a b b ϕ must hold from any node, but the labelling is translated.

This makes SL model checking undecidable

slide-54
SLIDE 54

Encoding of a 2-counter machine

a a ⊥

slide-55
SLIDE 55

Encoding of a 2-counter machine

a a ⊥ Strategy σ encodes counter value k if it plays k times to a before playing to ⊥ (similarly for σ ).

slide-56
SLIDE 56

Encoding of a 2-counter machine

a a ⊥ Strategy σ encodes counter value k if it plays k times to a before playing to ⊥ (similarly for σ ).

Lemma

Two strategies σ and σ encode the same counter value iff, when entering the game above and applying these strategies, it holds G( a ⇒ X a ) ∧ F

  • ( a ∧ X ⊥ ) ∧ [

· · ] X X ⊥

  • (ϕ=)
slide-57
SLIDE 57

Encoding of a 2-counter machine

s s s′ s′ s′′ s′′ main states a a ⊥ counter(a) b b ⊥ counter(b) A strategy for encodes a run of the 2-counter machine; At each step, Player can check correct values of counters.

slide-58
SLIDE 58

Ongoing work: strategy dependencies [MMPV11]

p q r s ∀σ . ∃σ . (assign( → σ )E F p) ⇔ (assign( → σ )E F s)

[MMPV11] Mogavero, Murano, Perelli, Vardi. Reasonning about strategies: ... J. ACM, 2011.

slide-59
SLIDE 59

Ongoing work: strategy dependencies [MMPV11]

p q r s ∀σ . ∃σ . (assign( → σ )E F p) ⇔ (assign( → σ )E F s)

Elementary semantics

∀σ1 ∃σ2 σ2 in node may only depend on the value of σ1 in nodes and .

[MMPV11] Mogavero, Murano, Perelli, Vardi. Reasonning about strategies: ... J. ACM, 2011.

slide-60
SLIDE 60

Ongoing work: strategy dependencies

Refined elementary semantics

∀σ1 ∃σ2 ∀σ3

Different kinds of dependencies

q | = ∀σ1∃σ2∀σ3. ϕ if there exists a map computing σ2(π) based on σ1 (and possibly σ3) along π (and possibly along other histories).

slide-61
SLIDE 61

Ongoing work: strategy dependencies

Refined elementary semantics

∀σ1 ∃σ2 ∀σ3

Different kinds of dependencies

q | = ∀σ1∃σ2∀σ3. ϕ if there exists a map computing σ2(π) based on σ1 (and possibly σ3) along π (and possibly along other histories). Impact on expressiveness? both a formula and its (syntactic) negation may be true Impact on algorithms? fragment of SL with 2EXPTIME model checking.