solving games without determinization nir piterman École polytechnique fédéral de lausanne (epfl)...

67
Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Upload: erica-reed

Post on 15-Jan-2016

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Solving Games Without Determinization

Nir Piterman

École Polytechnique Fédéral de Lausanne (EPFL)

Switzerland

Joint work with Thomas A. Henzinger

Page 2: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Nondeterminizing NondeterministicAutomata

Nir Piterman

École Polytechnique Fédéral de Lausanne (EPFL)

Switzerland

Joint work with Thomas A. Henzinger

Page 3: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

What?

• Get a nondeterministic automaton with n states.

• Construct a nondeterministic automaton with 2nn2n states.

• Why?

Page 4: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Plan of Talk

• Verification.

• Automata on Infinite Words.

• Synthesis.

• Design Synthesis in Action.

• Our solution.

Page 5: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Verification

• The normal process of development:– Write specifications (informally).– Develop design.– Test.

• Check that the system satisfies the specification.

Page 6: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Reactive Systems

• We are interested in systems that behave rather than compute (CPU, Operating system).

• Main complexity is in maintaining communication with a user / another program / the environment.

• The system has to be ready for every possible input.

• The system maintains behavior forever.

Page 7: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

What is Behavior?

• The sequence of states the system passes along a computation.

• Nondeterministic systems / many possible inputs produce many possible behaviors.

• For reactive systems the behavior is infinite.

Page 8: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Automata Theoretic Approach to Verification

• Use automata to reason about systems and specifications.

• Questions like satisfiability and model checking reduce to emptiness of automata.

• Separates logical and algorithmic aspects of problems.

Page 9: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Automata on Infinite Words

• Introduced by Büchi, McNaughton, Elgot, Trakhtenbrot, Rabin, … in the 60s.

• Basically: take the same machine; run it on infinite words.

• In infinite runs there is no last state. Use the set of recurring states.

• Büchi acceptance: the set of recurring states intersects the set of accepting states.

Page 10: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Examples

q0 q1

Page 11: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Examples

q0 q1

Page 12: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Applications

• Satisfiability of S1S [Buc62] and linear time logics.– A linear time formula characterizes sets of

sequences.– Construct an automaton that accepts the set of

models of the formula.– Is the language of the automaton empty?

Page 13: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Applications

• Linear-time model checking [VW94].– A linear time formula characterizes sets of

sequences.– Construct an automaton that accepts all non-

models of the formula.– Consider the intersection of the automaton and the

system.– Is the intersection empty?

Page 14: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Verification

• The normal process of development:– Write specifications (informally).– Develop design.– Test.

• Check that the system satisfies the specification.

• We need a formal way to write specifications: temporal logic.

Page 15: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Specifications

• We formally write specifications using temporal logic.

• We use automata on infinite words as an intermediate tool to reason about specifications.

Page 16: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Synthesis

• Can’t we automatically produce the system from the specification?

• Produce systems that are ensured to work correctly.

Page 17: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Church’s Problem

In 1965 Church posed this problem as:

Given a circuit interface and a behavioral

specification, determine:

1. Does there exist an automaton (circuit) that realizes the specification?

2. Construct an implementing circuit.

Page 18: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Solutions

• Rabin develops the theory of automata on infinite trees [Rab69].

• Büchi and Landweber propose a reduction to infinite duration games [BL69].

• These are the main two solutions up till today.

Page 19: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Synthesis as a Game

• System controls internal variables. Environment controls input.

• Moves of system must match all possible future moves of environment.

• System plays against environment. – System tries to satisfy specification.– Environment tries to falsify specification.

• Success of system determined by the outcome of interaction.

Page 20: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Game Graphs• We represent games as directed graphs.

G=hV,V0,V1,E,v0i

• The vertices are partitioned to those of player 0 (system) and player 1 (environment).

• A play starts with a pebble on v0.

• If the pebble is on v2V0, player 0 chooses an outgoing edge and transfers the pebble.

• If the pebble is on v2V1, player 1 chooses the successor.

Page 21: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger
Page 22: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Winning Condition• An infinite play is an infinite sequence of states.

• Winning conditions:– Recurrence / persistence in terms of states of the game. – Linear temporal logic or automata on infinite words

over states of the game.

• Does there exist a winning strategy?

• Use the automaton to follow the play and determine the winner?

Page 23: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Use Automaton

• Add one pebble on the automaton.• Move the pebble on the automaton according to the

