Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Infinite games and automata theory
Christof LodingRWTH Aachen, Germany
Spring School 2009June 1–5, Bertinoro, Italy
Infinite games and automata theory · Bertinoro, June 2009 1 / 84
In this tutorial
1. How can automata theory help to solve problems for games?
2. How can games help to solve problems in automata theory?
Infinite games and automata theory · Bertinoro, June 2009 2 / 84
In this tutorial
1. How can automata theory help to solve problems for games?
2. How can games help to solve problems in automata theory?
automata oninfinite words
games of infiniteduration
automata oninfinite trees
Infinite games and automata theory · Bertinoro, June 2009 2 / 84
1 Introduction
2 Basics on games
3 Transformation of winning conditions
ω-Automata
Game reductions
Logical winning conditions
4 Tree automata
Complementation
Emptiness
5 Beyond finite automata
Infinite games and automata theory · Bertinoro, June 2009 3 / 84
Origin
Circuit synthesis and Church’s problem (1957)
Setting:
• Sequence of input signals arrives
• Circuit produces a sequence of output signals (depending onthe inputs it has seen)
• Result is a non-terminating sequence of input and outputsignals
• A logical specification describes the desired properties ofthese sequences
circuit finput output
Task: Automatically synthesize a circuit from the specification
Infinite games and automata theory · Bertinoro, June 2009 4 / 84
More formally
circuit finput ∈ Σ1 output ∈ Σ2
• Input sequence α ∈ Σω1 and output sequence β ∈ Σω
2
• Specification ϕ(α, β)
Problem:
• Decide if the there is a sequential transformation f : Σ∗1 → Σ2
realizing ϕ, and construct one if possible.
Infinite games and automata theory · Bertinoro, June 2009 5 / 84
More formally
circuit finput ∈ Σ1 output ∈ Σ2
• Input sequence α ∈ Σω1 and output sequence β ∈ Σω
2
• Specification ϕ(α, β)
Problem:
• Decide if the there is a sequential transformation f : Σ∗1 → Σ2
realizing ϕ, and construct one if possible.
Modeled as a game:
• One player plays input signals, the other player output signals
• The specification is the winning condition for the output player
• A transformation f realizing the specification is a winningstrategy for the output player
Infinite games and automata theory · Bertinoro, June 2009 5 / 84
Reactive Systems
• Games can serve as general model for reactive systems, i.e.,systems with input/output behavior
• To obtain more realistic models it is often required to addfeatures like time, probabilities, concurrency, ...
• To study these more complex models a good understanding ofthe core theory originating from Church’s problem isfundamental{ this tutorial presents the automata theoretic aspects
Infinite games and automata theory · Bertinoro, June 2009 6 / 84
1 Introduction
2 Basics on games
3 Transformation of winning conditions
ω-Automata
Game reductions
Logical winning conditions
4 Tree automata
Complementation
Emptiness
5 Beyond finite automata
Infinite games and automata theory · Bertinoro, June 2009 7 / 84
Notations
For a set X:
• |X| = size of X
• X∗ = the set of finite sequences over X
• Xω = the set of infinite sequences over X
• For α ∈ Xω:
Inf(α) = {x ∈ X | x occurs infinitely often in α}.
Infinite games and automata theory · Bertinoro, June 2009 8 / 84
Game Graph / Arena
G = (VE,VA, E, c)
• VE: vertices of Eva (player 1, circle)• VA: vertices of Adam (player 2, box)• E ⊆ V ×V: edges with V = VE ∪VA
• c : V → C with a finite set of colors C
Infinite games and automata theory · Bertinoro, June 2009 9 / 84
Game Graph / Arena
G = (VE,VA, E, c)
• VE: vertices of Eva (player 1, circle) {x1, . . . , x7}
• VA: vertices of Adam (player 2, box) {y1, . . . , y7}
• E ⊆ V ×V: edges with V = VE ∪VA . . .
• c : V → C with a finite set of colors C {•, •, •, •}
y1 x1 y2 x2
y3 x3 y4 x4 x5 y5
x6 y6 y7 x7
Infinite games and automata theory · Bertinoro, June 2009 9 / 84
Plays
A play in G is an infinite sequence α = v0v1v2 · · · of vertices suchthat (vi, vi+1) ∈ E for all i ≥ 0.
By c(α) we denote the corresponding sequence of colorsc(v0)c(v1)c(v2) · · ·
Infinite games and automata theory · Bertinoro, June 2009 10 / 84
Plays
A play in G is an infinite sequence α = v0v1v2 · · · of vertices suchthat (vi, vi+1) ∈ E for all i ≥ 0.
By c(α) we denote the corresponding sequence of colorsc(v0)c(v1)c(v2) · · ·
y1 x1 y2 x2
y3 x3 y4 x4 x5 y5
x6 y6 y7 x7
Infinite games and automata theory · Bertinoro, June 2009 10 / 84
Plays
A play in G is an infinite sequence α = v0v1v2 · · · of vertices suchthat (vi, vi+1) ∈ E for all i ≥ 0.
By c(α) we denote the corresponding sequence of colorsc(v0)c(v1)c(v2) · · ·
y1 x1 y2 x2
y3 x3 y4 x4 x5 y5
x6 y6 y7 x7
α : y7c(α) : •
Infinite games and automata theory · Bertinoro, June 2009 10 / 84
Plays
A play in G is an infinite sequence α = v0v1v2 · · · of vertices suchthat (vi, vi+1) ∈ E for all i ≥ 0.
By c(α) we denote the corresponding sequence of colorsc(v0)c(v1)c(v2) · · ·
y1 x1 y2 x2
y3 x3 y4 x4 x5 y5
x6 y6 y7 x7
α : y7 x6c(α) : • •
Infinite games and automata theory · Bertinoro, June 2009 10 / 84
Plays
A play in G is an infinite sequence α = v0v1v2 · · · of vertices suchthat (vi, vi+1) ∈ E for all i ≥ 0.
By c(α) we denote the corresponding sequence of colorsc(v0)c(v1)c(v2) · · ·
y1 x1 y2 x2
y3 x3 y4 x4 x5 y5
x6 y6 y7 x7
α : y7 x6 y3c(α) : • • •
Infinite games and automata theory · Bertinoro, June 2009 10 / 84
Plays
A play in G is an infinite sequence α = v0v1v2 · · · of vertices suchthat (vi, vi+1) ∈ E for all i ≥ 0.
By c(α) we denote the corresponding sequence of colorsc(v0)c(v1)c(v2) · · ·
y1 x1 y2 x2
y3 x3 y4 x4 x5 y5
x6 y6 y7 x7
α : y7 x6 y3 y6c(α) : • • • •
Infinite games and automata theory · Bertinoro, June 2009 10 / 84
Plays
A play in G is an infinite sequence α = v0v1v2 · · · of vertices suchthat (vi, vi+1) ∈ E for all i ≥ 0.
By c(α) we denote the corresponding sequence of colorsc(v0)c(v1)c(v2) · · ·
y1 x1 y2 x2
y3 x3 y4 x4 x5 y5
x6 y6 y7 x7
α : y7 x6 y3 y6 x3c(α) : • • • • •
Infinite games and automata theory · Bertinoro, June 2009 10 / 84
Plays
A play in G is an infinite sequence α = v0v1v2 · · · of vertices suchthat (vi, vi+1) ∈ E for all i ≥ 0.
By c(α) we denote the corresponding sequence of colorsc(v0)c(v1)c(v2) · · ·
y1 x1 y2 x2
y3 x3 y4 x4 x5 y5
x6 y6 y7 x7
α : y7 x6 y3 y6 x3 y4 · · ·c(α) : • • • • • • · · ·
Infinite games and automata theory · Bertinoro, June 2009 10 / 84
Game
G = (G,Win)
• G: game graph
• Win ⊆ Cω: winning condition
Eva wins a play α if c(α) ∈ Win. Otherwise Adam wins.
Examples for winning conditions:
• Buchi : given by F ⊆ CWin contains all plays α with Inf(α) ∩ F , ∅
• Muller : given by F ⊆ 2C
Win contains all plays α with Inf(α) ∈ F
• Parity : set of colors is a finite set of natural numbers (priorities)Win contains all plays α withmax(Inf(c(α))) even
Infinite games and automata theory · Bertinoro, June 2009 11 / 84
Trying to Win – Strategies
y1
y2
x1
x2
Winning condition for Eva: y2 is visited infinitely often iff x1 and x2are both visited infinitely often.
y2 ∈ Inf(α) ⇔ {x1, x2} ⊆ Inf(α)
Infinite games and automata theory · Bertinoro, June 2009 12 / 84
Trying to Win – Strategies
y1
y2
x1
x2
Winning condition for Eva: y2 is visited infinitely often iff x1 and x2are both visited infinitely often.
y2 ∈ Inf(α) ⇔ {x1, x2} ⊆ Inf(α)
Eva can win by playing as follows when the play is at x1:
• If the previous xi was x2: move to y2• Otherwise: move to y1
Infinite games and automata theory · Bertinoro, June 2009 12 / 84
Trying to Win – Strategies
y1
y2
x1
x2
Winning condition for Eva: y2 is visited infinitely often iff x1 and x2are both visited infinitely often.
y2 ∈ Inf(α) ⇔ {x1, x2} ⊆ Inf(α)
Eva can win by playing as follows when the play is at x1:
• If the previous xi was x2: move to y2• Otherwise: move to y1
α : y1
Infinite games and automata theory · Bertinoro, June 2009 12 / 84
Trying to Win – Strategies
y1
y2
x1
x2
Winning condition for Eva: y2 is visited infinitely often iff x1 and x2are both visited infinitely often.
y2 ∈ Inf(α) ⇔ {x1, x2} ⊆ Inf(α)
Eva can win by playing as follows when the play is at x1:
• If the previous xi was x2: move to y2• Otherwise: move to y1
α : y1 x1
Infinite games and automata theory · Bertinoro, June 2009 12 / 84
Trying to Win – Strategies
y1
y2
x1
x2
Winning condition for Eva: y2 is visited infinitely often iff x1 and x2are both visited infinitely often.
y2 ∈ Inf(α) ⇔ {x1, x2} ⊆ Inf(α)
Eva can win by playing as follows when the play is at x1:
• If the previous xi was x2: move to y2• Otherwise: move to y1
α : y1 x1 y1
Infinite games and automata theory · Bertinoro, June 2009 12 / 84
Trying to Win – Strategies
y1
y2
x1
x2
Winning condition for Eva: y2 is visited infinitely often iff x1 and x2are both visited infinitely often.
y2 ∈ Inf(α) ⇔ {x1, x2} ⊆ Inf(α)
Eva can win by playing as follows when the play is at x1:
• If the previous xi was x2: move to y2• Otherwise: move to y1
α : y1 x1 y1 x1
Infinite games and automata theory · Bertinoro, June 2009 12 / 84
Trying to Win – Strategies
y1
y2
x1
x2
Winning condition for Eva: y2 is visited infinitely often iff x1 and x2are both visited infinitely often.
y2 ∈ Inf(α) ⇔ {x1, x2} ⊆ Inf(α)
Eva can win by playing as follows when the play is at x1:
• If the previous xi was x2: move to y2• Otherwise: move to y1
α : y1 x1 y1 x1 y1
Infinite games and automata theory · Bertinoro, June 2009 12 / 84
Trying to Win – Strategies
y1
y2
x1
x2
Winning condition for Eva: y2 is visited infinitely often iff x1 and x2are both visited infinitely often.
y2 ∈ Inf(α) ⇔ {x1, x2} ⊆ Inf(α)
Eva can win by playing as follows when the play is at x1:
• If the previous xi was x2: move to y2• Otherwise: move to y1
α : y1 x1 y1 x1 y1 x2
Infinite games and automata theory · Bertinoro, June 2009 12 / 84
Trying to Win – Strategies
y1
y2
x1
x2
Winning condition for Eva: y2 is visited infinitely often iff x1 and x2are both visited infinitely often.
y2 ∈ Inf(α) ⇔ {x1, x2} ⊆ Inf(α)
Eva can win by playing as follows when the play is at x1:
• If the previous xi was x2: move to y2• Otherwise: move to y1
α : y1 x1 y1 x1 y1 x2 y1
Infinite games and automata theory · Bertinoro, June 2009 12 / 84
Trying to Win – Strategies
y1
y2
x1
x2
Winning condition for Eva: y2 is visited infinitely often iff x1 and x2are both visited infinitely often.
y2 ∈ Inf(α) ⇔ {x1, x2} ⊆ Inf(α)
Eva can win by playing as follows when the play is at x1:
• If the previous xi was x2: move to y2• Otherwise: move to y1
α : y1 x1 y1 x1 y1 x2 y1 x1
Infinite games and automata theory · Bertinoro, June 2009 12 / 84
Trying to Win – Strategies
y1
y2
x1
x2
Winning condition for Eva: y2 is visited infinitely often iff x1 and x2are both visited infinitely often.
y2 ∈ Inf(α) ⇔ {x1, x2} ⊆ Inf(α)
Eva can win by playing as follows when the play is at x1:
• If the previous xi was x2: move to y2• Otherwise: move to y1
α : y1 x1 y1 x1 y1 x2 y1 x1 y2
Infinite games and automata theory · Bertinoro, June 2009 12 / 84
Trying to Win – Strategies
y1
y2
x1
x2
Winning condition for Eva: y2 is visited infinitely often iff x1 and x2are both visited infinitely often.
y2 ∈ Inf(α) ⇔ {x1, x2} ⊆ Inf(α)
Eva can win by playing as follows when the play is at x1:
• If the previous xi was x2: move to y2• Otherwise: move to y1
α : y1 x1 y1 x1 y1 x2 y1 x1 y2 x1
Infinite games and automata theory · Bertinoro, June 2009 12 / 84
Trying to Win – Strategies
y1
y2
x1
x2
Winning condition for Eva: y2 is visited infinitely often iff x1 and x2are both visited infinitely often.
y2 ∈ Inf(α) ⇔ {x1, x2} ⊆ Inf(α)
Eva can win by playing as follows when the play is at x1:
• If the previous xi was x2: move to y2• Otherwise: move to y1
α : y1 x1 y1 x1 y1 x2 y1 x1 y2 x1 y1 · · ·
Infinite games and automata theory · Bertinoro, June 2009 12 / 84
Strategies – Formal
• A strategy for Eva is a function
σ : V∗VE → V
with σ(xv) = v′ implies (v, v′) ∈ E
Infinite games and automata theory · Bertinoro, June 2009 13 / 84
Strategies – Formal
• A strategy for Eva is a function
σ : V∗VE → V
with σ(xv) = v′ implies (v, v′) ∈ E
• A play v0v1v2 · · · is played according to σ if
∀i : vi ∈ VE → σ(v0 · · · vi) = vi+1
• Out(σ, v0) = set of all plays starting in v0 that are playedaccording to σ (the possible outcomes of σ).
Infinite games and automata theory · Bertinoro, June 2009 13 / 84
Strategies – Formal
• A strategy for Eva is a function
σ : V∗VE → V
with σ(xv) = v′ implies (v, v′) ∈ E
• A play v0v1v2 · · · is played according to σ if
∀i : vi ∈ VE → σ(v0 · · · vi) = vi+1
• Out(σ, v0) = set of all plays starting in v0 that are playedaccording to σ (the possible outcomes of σ).
• A strategy for Eva is a winning strategy from vertex v0 ifOut(σ, v0) ⊆ Win
• A strategy for Adam (defined similarly) is a winning strategyfrom vertex v0 if Out(σ, v0) ∩Win = ∅
Infinite games and automata theory · Bertinoro, June 2009 13 / 84
Determinacy
A game G = (G,Win) is determined if from each node either Evaor Adam has a winning strategy.
Infinite games and automata theory · Bertinoro, June 2009 14 / 84
Determinacy
A game G = (G,Win) is determined if from each node either Evaor Adam has a winning strategy.
Determinacy is about swapping quantifiers
Eva does not have a winning strategy:
∀σE∃σA ( σA wins against σE)
Infinite games and automata theory · Bertinoro, June 2009 14 / 84
Determinacy
A game G = (G,Win) is determined if from each node either Evaor Adam has a winning strategy.
Determinacy is about swapping quantifiers
Eva does not have a winning strategy:
∀σE∃σA ( σA wins against σE)
By determinacy:
∃σA∀σE ( σA wins against σE)
Infinite games and automata theory · Bertinoro, June 2009 14 / 84
Special strategies
• Computable : The function σ : V∗VE → V is computable.
• Positional : The strategy only depends on the current vertex(not on the past), i.e., σ : VE → V.
• Finite memory : The strategy is implemented by adeterministic finite automaton that reads the colors of the play.It depends on the current vertex and the state of theautomaton.
Infinite games and automata theory · Bertinoro, June 2009 15 / 84
Finite memory strategy – example
Muller game:
y1
y2
x1
x2F = {{x1, y1}, {x2, y1}, {x1, x2, y1, y2}}
m0 m1
x1, y1, y2 x2, y1, y2x2
x1
σ(m0, x1) = y1σ(m1, x1) = y2
“Move to y2 if the previous xi was x2”Infinite games and automata theory · Bertinoro, June 2009 16 / 84
Finite memory strategy – example
Muller game:
y1
y2
x1
x2F = {{x1, y1}, {x2, y1}, {x1, x2, y1, y2}}
y1
m0 m1
x1, y1, y2 x2, y1, y2x2
x1
m0
σ(m0, x1) = y1σ(m1, x1) = y2
“Move to y2 if the previous xi was x2”Infinite games and automata theory · Bertinoro, June 2009 16 / 84
Finite memory strategy – example
Muller game:
y1
y2
x1
x2F = {{x1, y1}, {x2, y1}, {x1, x2, y1, y2}}
y1 x1
m0 m1
x1, y1, y2 x2, y1, y2x2
x1
m0 m0
σ(m0, x1) = y1σ(m1, x1) = y2
“Move to y2 if the previous xi was x2”Infinite games and automata theory · Bertinoro, June 2009 16 / 84
Finite memory strategy – example
Muller game:
y1
y2
x1
x2F = {{x1, y1}, {x2, y1}, {x1, x2, y1, y2}}
y1 x1 y1
m0 m1
x1, y1, y2 x2, y1, y2x2
x1
m0 m0 m0
σ(m0, x1) = y1σ(m1, x1) = y2
“Move to y2 if the previous xi was x2”Infinite games and automata theory · Bertinoro, June 2009 16 / 84
Finite memory strategy – example
Muller game:
y1
y2
x1
x2F = {{x1, y1}, {x2, y1}, {x1, x2, y1, y2}}
y1 x1 y1 x1
m0 m1
x1, y1, y2 x2, y1, y2x2
x1
m0 m0 m0 m0
σ(m0, x1) = y1σ(m1, x1) = y2
“Move to y2 if the previous xi was x2”Infinite games and automata theory · Bertinoro, June 2009 16 / 84
Finite memory strategy – example
Muller game:
y1
y2
x1
x2F = {{x1, y1}, {x2, y1}, {x1, x2, y1, y2}}
y1 x1 y1 x1 y1
m0 m1
x1, y1, y2 x2, y1, y2x2
x1
m0 m0 m0 m0 m0
σ(m0, x1) = y1σ(m1, x1) = y2
“Move to y2 if the previous xi was x2”Infinite games and automata theory · Bertinoro, June 2009 16 / 84
Finite memory strategy – example
Muller game:
y1
y2
x1
x2F = {{x1, y1}, {x2, y1}, {x1, x2, y1, y2}}
y1 x1 y1 x1 y1 x2
m0 m1
x1, y1, y2 x2, y1, y2x2
x1
m0 m0 m0 m0 m0 m0
σ(m0, x1) = y1σ(m1, x1) = y2
“Move to y2 if the previous xi was x2”Infinite games and automata theory · Bertinoro, June 2009 16 / 84
Finite memory strategy – example
Muller game:
y1
y2
x1
x2F = {{x1, y1}, {x2, y1}, {x1, x2, y1, y2}}
y1 x1 y1 x1 y1 x2 y1
m0 m1
x1, y1, y2 x2, y1, y2x2
x1
m0 m0 m0 m0 m0 m0 m1
σ(m0, x1) = y1σ(m1, x1) = y2
“Move to y2 if the previous xi was x2”Infinite games and automata theory · Bertinoro, June 2009 16 / 84
Finite memory strategy – example
Muller game:
y1
y2
x1
x2F = {{x1, y1}, {x2, y1}, {x1, x2, y1, y2}}
y1 x1 y1 x1 y1 x2 y1 x1
m0 m1
x1, y1, y2 x2, y1, y2x2
x1
m0 m0 m0 m0 m0 m0 m1 m1
σ(m0, x1) = y1σ(m1, x1) = y2
“Move to y2 if the previous xi was x2”Infinite games and automata theory · Bertinoro, June 2009 16 / 84
Finite memory strategy – example
Muller game:
y1
y2
x1
x2F = {{x1, y1}, {x2, y1}, {x1, x2, y1, y2}}
y1 x1 y1 x1 y1 x2 y1 x1 y2
m0 m1
x1, y1, y2 x2, y1, y2x2
x1
m0 m0 m0 m0 m0 m0 m1 m1 m0
σ(m0, x1) = y1σ(m1, x1) = y2
“Move to y2 if the previous xi was x2”Infinite games and automata theory · Bertinoro, June 2009 16 / 84
Finite memory strategy – example
Muller game:
y1
y2
x1
x2F = {{x1, y1}, {x2, y1}, {x1, x2, y1, y2}}
y1 x1 y1 x1 y1 x2 y1 x1 y2 x1
m0 m1
x1, y1, y2 x2, y1, y2x2
x1
m0 m0 m0 m0 m0 m0 m1 m1 m0 m0
σ(m0, x1) = y1σ(m1, x1) = y2
“Move to y2 if the previous xi was x2”Infinite games and automata theory · Bertinoro, June 2009 16 / 84
Finite memory strategy – example
Muller game:
y1
y2
x1
x2F = {{x1, y1}, {x2, y1}, {x1, x2, y1, y2}}
y1 x1 y1 x1 y1 x2 y1 x1 y2 x1 y1
m0 m1
x1, y1, y2 x2, y1, y2x2
x1
m0 m0 m0 m0 m0 m0 m1 m1 m0 m0 m0
σ(m0, x1) = y1σ(m1, x1) = y2
“Move to y2 if the previous xi was x2”Infinite games and automata theory · Bertinoro, June 2009 16 / 84
Some results (see tutorial of Marcin Jurdzinski)
Theorem (Buchi/Landweber’69, Gurevich/Harrington’82,Zielonka’98)Muller games are determined with finite memory strategies.
Infinite games and automata theory · Bertinoro, June 2009 17 / 84
Some results (see tutorial of Marcin Jurdzinski)
Theorem (Buchi/Landweber’69, Gurevich/Harrington’82,Zielonka’98)Muller games are determined with finite memory strategies.
Theorem (Emerson/Jutla’88,Mostowski’91)Parity games are positionally determined.
Infinite games and automata theory · Bertinoro, June 2009 17 / 84
Some results (see tutorial of Marcin Jurdzinski)
Theorem (Buchi/Landweber’69, Gurevich/Harrington’82,Zielonka’98)Muller games are determined with finite memory strategies.
Theorem (Emerson/Jutla’88,Mostowski’91)Parity games are positionally determined.
What about other types of winning conditions, e.g.
• Every blue state is followed by a green state, there are at most3 red states, and if there is no yellow state, then there areinfinitely many green ones...
Do we have to design a new algorithm for each winning condition?
Infinite games and automata theory · Bertinoro, June 2009 17 / 84
1 Introduction
2 Basics on games
3 Transformation of winning conditions
ω-Automata
Game reductions
Logical winning conditions
4 Tree automata
Complementation
Emptiness
5 Beyond finite automata
Infinite games and automata theory · Bertinoro, June 2009 18 / 84
Translation of winning conditions
Goal: general mechanism for transforming winning conditions
Example:
Game graph with colors C = {a, b, c, d}
Winning condition: Eva wins if the play never matches the regularexpression r (over the alphabet C)
a
c
b
d
C∗c(a+ b)∗cC∗ + C∗d(a+ b)∗dC∗
Infinite games and automata theory · Bertinoro, June 2009 19 / 84
Translation of winning conditions
Goal: general mechanism for transforming winning conditions
Example:
Game graph with colors C = {a, b, c, d}
Winning condition: Eva wins if the play never matches the regularexpression r (over the alphabet C)
a
c
b
d
C∗c(a+ b)∗cC∗ + C∗d(a+ b)∗dC∗
strategy with two states of memory
Infinite games and automata theory · Bertinoro, June 2009 19 / 84
Translation of winning conditions
Goal: general mechanism for transforming winning conditions
Example:
Game graph with colors C = {a, b, c, d}
Winning condition: Eva wins if the play never matches the regularexpression r (over the alphabet C)
a
c
b
d
C∗c(a+ b)∗cC∗ + C∗d(a+ b)∗dC∗
strategy with two states of memory
How to solve such games in general?
Infinite games and automata theory · Bertinoro, June 2009 19 / 84
Safety game
Product of game graph and DFA for r: the automaton reads the play
Eva wins if she can avoid the final states of the DFA.
a
c
b
d
0
1 2
3
c d
a, b
a, b a, b
a, b, c, d
d
c
dc
Infinite games and automata theory · Bertinoro, June 2009 20 / 84
Safety game
Product of game graph and DFA for r: the automaton reads the play
Eva wins if she can avoid the final states of the DFA.
a
c
b
d
0
1 2
3
c d
a, b
a, b a, b
a, b, c, d
d
c
dc
a, 0
c, 0
b, 0
d, 0
a, 1
c, 1
b, 1
d, 1
a, 2
c, 2
b, 2
d, 2
Infinite games and automata theory · Bertinoro, June 2009 20 / 84
Safety game
Product of game graph and DFA for r: the automaton reads the play
Eva wins if she can avoid the final states of the DFA.
a
c
b
d
0
1 2
3
c d
a, b
a, b a, b
a, b, c, d
d
c
dc
a, 0
c, 0
b, 0
d, 0
a, 1
c, 1
b, 1
d, 1
a, 2
c, 2
b, 2
d, 2
Infinite games and automata theory · Bertinoro, June 2009 20 / 84
Safety game
Product of game graph and DFA for r: the automaton reads the play
Eva wins if she can avoid the final states of the DFA.
a
c
b
d
0
1 2
3
c d
a, b
a, b a, b
a, b, c, d
d
c
dc
a, 0
c, 0
b, 0
d, 0
a, 1
c, 1
b, 1
d, 1
a, 2
c, 2
b, 2
d, 2
Infinite games and automata theory · Bertinoro, June 2009 20 / 84
Safety game
Product of game graph and DFA for r: the automaton reads the play
Eva wins if she can avoid the final states of the DFA.
a
c
b
d
0
1 2
3
c d
a, b
a, b a, b
a, b, c, d
d
c
dc
a, 0
c, 0
b, 0
d, 0
a, 1
c, 1
b, 1
d, 1
a, 2
c, 2
b, 2
d, 2
Infinite games and automata theory · Bertinoro, June 2009 20 / 84
Safety game
Product of game graph and DFA for r: the automaton reads the play
Eva wins if she can avoid the final states of the DFA.
a
c
b
d
0
1 2
3
c d
a, b
a, b a, b
a, b, c, d
d
c
dc
a, 0
c, 0
b, 0
d, 0
a, 1
c, 1
b, 1
d, 1
a, 2
c, 2
b, 2
d, 2c, 1 d, 2
Infinite games and automata theory · Bertinoro, June 2009 20 / 84
Safety game
Product of game graph and DFA for r: the automaton reads the play
Eva wins if she can avoid the final states of the DFA.
a
c
b
d
0
1 2
3
c d
a, b
a, b a, b
a, b, c, d
d
c
dc
a, 0
c, 0
b, 0
d, 0
a, 1
c, 1
b, 1
d, 1
a, 2
c, 2
b, 2
d, 2c, 1 d, 2
a, 2
Infinite games and automata theory · Bertinoro, June 2009 20 / 84
Safety game
Product of game graph and DFA for r: the automaton reads the play
Eva wins if she can avoid the final states of the DFA.
a
c
b
d
0
1 2
3
c d
a, b
a, b a, b
a, b, c, d
d
c
dc
a, 0
c, 0
b, 0
d, 0
a, 1
c, 1
b, 1
d, 1
a, 2
c, 2
b, 2
d, 2c, 1 d, 2
a, 2
Infinite games and automata theory · Bertinoro, June 2009 20 / 84
Safety game
Product of game graph and DFA for r: the automaton reads the play
Eva wins if she can avoid the final states of the DFA.
a
c
b
d
0
1 2
3
c d
a, b
a, b a, b
a, b, c, d
d
c
dc
a, 0
c, 0
b, 0
d, 0
a, 1
c, 1
b, 1
d, 1
a, 2
c, 2
b, 2
d, 2c, 1 d, 2
a, 2
Strategy for Eva with three memory states.Infinite games and automata theory · Bertinoro, June 2009 20 / 84
Summary of the method
• Transform the regular expression into a DFA.
• Take the product with the game graph.
• The resulting game is a safety game: Eva wins if she can avoidthe set R of red states.
• Solve the safety game by an attractor construction:• Compute stepwise the set AttrA(R) of nodes from where Adam
can force a visit to a red state.• For the nodes outside of AttrA(R) Eva has a strategy to stay
outside (by the definition of AttrA(R)).
• Translate the strategy for Eva (or for Adam) back to the originalgame, using the DFA as memory.
Infinite games and automata theory · Bertinoro, June 2009 21 / 84
Infinitary conditions
• For the above example we used a translation from regularexpressions to deterministic finite automata (DFAs).
• For infinitary conditions (something happens infinitely/finitelyoften) standard DFAs are not enough.
• To treat such conditions we can use ω-automata.
Infinite games and automata theory · Bertinoro, June 2009 22 / 84
ω-Automata
Infinite games and automata theory · Bertinoro, June 2009 23 / 84
Buchi automata
An ω-automaton is of the form A = (Q,Σ, qin,∆,Acc), whereQ,Σ, qin,∆ are as for standard finite automata, and Acc defines theacceptance condition.
Acceptance conditions:
• Buchi automata : Acc given as set F ⊆ Q of final states.A run is accepting if it contains infinitely often a state from F
• Parity automata : Acc given as priority mapping pri : Q→ N
A run is accepting if the maximal priority appearing infinitelyoften is even.
Deterministic automata : as usual (at most one transition per stateand letter)
Infinite games and automata theory · Bertinoro, June 2009 24 / 84
Basic examples
Σ = {a, b}
• A nondeterministic Buchi automaton for “finitely many b”:
q0 q1
a, b
a
a
Infinite games and automata theory · Bertinoro, June 2009 25 / 84
Basic examples
Σ = {a, b}
• A nondeterministic Buchi automaton for “finitely many b”:
q0 q1
a, b
a
a
There is no deterministic Buchi automaton for this language
Infinite games and automata theory · Bertinoro, June 2009 25 / 84
Basic examples
Σ = {a, b}
• A nondeterministic Buchi automaton for “finitely many b”:
q0 q1
a, b
a
a
There is no deterministic Buchi automaton for this language
• A deterministic parity automaton for the same language:
q00
q11
a
b
b
a
Infinite games and automata theory · Bertinoro, June 2009 25 / 84
The determinization problem
• Classical subset construction fails
q0 q1
a, b
a, b
a
aaaaaa · · · and abababab · · · induce the same sequence ofsets:
{q0}a−→a
{q0, q1}a−→b
{q0, q1}a−→a
{q0, q1}a−→b
{q0, q1} · · ·
Infinite games and automata theory · Bertinoro, June 2009 26 / 84
The determinization problem
• Classical subset construction fails
q0 q1
a, b
a, b
a
aaaaaa · · · and abababab · · · induce the same sequence ofsets:
{q0}a−→a
{q0, q1}a−→b
{q0, q1}a−→a
{q0, q1}a−→b
{q0, q1} · · ·
• A deterministic automaton has to store more information on thepossible runs of the Buchi automaton: Besides the statesreached some information on the visits to final states are isnecessary.
Infinite games and automata theory · Bertinoro, June 2009 26 / 84
The determinization problem
• Classical subset construction fails
q0 q1
a, b
a, b
a
aaaaaa · · · and abababab · · · induce the same sequence ofsets:
{q0}a−→a
{q0, q1}a−→b
{q0, q1}a−→a
{q0, q1}a−→b
{q0, q1} · · ·
• A deterministic automaton has to store more information on thepossible runs of the Buchi automaton: Besides the statesreached some information on the visits to final states are isnecessary.
• The details are rather technical...
Infinite games and automata theory · Bertinoro, June 2009 26 / 84
Determinization
Theorem (McNaughton’66,Safra’88)For each nondeterministic Buchi automaton with n states there isan equivalent deterministic parity automaton with 2O(n log n) states.
Infinite games and automata theory · Bertinoro, June 2009 27 / 84
Determinization
Theorem (McNaughton’66,Safra’88)For each nondeterministic Buchi automaton with n states there isan equivalent deterministic parity automaton with 2O(n log n) states.
Deterministic parity automata are easy to complement: increase allpriorities by 1.
CorollaryThe class of regular ω-languages is closed under complementation.
Infinite games and automata theory · Bertinoro, June 2009 27 / 84
Game reductions
Infinite games and automata theory · Bertinoro, June 2009 28 / 84
Game reductions
We use the following scheme:
(G,Win)parity gameG×AWin
productgame
• AWin is a determinisitic parity automaton forWin
• It can be seen as a transducer that transforms sequences fromCω into sequences of priorities
Infinite games and automata theory · Bertinoro, June 2009 29 / 84
Game reductions
We use the following scheme:
(G,Win)parity gameG×AWin
productgame
positionalwinning strategy
compute
• AWin is a determinisitic parity automaton forWin
• It can be seen as a transducer that transforms sequences fromCω into sequences of priorities
Infinite games and automata theory · Bertinoro, June 2009 29 / 84
Game reductions
We use the following scheme:
(G,Win)parity gameG×AWin
productgame
positionalwinning strategy
compute
winning strategywith memory AWin
translate
• AWin is a determinisitic parity automaton forWin
• It can be seen as a transducer that transforms sequences fromCω into sequences of priorities
Infinite games and automata theory · Bertinoro, June 2009 29 / 84
Example: Muller to Parity
• There is a direct algorithm for solving Muller games.
• For illustrating the concept of game reduction we provide atranslation of Muller games to parity games.
• For this purpose we construct a deterministic parity automatonthat• reads sequences α from Cω and• accepts if α satisfies the given Muller condition
• The construction is based on “latest appearance records”.
Infinite games and automata theory · Bertinoro, June 2009 30 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one endd b b d c b a b a c b a b a c
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
abcd
d b b d c b a b a c b a b a c
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
abcd
ddabc
b b d c b a b a c b a b a c
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
abcd
ddabc
bbdac
b d c b a b a c b a b a c
• When a color is moved to the front (top), mark its previousposition
• This allows to infer from the LAR which colors are visitedinfinitely often
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
abcd
ddabc
bbdac
bbdac
d c b a b a c b a b a c
• When a color is moved to the front (top), mark its previousposition
• This allows to infer from the LAR which colors are visitedinfinitely often
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
abcd
ddabc
bbdac
bbdac
ddbac
c b a b a c b a b a c
• When a color is moved to the front (top), mark its previousposition
• This allows to infer from the LAR which colors are visitedinfinitely often
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
abcd
ddabc
bbdac
bbdac
ddbac
c
cdba
b a b a c b a b a c
• When a color is moved to the front (top), mark its previousposition
• This allows to infer from the LAR which colors are visitedinfinitely often
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
abcd
ddabc
bbdac
bbdac
ddbac
c
cdba
bbcda
a b a c b a b a c
• When a color is moved to the front (top), mark its previousposition
• This allows to infer from the LAR which colors are visitedinfinitely often
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
abcd
ddabc
bbdac
bbdac
ddbac
c
cdba
bbcda
a
abcd
b a c b a b a c
• When a color is moved to the front (top), mark its previousposition
• This allows to infer from the LAR which colors are visitedinfinitely often
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
abcd
ddabc
bbdac
bbdac
ddbac
c
cdba
bbcda
a
abcd
bbacd
a c b a b a c
• When a color is moved to the front (top), mark its previousposition
• This allows to infer from the LAR which colors are visitedinfinitely often
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
abcd
ddabc
bbdac
bbdac
ddbac
c
cdba
bbcda
a
abcd
bbacd
a
abcd
c b a b a c
• When a color is moved to the front (top), mark its previousposition
• This allows to infer from the LAR which colors are visitedinfinitely often
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
abcd
ddabc
bbdac
bbdac
ddbac
c
cdba
bbcda
a
abcd
bbacd
a
abcd
c
cabd
b a b a c
• When a color is moved to the front (top), mark its previousposition
• This allows to infer from the LAR which colors are visitedinfinitely often
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
abcd
ddabc
bbdac
bbdac
ddbac
c
cdba
bbcda
a
abcd
bbacd
a
abcd
c
cabd
bbcad
a b a c
• When a color is moved to the front (top), mark its previousposition
• This allows to infer from the LAR which colors are visitedinfinitely often
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
abcd
ddabc
bbdac
bbdac
ddbac
c
cdba
bbcda
a
abcd
bbacd
a
abcd
c
cabd
bbcad
a
abcd
b a c
• When a color is moved to the front (top), mark its previousposition
• This allows to infer from the LAR which colors are visitedinfinitely often
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
abcd
ddabc
bbdac
bbdac
ddbac
c
cdba
bbcda
a
abcd
bbacd
a
abcd
c
cabd
bbcad
a
abcd
bbacd
a c
• When a color is moved to the front (top), mark its previousposition
• This allows to infer from the LAR which colors are visitedinfinitely often
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
abcd
ddabc
bbdac
bbdac
ddbac
c
cdba
bbcda
a
abcd
bbacd
a
abcd
c
cabd
bbcad
a
abcd
bbacd
a
abcd
c
• When a color is moved to the front (top), mark its previousposition
• This allows to infer from the LAR which colors are visitedinfinitely often
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record – Idea
• Recall the order in which the colors (or vertices) of the playappeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
abcd
ddabc
bbdac
bbdac
ddbac
c
cdba
bbcda
a
abcd
bbacd
a
abcd
c
cabd
bbcad
a
abcd
bbacd
a
abcd
c
cabd
• When a color is moved to the front (top), mark its previousposition
• This allows to infer from the LAR which colors are visitedinfinitely often
Infinite games and automata theory · Bertinoro, June 2009 31 / 84
Latest Appearance Record
• A latest appearance record (LAR) over C is an ordering ofthe elements of C.
LAR(C) =
{[d1 · · · dn, h] di ∈ C, di , dj for all i , j,
and 1 ≤ h ≤ n
}
• LAR update:
δLAR([d1 · · · dn, h], d) = [dd1 · · · di−1di+1 · · · dn, i]
for the unique i with d = di• This defines the states (the LARs) and the transition structure
(LAR update) of the deterministic parity automaton.
Infinite games and automata theory · Bertinoro, June 2009 32 / 84
Assigning Priorities
• Priority depends on the size of the part of the LAR that haschanged in the last transition.
• The biggest part that changes infinitely often decides
• Example for F = {{b, d}, {a, b, c}}
abcd
7
ddabc
7
bbdac
5
bbdac
1
ddbac
4
c
cdba
7
bbcda
5
a
abcd
7
bbacd
3
a
abcd
3
c
cabd
6
bbcad
6
a
abcd
6
bbacd
3
a
abcd
3
c
cabd
6
Infinite games and automata theory · Bertinoro, June 2009 33 / 84
The LAR automaton
• Let F be a Muller condition over |C| = n colors.
• Define the deterministic parity automatonALAR = (LAR(C),C, qin, δLAR, cLAR) with
cLAR([d1 · · · dn, h]) =
{2h− 1 {d1, . . . , dh} < F ,2h {d1, . . . , dh} ∈ F .
TheoremFor a Muller condition F over C the corresponding deterministicparity automaton ALAR accepts precisely those α ∈ Cω that satisfythe Muller condition F .
Infinite games and automata theory · Bertinoro, June 2009 34 / 84
From Muller to Parity Games
Muller game (G,F )parity gameG×ALAR
productgame
From Muller to Parity Games
Muller game (G,F )parity gameG×ALAR
productgame
positionalwinning strategy
compute
From Muller to Parity Games
Muller game (G,F )parity gameG×ALAR
productgame
positionalwinning strategy
compute
winning strategywith memory ALAR
translate
Infinite games and automata theory · Bertinoro, June 2009 35 / 84
From Muller to Parity Games
Muller game (G,F )parity gameG×ALAR
productgame
positionalwinning strategy
compute
winning strategywith memory ALAR
translate
Theorem (Gurevich/Harrington’82)Muller games are determined with the LAR automaton as memory.
Infinite games and automata theory · Bertinoro, June 2009 35 / 84
Logical winning conditions
Infinite games and automata theory · Bertinoro, June 2009 36 / 84
Logic for infinite words
• Used for specifying properties of system executions
• In practice usually temporal logics are used
• From a theoretical point of view and as reference forexpressive power predicate logic is interesting
• Here we consider• the linear temporal logic LTL and• monadic second-order logic over infinite words, called S1S.
Infinite games and automata theory · Bertinoro, June 2009 37 / 84
Linear temporal logic – LTL
LTL formulas: Build over a set P = {p1, . . . , pn} of atomicpropositions.
Models: Infinite sequences of vectors of size n. Entry i of a vectorcodes truth value of pi (1 = true, 0 = false).
• Atomic formulas: pi (pi is true in the first position)• Boolean combinations• Temporal operators:
Fϕ · · ·ϕ
· · · “eventually ϕ”
Gϕϕ ϕ ϕ
· · ·ϕ ϕ ϕ
· · · “always ϕ”
Xϕϕ
· · · · · · “next ϕ”
ϕUψ ϕ ϕ ϕ· · ·
ϕ ψ· · · “ϕ until ψ”
Infinite games and automata theory · Bertinoro, June 2009 38 / 84
Examplesp1 ∧ X¬p2
(11
)(10
)(01
)(00
)
· · ·
Infinite games and automata theory · Bertinoro, June 2009 39 / 84
Examplesp1 ∧ X¬p2
(11
)(10
)(01
)(00
)
· · ·
Gp2 ∧ Fp1
(01
)(01
)(01
)
· · ·
(01
)(11
)(01
)(01
)(11
)
· · ·
Infinite games and automata theory · Bertinoro, June 2009 39 / 84
Examplesp1 ∧ X¬p2
(11
)(10
)(01
)(00
)
· · ·
Gp2 ∧ Fp1
(01
)(01
)(01
)
· · ·
(01
)(11
)(01
)(01
)(11
)
· · ·
F(p3 ∧ X(¬p2Up1))
010
001
· · ·
101
001
001
000
110
· · ·
Infinite games and automata theory · Bertinoro, June 2009 39 / 84
From LTL to automata
Buchi automaton “guesses” valuations of the subformulas andverifies its guesses:
• Atomic formulas, Boolean combinations: verified directly
• Operators X, G: verified using the transitions
• Operators F, U: verified by acceptance condition
Infinite games and automata theory · Bertinoro, June 2009 40 / 84
From LTL to automata
Buchi automaton “guesses” valuations of the subformulas andverifies its guesses:
• Atomic formulas, Boolean combinations: verified directly
• Operators X, G: verified using the transitions
• Operators F, U: verified by acceptance condition
α = (10) (01) (11) (00) (10) (01) · · ·
¬p1
¬p2
¬p2Up1
X(¬p2Up1)
¬p1 ∧ X(¬p2Up1)
F(¬p1 ∧ X(¬p2Up1))
Infinite games and automata theory · Bertinoro, June 2009 40 / 84
From LTL to automata
Buchi automaton “guesses” valuations of the subformulas andverifies its guesses:
• Atomic formulas, Boolean combinations: verified directly
• Operators X, G: verified using the transitions
• Operators F, U: verified by acceptance condition
α = (10) (01) (11) (00) (10) (01) · · ·
¬p1
¬p2
¬p2Up1
X(¬p2Up1)
¬p1 ∧ X(¬p2Up1)
F(¬p1 ∧ X(¬p2Up1))
0
1
1
0
0
1
Infinite games and automata theory · Bertinoro, June 2009 40 / 84
From LTL to automata
Buchi automaton “guesses” valuations of the subformulas andverifies its guesses:
• Atomic formulas, Boolean combinations: verified directly
• Operators X, G: verified using the transitions
• Operators F, U: verified by acceptance condition
α = (10) (01) (11) (00) (10) (01) · · ·
¬p1
¬p2
¬p2Up1
X(¬p2Up1)
¬p1 ∧ X(¬p2Up1)
F(¬p1 ∧ X(¬p2Up1))
0
1
1
0
0
1
1
0
0
1
1
1
Infinite games and automata theory · Bertinoro, June 2009 40 / 84
From LTL to automata
Buchi automaton “guesses” valuations of the subformulas andverifies its guesses:
• Atomic formulas, Boolean combinations: verified directly
• Operators X, G: verified using the transitions
• Operators F, U: verified by acceptance condition
α = (10) (01) (11) (00) (10) (01) · · ·
¬p1
¬p2
¬p2Up1
X(¬p2Up1)
¬p1 ∧ X(¬p2Up1)
F(¬p1 ∧ X(¬p2Up1))
0
1
1
0
0
1
1
0
0
1
1
1
0
0
1
1
0
1
Infinite games and automata theory · Bertinoro, June 2009 40 / 84
From LTL to automata
Buchi automaton “guesses” valuations of the subformulas andverifies its guesses:
• Atomic formulas, Boolean combinations: verified directly
• Operators X, G: verified using the transitions
• Operators F, U: verified by acceptance condition
α = (10) (01) (11) (00) (10) (01) · · ·
¬p1
¬p2
¬p2Up1
X(¬p2Up1)
¬p1 ∧ X(¬p2Up1)
F(¬p1 ∧ X(¬p2Up1))
0
1
1
0
0
1
1
0
0
1
1
1
0
0
1
1
0
1
1
1
1
1
1
1
Infinite games and automata theory · Bertinoro, June 2009 40 / 84
From LTL to automata
Buchi automaton “guesses” valuations of the subformulas andverifies its guesses:
• Atomic formulas, Boolean combinations: verified directly
• Operators X, G: verified using the transitions
• Operators F, U: verified by acceptance condition
α = (10) (01) (11) (00) (10) (01) · · ·
¬p1
¬p2
¬p2Up1
X(¬p2Up1)
¬p1 ∧ X(¬p2Up1)
F(¬p1 ∧ X(¬p2Up1))
0
1
1
0
0
1
1
0
0
1
1
1
0
0
1
1
0
1
1
1
1
1
1
1
0
1
1
0
0
·
Infinite games and automata theory · Bertinoro, June 2009 40 / 84
From LTL to automata
Buchi automaton “guesses” valuations of the subformulas andverifies its guesses:
• Atomic formulas, Boolean combinations: verified directly
• Operators X, G: verified using the transitions
• Operators F, U: verified by acceptance condition
α = (10) (01) (11) (00) (10) (01) · · ·
¬p1
¬p2
¬p2Up1
X(¬p2Up1)
¬p1 ∧ X(¬p2Up1)
F(¬p1 ∧ X(¬p2Up1))
0
1
1
0
0
1
1
0
0
1
1
1
0
0
1
1
0
1
1
1
1
1
1
1
0
1
1
0
0
·
1
0
0
·
·
·
· · ·
· · ·
· · ·
· · ·
· · ·
· · ·
Infinite games and automata theory · Bertinoro, June 2009 40 / 84
Games with LTL conditions
Theorem• For each LTL formula ϕ one can construct an equivalent Buchi
automaton Aϕ of size exponential in ϕ. (Vardi/Wolper’86)
• For each LTL formula ϕ one can construct an equivalentdeterministic parity automaton of size doubly exponential in ϕ.(determinization theorem)
• Finite games (G, ϕ) with a winning condition given by an LTLformula can be solved in doubly exponential time.(game reduction)
Infinite games and automata theory · Bertinoro, June 2009 41 / 84
S1S
“Second-order theory of one successor”:
• Monadic second-order logic over the structure (N,+1)
0 1 2 · · · i i+ 1 i+ 2 · · ·
• Extension of first-order logic over (N,+1) by quantifiers forsets of positions (numbers).
Infinite games and automata theory · Bertinoro, June 2009 42 / 84
S1S
“Second-order theory of one successor”:
• Monadic second-order logic over the structure (N,+1)
0 1 2 · · · i i+ 1 i+ 2 · · ·
• Extension of first-order logic over (N,+1) by quantifiers forsets of positions (numbers).
• Example: ϕ(X) = ∃Y(
0 ∈ Y ∧
∀x(x ∈ Y ↔ x+ 1 < Y) ∧
∀x(x ∈ X → x ∈ Y))
ϕ defines the set of all ω-words over {0, 1} such that 1 canonly occur on even positions.
Infinite games and automata theory · Bertinoro, June 2009 42 / 84
S1S
“Second-order theory of one successor”:
• Monadic second-order logic over the structure (N,+1)
0 1 2 · · · i i+ 1 i+ 2 · · ·
• Extension of first-order logic over (N,+1) by quantifiers forsets of positions (numbers).
• Example: ϕ(X) = ∃Y(
0 ∈ Y ∧
∀x(x ∈ Y ↔ x+ 1 < Y) ∧
∀x(x ∈ X → x ∈ Y))
ϕ defines the set of all ω-words over {0, 1} such that 1 canonly occur on even positions.
• In general we consider formulas ϕ(X1, . . . ,Xn) with n free setvariables defining ω-languages over {0, 1}n.
Infinite games and automata theory · Bertinoro, June 2009 42 / 84
Equivalence to automata
Theorem (Buchi’62)A language L ⊆ ({0, 1}n)ω is definable by an S1S formula iff it canbe accepted by a nondeterministic Buchi automaton.
Proof:
• From formulas to automata use an inductive translation, basedon the closure properties of automata.
• From automata to formulas: Write a formula that describes theexistence of an accepting run.Sets Xq for each state q code the positions of the run wherethe automaton is in state q.
Infinite games and automata theory · Bertinoro, June 2009 43 / 84
Games with S1S conditions
Using determinization of Buchi automata and game reduction:
Theorem (Buchi/Landweber’69)For finite games (G, ϕ) with a winning condition given by an S1Sformula one can decide the winner and can compute acorresponding winning strategy.
Complexity: The size of the memory required for such a winningstrategy cannot be bounded by function
222···2n
}
k
for a fixed k.
Infinite games and automata theory · Bertinoro, June 2009 44 / 84
Summary of this part
Solving infinite games with the help of automata: Extend the gameby running a deterministic automaton along the plays.
(G,Win)parity gameG×AWin
product
game
positionalwinning strategy
compute
winning strategywith memory AWin
translate
Examples:
• Muller conditions: LAR construction• LTL conditions: nondeterministic automaton guessing
valuations of subformulas + determinization• S1S conditions: inductive translation to automata
Infinite games and automata theory · Bertinoro, June 2009 45 / 84
Solving Church’s synthesis problem
circuit finput ∈ Σ1 output ∈ Σ2
• Input sequence α ∈ Σω1 and output sequence β ∈ Σω
2
• Specification ϕ(α, β)
Assume Σ1 = Σ2 = {0, 1}.
• A computation of f is an infinite sequence of the form
(01
)(11
)(00
)(00
)(11
)
· · ·
with the input signals in the first row, the output signals in thesecond row.
• The specification can be written as LTL formula over {p1, p2}or as S1S formula ϕ(X1,X2).
Infinite games and automata theory · Bertinoro, June 2009 46 / 84
Church’s synthesis problem as game(00
)
(01
)
(10
)
(11
)
Winning condition: Specification ϕ rewritten such that it onlyconsiders the red vertices.
Finite state winning strategy for Eva gives the desired program for f .
Infinite games and automata theory · Bertinoro, June 2009 47 / 84
1 Introduction
2 Basics on games
3 Transformation of winning conditions
ω-Automata
Game reductions
Logical winning conditions
4 Tree automata
Complementation
Emptiness
5 Beyond finite automata
Infinite games and automata theory · Bertinoro, June 2009 48 / 84
Reminder
Theorem (Emerson/Jutla’88,Mostowski’91)Parity games are positionally determined.
Theorem (McNaughton’66,Safra’88)For each nondeterministic Buchi automaton with n states there isan equivalent deterministic parity automaton with 2O(n log n) states.
automata on infinitewords
games of infiniteduration
automata on infinitetrees
Infinite games and automata theory · Bertinoro, June 2009 49 / 84
Why infinite trees?
• Discrete systems (circuits, protocols etc.) can be described bytransitions graphs.
• The possible behavior of such a system is captured by aninfinite tree: the unraveling of the transition graph.
• Properties of the system behavior can be specified asproperties of infinite trees.
Infinite games and automata theory · Bertinoro, June 2009 50 / 84
Infinite trees
• For simplicity we restrict ourselves to complete binary trees.
• The nodes are labeled from a finite alphabet Σ.
• Formally, a tree is a mapping t : {0, 1}∗ → Σ.
b
a
b
a a
b
a a
b
b
b a
b
a a...
Infinite games and automata theory · Bertinoro, June 2009 51 / 84
Infinite trees
• For simplicity we restrict ourselves to complete binary trees.
• The nodes are labeled from a finite alphabet Σ.
• Formally, a tree is a mapping t : {0, 1}∗ → Σ.
b
a
b
a a
b
a a
b
b
b a
b
a a...
t(ε) = b
t(0) = a
t(01) = b
t(110) = a
Infinite games and automata theory · Bertinoro, June 2009 51 / 84
Automata on infinite trees
automata onfinite words
automata onfinite trees
automata oninfinite words
automata oninfinite trees
• Robust model (good closure and algorithmic properties)
• Captures many known specification logics
Infinite games and automata theory · Bertinoro, June 2009 52 / 84
Parity tree automata
• A = (Q,Σ, qin,∆, pri)
• Transitions of the form (q, a, q′, q′′)
Run of A : b
a
b
a a
b
a a
b
b
b a
b
a a...
Infinite games and automata theory · Bertinoro, June 2009 53 / 84
Parity tree automata
• A = (Q,Σ, qin,∆, pri)
• Transitions of the form (q, a, q′, q′′)
Run of A : bqin
a
b
a a
b
a a
b
b
b a
b
a a...
Infinite games and automata theory · Bertinoro, June 2009 53 / 84
Parity tree automata
• A = (Q,Σ, qin,∆, pri)
• Transitions of the form (q, a, q′, q′′)
Run of A : bqin
(qin, b, q1, q2) ∈ ∆
aq1
b
a a
b
a a
bq2
b
b a
b
a a...
Infinite games and automata theory · Bertinoro, June 2009 53 / 84
Parity tree automata
• A = (Q,Σ, qin,∆, pri)
• Transitions of the form (q, a, q′, q′′)
Run of A : bqin
(qin, b, q1, q2) ∈ ∆
aq1
(q1, a, q3, q4) ∈ ∆
bq3
a a
bq4
a a
bq2
b
b a
b
a a...
Infinite games and automata theory · Bertinoro, June 2009 53 / 84
Parity tree automata
• A = (Q,Σ, qin,∆, pri)
• Transitions of the form (q, a, q′, q′′)
Run of A : bqin
(qin, b, q1, q2) ∈ ∆
aq1
(q1, a, q3, q4) ∈ ∆
bq3
a a
bq4
a a
bq2
(q2, b, q5, q6) ∈ ∆
bq5
b a
bq6
a a...
Infinite games and automata theory · Bertinoro, June 2009 53 / 84
Parity tree automata
• A = (Q,Σ, qin,∆, pri)
• Transitions of the form (q, a, q′, q′′)
Run of A : bqin
(qin, b, q1, q2) ∈ ∆
aq1
(q1, a, q3, q4) ∈ ∆
bq3
a a
bq4
a a
bq2
(q2, b, q5, q6) ∈ ∆
bq5
b a
bq6
a a...
• Priority function pri : Q→ N
• Run accepting if on each path the maximal priority appearinginfinitely often is even.
• Tree accepted if there is an accepting run on this tree. T(A)denotes the language of accepted trees.
Infinite games and automata theory · Bertinoro, June 2009 53 / 84
Example
• Trees over {a, b} such that on each infinite path there are onlyfinitely many b
• Use parity word automaton and run it on all branches
q00
q11
a
b
b
a
Infinite games and automata theory · Bertinoro, June 2009 54 / 84
Example
• Trees over {a, b} such that on each infinite path there are onlyfinitely many b
• Use parity word automaton and run it on all branches
q00
q11
a
b
b
a
• Required transitions: (q0, a, q0, q0), (q0, b, q1, q1), (q1, a, q0, q0),and (q1, b, q1, q1)
Infinite games and automata theory · Bertinoro, June 2009 54 / 84
Example
• Trees over {a, b} such that on each infinite path there are onlyfinitely many b
• Use parity word automaton and run it on all branches
q00
q11
a
b
b
a
• Required transitions: (q0, a, q0, q0), (q0, b, q1, q1), (q1, a, q0, q0),and (q1, b, q1, q1)
• There is no (nondeterministic) Buchi tree automaton for thislanguage.
Infinite games and automata theory · Bertinoro, June 2009 54 / 84
Example
The set of all trees t over {a, b} such that t contains at least onenode labeled b:
(qb, a, qb, q) (qb, a, q, qb) (qb, b, q, q)
pri(qb) = 1 and pri(q) = 0
Nondeterminsm is required
Infinite games and automata theory · Bertinoro, June 2009 55 / 84
Acceptance conditions
• As for games we can define Muller, Rabin, Streett, Buchi, etc.automata.
• The LAR construction can be used to transform Muller treeautomata into parity tree automata.
• Call a language of infinite trees regular if it can be accepted bya parity tree automaton.
Infinite games and automata theory · Bertinoro, June 2009 56 / 84
Basic closure properties
PropositionThe class of regular languages of infinite trees is closed underunion, intersection, and projection (relabeling).
Infinite games and automata theory · Bertinoro, June 2009 57 / 84
Basic closure properties
PropositionThe class of regular languages of infinite trees is closed underunion, intersection, and projection (relabeling).
Proof:
• Union, intersection: A standard product construction yields aMuller automaton over pairs of priorities.
• Projection h : Σ → Γ: simply apply the projection to the labelsin the transitions.
Infinite games and automata theory · Bertinoro, June 2009 57 / 84
Basic closure properties
PropositionThe class of regular languages of infinite trees is closed underunion, intersection, and projection (relabeling).
Proof:
• Union, intersection: A standard product construction yields aMuller automaton over pairs of priorities.
• Projection h : Σ → Γ: simply apply the projection to the labelsin the transitions.
What about complementation?
Infinite games and automata theory · Bertinoro, June 2009 57 / 84
Complementation
Infinite games and automata theory · Bertinoro, June 2009 58 / 84
Complementation
Tree accepted:
∃run∀path.(path satisfies acceptance condition)
Tree not accepted:
∀run∃path.(path does not satisfy acceptance condition)
This exchange of quantifiers makes the problem difficult.
Infinite games and automata theory · Bertinoro, June 2009 59 / 84
Complementation
Tree accepted:
∃run∀path.(path satisfies acceptance condition)
Tree not accepted:
∀run∃path.(path does not satisfy acceptance condition)
This exchange of quantifiers makes the problem difficult.
Idea for solution
Reformulate acceptance as:
∃strategy for Eva ∀strategies for Adam (...)
Infinite games and automata theory · Bertinoro, June 2009 59 / 84
Complementation
Tree accepted:
∃run∀path.(path satisfies acceptance condition)
Tree not accepted:
∀run∃path.(path does not satisfy acceptance condition)
This exchange of quantifiers makes the problem difficult.
Idea for solution
Reformulate acceptance as:
∃strategy for Eva ∀strategies for Adam (...)
Determinacy yields for non-acceptance:
∃strategy for Adam ∀strategies for Eva (...)
Infinite games and automata theory · Bertinoro, June 2009 59 / 84
Membership game
Use a game to characterize when a tree t is accepted by A:
• Player C tries to show that t is accepted byconstructing a run.
• Player S tries to show the contrary by selecting a path onwhich the acceptance condition is not satisfied.
Infinite games and automata theory · Bertinoro, June 2009 60 / 84
Membership game
Use a game to characterize when a tree t is accepted by A:
• Player C tries to show that t is accepted byconstructing a run.
• Player S tries to show the contrary by selecting a path onwhich the acceptance condition is not satisfied.
• The game starts a the root of the tree in the initial state of A.• The moves of the game from a position (u, q) where u is a
node of t, and q is a state of A:1. C picks a transition (q, a, q0, q1) that matches q and
the label a of t at u2. S chooses a direction and the game moves on to position
(u0, q0) or (u1, q1).
• Winning condition for C: acceptance condition of A
Parity game on an infinite graph
Infinite games and automata theory · Bertinoro, June 2009 60 / 84
Shape of the membership game
...
Infinite games and automata theory · Bertinoro, June 2009 61 / 84
Shape of the membership game
...
Infinite games and automata theory · Bertinoro, June 2009 61 / 84
Shape of the membership game
...
Infinite games and automata theory · Bertinoro, June 2009 61 / 84
Shape of the membership game
...
Infinite games and automata theory · Bertinoro, June 2009 61 / 84
Shape of the membership game
...
Infinite games and automata theory · Bertinoro, June 2009 61 / 84
Shape of the membership game
...
winning strategy of C{ accepting run
Infinite games and automata theory · Bertinoro, June 2009 61 / 84
Shape of the membership game
...
winning strategy of C{ accepting run
accepting run{ winning strategy of C
Infinite games and automata theory · Bertinoro, June 2009 61 / 84
Applying positional determinacy
LemmaA tree t is not in T(A) iffthere is a positional winning strategy for Sin the membership game.
Infinite games and automata theory · Bertinoro, June 2009 62 / 84
Strategies for S
...
Infinite games and automata theory · Bertinoro, June 2009 63 / 84
Strategies for S
...
Infinite games and automata theory · Bertinoro, June 2009 63 / 84
Strategies for S
...
Infinite games and automata theory · Bertinoro, June 2009 63 / 84
Strategies for S
...
Postional strategy for S coded as
σ : {0, 1}∗ → (∆ → {0, 1})︸ÃÃÃÃÃÃÃÃÃÃÃÃÃ︷︷ÃÃÃÃÃÃÃÃÃÃÃÃÃ︸
Γ
Infinite games and automata theory · Bertinoro, June 2009 63 / 84
Strategies for S
...
Postional strategy for S coded as
σ : {0, 1}∗ → (∆ → {0, 1})︸ÃÃÃÃÃÃÃÃÃÃÃÃÃ︷︷ÃÃÃÃÃÃÃÃÃÃÃÃÃ︸
Γ
This is a tree over the alphabet Γ
Infinite games and automata theory · Bertinoro, June 2009 63 / 84
Next steps
• Construct an automaton Astrat that reads trees of the formt× σ, i.e., annotated with a positional strategy for S
• Astrat accepts t× σ if σ is winning for S
• Obtain C from Astrat by omitting the strategy annotation in thelabels (C guesses the strategy for S).
Infinite games and automata theory · Bertinoro, June 2009 64 / 84
Construction of Astrat
...
Astrat has to check: the paths following the blue edges do notsatisfy the acceptance condition
Infinite games and automata theory · Bertinoro, June 2009 65 / 84
Construction of Astrat
0
1
...
Astrat has to check: the paths following the blue edges do notsatisfy the acceptance condition
Focus on single branches: infinite words over Σ × Γ × {0, 1}
Infinite games and automata theory · Bertinoro, June 2009 65 / 84
Verifying single branches
0
1
...
• Construct a nondeterministic Buchi automaton that guesses ablue path and accepts if it does satisfy the acceptancecondition of A.
• Determinize and complement, and obtain a deterministic parity
word automaton Apathstrat that accepts those branches of a tree
on which S’s strategy is winning.
Infinite games and automata theory · Bertinoro, June 2009 66 / 84
Back to trees
• Run Apathstrat along each branch:
Apathstrat : δ(q, (a,γ, 0)) = q′ δ(q, (a,γ, 1)) = q′′
Astrat : (q, (a,γ), q′, q′′)
• Then obtain C by omitting the strategy encoding:
(q, (a,γ), q′, q′′) becomes (q, a, q′, q′′)
Infinite games and automata theory · Bertinoro, June 2009 67 / 84
Summary of the complementation method
• Characterize acceptance in terms of winning strategy inmembership game
• Positional determinacy for parity games yields: t not acceptediff S has positional winning strategy
• Construct an automaton that checks if a given strategy ofS is winning.• This construction is based on the determinization of
ω-automata.
• Obtain the desired automaton by projection (removing thestrategy annotations).
Infinite games and automata theory · Bertinoro, June 2009 68 / 84
Closure under complementation
Theorem (Rabin’69)For a given tree automaton one can construct a tree automaton forthe complement language.
Infinite games and automata theory · Bertinoro, June 2009 69 / 84
From logic to automata
• Closure properties allow translation of S2S into tree automata• S2S is the monadic second-order logic over the infinite binary
tree, i.e., the structure ({0, 1}∗, S0, S1) consisting of• the tree nodes as domain• the two successor functions
• The translation works in the same way as for S1S toω-automata
• The satisfiability problem for S2S becomes the emptinessproblem for tree automata
Infinite games and automata theory · Bertinoro, June 2009 70 / 84
Emptiness
Infinite games and automata theory · Bertinoro, June 2009 71 / 84
Emptiness problem
Decide for a given PTA A if T(A) is empty.
Idea for solution:
• In the membership game for t, C’s task is toconstruct an accepting run on t
• In the emptiness game, C’s task is to construct atree along with an accepting run on t
Infinite games and automata theory · Bertinoro, June 2009 72 / 84
From membership to emptiness
How to adapt the membership game to obtain the emptiness game:
• The game starts at the root of the tree t in the initial state ofA.
• The moves of the game from a position ( u , q) where
u is a node of t, and q is a state of A:
1. C picks a transition (q, a, q0, q1) that matches q
and the label a of t at u
2. S chooses a direction and the game moves on to position( u0 , q0) or ( u1 , q1).
• Winning condition for C: acceptance condition of A
Infinite games and automata theory · Bertinoro, June 2009 73 / 84
From membership to emptiness
How to adapt the membership game to obtain the emptiness game:
• The game starts at the root of the tree t in the initial state ofA.
• The moves of the game from a position ( u , q) where
u is a node of t, and q is a state of A:
1. C picks a transition (q, a, q0, q1) that matches q
and the label a of t at u
2. S chooses a direction and the game moves on to position( u0 , q0) or ( u1 , q1).
• Winning condition for C: acceptance condition of A
Infinite games and automata theory · Bertinoro, June 2009 73 / 84
From membership to emptiness
How to adapt the membership game to obtain the emptiness game:
• The game starts at the root of the tree t in the initial state ofA.
• The moves of the game from a position ( u , q) where
u is a node of t, and q is a state of A:
1. C picks a transition (q, a, q0, q1) that matches q
and the label a of t at u
2. S chooses a direction and the game moves on to position( u0 , q0) or ( u1 , q1).
• Winning condition for C: acceptance condition of A
Infinite games and automata theory · Bertinoro, June 2009 73 / 84
Emptiness game
The emptiness game for A:
• The game positions are Q ∪ ∆ (states and transitions of A)• The moves of the game from a position q (a state of A):
1. C picks a transition (q, a, q0, q1)2. S chooses a direction and the game moves on to positionq0 or q1
• Winning condition for C: acceptance condition of A
This is a finite game graph.
LemmaC has a winning strategy in the emptiness game for A iffT(A) , ∅
Infinite games and automata theory · Bertinoro, June 2009 74 / 84
Example automaton
(q1, a, q1, q+)(q1, a, q2, q+)(q2, a, q1, q
′1)
(q′1, a, q+, q′1)
(q′1, b, q+, q+)(q+, a, q+, q+)(q+, b, q+, q+)
c(q1) = c(q′1) = 1c(q2) = c(q+) = 2
a
a
aa
ab
a
ab
q1
q1q1q1q2
q1q2
q1
q′1
q′1q′1q′1
q′1q′1
Infinite games and automata theory · Bertinoro, June 2009 75 / 84
Emptiness game
1q1
2q2
1
q′1
2q+
(q1, a, q1, q+) (q1, a, q2, q+)
(q2, a, q1, q′1)
(q′1, a, q+, q′1)
(q′1, b, q+, q+)(q+, a, q+, q+) (q+, b, q+, q+)
Infinite games and automata theory · Bertinoro, June 2009 76 / 84
Emptiness game
1q1
2q2
1
q′1
2q+
(q1, a, q1, q+) (q1, a, q2, q+)
(q2, a, q1, q′1)
(q′1, a, q+, q′1)
(q′1, b, q+, q+)(q+, a, q+, q+) (q+, b, q+, q+)
A winning strategy for C
Infinite games and automata theory · Bertinoro, June 2009 76 / 84
Regular trees
From the winning strategy: a finitely generated (regular) tree in thelanguage
(q1, (q1, a, q2, q+))
(q2, (q2, a, q1, q′1))
(q′1, (q′1, b, q+, q+))
(q+, (q+, a, q+, q+))
0
10
1
0,10,1
Infinite games and automata theory · Bertinoro, June 2009 77 / 84
Emptiness decidable
Theorem (Rabin’69)The emptiness problem for parity tree automata is decidable (in NP∩ co-NP). If the language is not empty, then one can construct afinite representation of a tree in the language.
Corollary (Rabin’69)S2S is decidable.
Infinite games and automata theory · Bertinoro, June 2009 78 / 84
Summary of this section
Games as a tool for tree automata constructions:
• For complementation of parity tree automata the positionaldeterminacy of parity games is used for the correctnessproof of the construction.The actual construction is based on determinization of wordautomata.
• The emptiness test directly reduces to a game . A positionalwinning strategy for C yields a regular tree in thelanguage.
Infinite games and automata theory · Bertinoro, June 2009 79 / 84
1 Introduction
2 Basics on games
3 Transformation of winning conditions
ω-Automata
Game reductions
Logical winning conditions
4 Tree automata
Complementation
Emptiness
5 Beyond finite automata
Infinite games and automata theory · Bertinoro, June 2009 80 / 84
Context-free specifications
What happens if specifications are not ω-regular?
PropositionThe problem of finding the winner in a game (G,Win), whereWinis defined by a nondeterministic pushdown ω-automaton isundecidable.
Infinite games and automata theory · Bertinoro, June 2009 81 / 84
Pushdown games
AssumeWin is specified by a deterministic pushdownω-automaton (with parity condition):
Taking the product of G with the pushdown automaton results in aparity game on a pushdown graph. These games can be solvedand winning strategies can be implemented by pushdownautomata.
Theorem (Walukiewicz’96)Parity games on pushdown graphs can be solved in exponentialtime and winning strategies can be implemented by pushdownautomata.
CorollaryThe problem of deciding the winner in a game (G,Win) for a finitegame graph, whereWin is defined by a deterministic pushdownω-automaton (with parity condition) is decidable.
Infinite games and automata theory · Bertinoro, June 2009 82 / 84
Recursive games
In general, one can study games on recursive game graphs (infiniteset of vertices, computable edge relation and coloring).
For recursive parity games winning strategies need not becomputable:
· · ·i− 1 i i+ 1
· · ·
......
......
......
......
......
...
...
...
...
Switch at level k if Turing ma-
chine number i halts after k
steps for the empty input
Eva wins if she visits
finitely many green ver-
tices
Infinite games and automata theory · Bertinoro, June 2009 83 / 84
Summary
1. Solving infinite games with the help of automata: Extend thegame by running a deterministic automaton along the plays• Determinization: nondeterministic Buchi → deterministic parity• Muller conditions: LAR construction• LTL conditions: nondeterministic automaton guessing
valuations of subformulas• S1S conditions: inductive translation to automata• Solution to Church’s synthesis problem
2. Games as a tool for tree automata constructions• Complementation• Emptiness test• Application: decidability of S2S
3. Nonregular conditions and infinite graphs• Pushdown games• Recursive games
Infinite games and automata theory · Bertinoro, June 2009 84 / 84