move in the game.• Decide acceptance according to the automaton.

Environment

System

Game Automaton

Page 24: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Simple Game

1 0 1

Visit finitely many 0’s

Environment

System

Page 25: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Nondeterminism is bad

1 0 1Environment

System

Page 26: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

What’s the Problem?

• The opponent chooses between (infinitely) many different paths.

• A guess should match all possible paths.

• Deterministic automata don’t guess!

Page 27: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Determinization

• Need stronger acceptance conditions [Lan69].

• Starting with NBW with n states:– DRW with 22n states [McN66]. – DRW with (12)nn2n states and 2n index [Saf88].– DPW with n2n+2 states and 2n index [Pit06].

• Lower bound nO(n) [Mic88,Yan06]

Page 28: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Back to Games

• Games:– The opponent chooses between many different paths.

– A deterministic automaton enables monitoring the goal of the game.

• Games with LTL/NBW goals:– Convert LTL to NBW, convert NBW to DPW.

– Create product of game and DPW.

• Reasoning about general games reduces to reasoning about parity games.

Page 29: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

The End?!

Not really …

Page 30: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

In Practice

• Determinization is extremely complex.

Page 31: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Safra’s Construction

• Have a tree of subset constructions.

• Whenever a node (subset) visits F, create a new son with the states in F.

• If a node is removed – flash red light.

• If a node equals its sons – flash green light.

• The Rabin condition has a pair for every node. Node flashes red – bad. Node flashes green – good.

Page 32: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Deterministic State

• Ordered tree.

• Nodes are elements in {1,…,n}.

• Every node is labeled by a subset of the states.

• Every node is colored green, red, or white.

• Unused names are colored red.

Page 33: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Deterministic TransitionThe transition of d is the result of the following

transformations.

• Replace node label by labels of successors (subset construction).

• Spawn new sons with accepting states.

• Move states to ‘best’ nodes.

• Remove empty nodes.

• Nodes that equal their sons colored green.

0,1,3

3 1

1

42

0,1,3

3 1

1

421

1

3

5

0,1,3

3 1

1

4

15

20,1,3

3 1

1

4

0,1,3,4

4 12

1

4

Page 34: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

What about your variant?

• Recently, improvement of Safra:– Safra: NBW(n) ! DRW(12nn2n,n)– Variant: NBW(n) ! DPW(n2n+2,2n)

• But: still trees, and everything else.

Page 35: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Or abcdefghij

Page 36: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

In Practice

• Determinization is extremely complex.

• First implementation in CIAA05.

Page 37: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

OmegaDet [STW05]

Page 38: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

In Practice

• Determinization is extremely complex.

• First implementation in CIAA05.

• No way to implement symbolically.

• All or nothing.

• Resort to other solutions.

Page 39: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

• Restrict attention to a subset of LTL. – Safety / reachability – linear time [RW89,AMPS98].– Recurrence / persistance – quadratic time [AMPS98].– Boolean combinations of safety / reachability [AT04].– Generalized Reactivity(1) – cubic time [PPS06].

Practical Solution 1

Page 40: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Practical Solution 2 [JGB05,HRS05]

• Heuristics that use the NBW.

• Works? Good.

• Does not work?

Page 41: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Nondeterminism

• Nondeterministic automata cannot be used for game monitoring.

• Or can they?

• They just have to be built correctly…

Page 42: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Good for Games Automata• Automata that can be controlled in a step-wise

fashion.

• Defined via a game on the structure of the automaton.

• Can be used for game monitoring.Environment

System

Game Automaton

Page 43: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Definition

• Define the monitor game played on the structure of the automaton:– Start from the initial state.– Opponent chooses a letter.– We choose successor.– We win if:

• The resulting word is not in the language

• The resulting run is accepting

• An automaton is GFG if we win from initial state.

Page 44: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

1 1 1 1 1 1 1 · · · · 1 1 0 1 1 1 1 1 1 1 · · · ·

Page 45: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

21 3

0,1

1 10,1

0

Page 46: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Use for Game Monitoring

• Given a GFG we combine the game with the GFG.

• Player 0 chooses how to advance the GFG.

Environment

System

Game Automaton

Page 47: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Where do I get one?

• Prove that an automaton is good for games if it fair-simulates another good for games.

• Deterministic automata are trivially good for games. So start from the deterministic automaton.

• We show how to construct one.

Page 48: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Construct a GFG Automaton

• Replace the tree structure by nondeterminism.• Follow nondeterministically n subsets of

states.• Ensure that all the runs followed by some

subset visit accepting states infinitely often.• Wrong guess? Change your mind!• Intuition:

- first set is the subset construction.- other n-1 sets follow subsets of first set.

Page 49: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Construct a GFG

• Let’s start with details on determinization.

Page 50: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Determinization in Detail

0,11

1a b aba

1

1

0

0

Subset Construction

• There are infinitely many runs that reach an accepting state a finite number of times.

• Somehow these runs have to be separated.

Page 51: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Determinization Construction

• Have a tree of subset constructions.

• Whenever a node (subset) visits F, create a new son with the states in F.

• If a node is removed – flash red light.

• If a node equals its sons – flash green light.

• The parity condition follows the minimal node that flashed red/green infinitely often.

Page 52: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger
Page 53: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

What is a state

• A tree.

• Nodes are elements in {1,…,n}.

• Every node is labeled by a subset of the states.

• G2{1,...,n+1} - the least node colored green.

• R2{1,…,n+1} – the least node that got erased.

Page 54: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Transition

• Replace label by the set of successors (subset construction).

• Create youngest son with subset of accepting states.

• Move double states to older brothers.• If node equal to union of sons, remove sons

and color green.• Remove empty nodes.• Compact names.

Page 55: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

0,1,3,4

4

0,3 0,3

b

0,1,3,4

4

subset construction

0,1,3,4

4 4,1

spawn sons

4

0,1,3,4

4

move to older sons

4

1

0,1,3,4

4

Handle full nodes

1

remove empty nodes

c

1

2

1

2

1

1

2

1

3

4 2

1

3

4 2

1

4

0,1,3

3 1

1

4

subset construction

2

0,1,3

3 1

1

42

spawn sons

1

1

3

5

0,1,3

3 1

1

4

15

move to older sons

2

0,1,3

3 1

1

4

Handle full nodes

a

subset construction

2

2

Page 56: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

From OmegaDet [STW05]

1

0

1

0

1

10

0

Page 57: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Safra from a node’s point of view

• I follow some states.

• Some of them may disappear.

• If all visit acceptance set, I raise a green flag.

• If all disappear I die.

• After I die, I can be revived with a new set.

Page 58: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Our ConstructionA State

• Up to n subsets of the states of the NBW.

• Every state in a subset is either marked or unmarked.

• If a subset is empty all subsets above it are empty.

Page 59: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Our ConstructionA Transition

• Replace every set with a subset of the possible successors.

• Successors of marked states are marked; accepting states are marked.

• If all are marked, remove marking.

• An empty set can load a subset of the first set.

Page 60: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Advantages

• Very simple construction.

• Amenable to symbolic implementation.

• Natural incremental structure leading to complete solution.

Page 61: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

A Range of Constructions

• We can get closer / further from the deterministic automaton.

• The number of states goes between n2n and n3n.

• It all depends on the symbolic implementation…

Page 62: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Incremental Construction

• We don’t always need n sets.

• An automaton with i+1 sets ‘monitors fully’ more games than an automaton with i sets.

• It depends on the game itself.

• It is not related (directly) to memory.

Page 63: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Summary• Replace deterministic automata by

nondeterministic automata.• Definition of GFG automata.• Construction of GFG automata. • Simple, amenable to symbolic implementation.• Incremental structure leading to the full solution.• Initial enumerative implementation.• Lower bound.

Page 64: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Safraless Decision Procedures [KV05]• Emptiness of alternating parity tree automata by

rank computation.

• Requires determinization for the upper bound.

• Reduces to Büchi games instead of parity.

• Complexity may be quadratically worse.

• Strategy may be exponentially worse.

• Enables solution of games with LTL winning conditions. Does not apply for NBW winning conditions. Does not apply to infinite structures.

Page 65: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Future Work

• Implementation.

• Reuse work done in increments.

• Understand better the incremental structure.

• Automata for the complement language.

• Lower bound on the index.

Page 66: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Going Both Ways

• It would be nice to find both winning and losing states fast.

• Starting from LTL it is easy.– Build NBW N for .– Build NBW N: for :.– Combine the game incrementally with GFG for N.– Combine the game incrementally with GFG for N: .

• Starting from NBW?– Build GFG for N.

– Build KV ranks for N.

Page 67: Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger

Thank You