0% found this document useful (0 votes)
4 views

Tutorial on automata and games (slides)

The document discusses the relationship between infinite games and automata theory, exploring how automata can solve problems in games and vice versa. It outlines the tutorial's structure, including topics such as winning conditions and strategies in infinite games, and the application of automata in modeling reactive systems. The tutorial emphasizes the importance of understanding core theories to tackle more complex models involving time, probabilities, and concurrency.

Uploaded by

taruntukee
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Tutorial on automata and games (slides)

The document discusses the relationship between infinite games and automata theory, exploring how automata can solve problems in games and vice versa. It outlines the tutorial's structure, including topics such as winning conditions and strategies in infinite games, and the application of automata in modeling reactive systems. The tutorial emphasizes the importance of understanding core theories to tackle more complex models involving time, probabilities, and concurrency.

Uploaded by

taruntukee
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 197

Infinite games and automata theory

Christof Löding
RWTH Aachen, Germany

Spring School 2009


June 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 on
infinite trees

games of infinite
duration

automata on
infinite words

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 on
the inputs it has seen)
• Result is a non-terminating sequence of input and output
signals
• A logical specification describes the desired properties of
these sequences

input circuit f output

Task: Automatically synthesize a circuit from the specification

Infinite games and automata theory · Bertinoro, June 2009 4 / 84


More formally
input ∈ Σ1 circuit f 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
input ∈ Σ1 circuit f 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 winning
strategy 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 add
features like time, probabilities, concurrency, ...
• To study these more complex models a good understanding of
the core theory originating from Church’s problem is
fundamental
{ 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 α = v0 v1 v2 · · · of vertices such
that (vi , vi+1 ) ∈ E for all i ≥ 0.
By c(α) we denote the corresponding sequence of colors
c ( v0 ) c ( v1 ) c ( v2 ) · · ·

Infinite games and automata theory · Bertinoro, June 2009 10 / 84


Plays
A play in G is an infinite sequence α = v0 v1 v2 · · · of vertices such
that (vi , vi+1 ) ∈ E for all i ≥ 0.
By c(α) we denote the corresponding sequence of colors
c ( 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 α = v0 v1 v2 · · · of vertices such
that (vi , vi+1 ) ∈ E for all i ≥ 0.
By c(α) we denote the corresponding sequence of colors
c ( v0 ) c ( v1 ) c ( v2 ) · · ·

y1 x1 y2 x2

y3 x3 y4 x4 x5 y5

x6 y6 y7 x7

α: y7
c(α) : •
Infinite games and automata theory · Bertinoro, June 2009 10 / 84
Plays
A play in G is an infinite sequence α = v0 v1 v2 · · · of vertices such
that (vi , vi+1 ) ∈ E for all i ≥ 0.
By c(α) we denote the corresponding sequence of colors
c ( v0 ) c ( v1 ) c ( v2 ) · · ·

y1 x1 y2 x2

y3 x3 y4 x4 x5 y5

x6 y6 y7 x7

α: y7 x6
c(α) : • •
Infinite games and automata theory · Bertinoro, June 2009 10 / 84
Plays
A play in G is an infinite sequence α = v0 v1 v2 · · · of vertices such
that (vi , vi+1 ) ∈ E for all i ≥ 0.
By c(α) we denote the corresponding sequence of colors
c ( v0 ) c ( v1 ) c ( v2 ) · · ·

y1 x1 y2 x2

y3 x3 y4 x4 x5 y5

x6 y6 y7 x7

α: y7 x6 y3
c(α) : • • •
Infinite games and automata theory · Bertinoro, June 2009 10 / 84
Plays
A play in G is an infinite sequence α = v0 v1 v2 · · · of vertices such
that (vi , vi+1 ) ∈ E for all i ≥ 0.
By c(α) we denote the corresponding sequence of colors
c ( v0 ) c ( v1 ) c ( v2 ) · · ·

y1 x1 y2 x2

y3 x3 y4 x4 x5 y5

x6 y6 y7 x7

α: y7 x6 y3 y6
c(α) : • • • •
Infinite games and automata theory · Bertinoro, June 2009 10 / 84
Plays
A play in G is an infinite sequence α = v0 v1 v2 · · · of vertices such
that (vi , vi+1 ) ∈ E for all i ≥ 0.
By c(α) we denote the corresponding sequence of colors
c ( v0 ) c ( v1 ) c ( v2 ) · · ·

y1 x1 y2 x2

y3 x3 y4 x4 x5 y5

x6 y6 y7 x7

α: y7 x6 y3 y6 x3
c(α) : • • • • •
Infinite games and automata theory · Bertinoro, June 2009 10 / 84
Plays
A play in G is an infinite sequence α = v0 v1 v2 · · · of vertices such
that (vi , vi+1 ) ∈ E for all i ≥ 0.
By c(α) we denote the corresponding sequence of colors
c ( 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:

• Büchi: given by F ⊆ C
Win 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 α with max(Inf(c(α))) even

Infinite games and automata theory · Bertinoro, June 2009 11 / 84


Trying to Win – Strategies

y1 x1

y2 x2

Winning condition for Eva: y2 is visited infinitely often iff x1 and x2


are both visited infinitely often.

y2 ∈ Inf(α) ⇔ { x1 , x2 } ⊆ Inf(α)

Infinite games and automata theory · Bertinoro, June 2009 12 / 84


Trying to Win – Strategies

y1 x1

y2 x2

Winning condition for Eva: y2 is visited infinitely often iff x1 and x2


are 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 x1

y2 x2

Winning condition for Eva: y2 is visited infinitely often iff x1 and x2


are 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 x1

y2 x2

Winning condition for Eva: y2 is visited infinitely often iff x1 and x2


are 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 x1

y2 x2

Winning condition for Eva: y2 is visited infinitely often iff x1 and x2


are 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 x1

y2 x2

Winning condition for Eva: y2 is visited infinitely often iff x1 and x2


are 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 x1

y2 x2

Winning condition for Eva: y2 is visited infinitely often iff x1 and x2


are 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 x1

y2 x2

Winning condition for Eva: y2 is visited infinitely often iff x1 and x2


are 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 x1

y2 x2

Winning condition for Eva: y2 is visited infinitely often iff x1 and x2


are 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 x1

y2 x2

Winning condition for Eva: y2 is visited infinitely often iff x1 and x2


are 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 x1

y2 x2

Winning condition for Eva: y2 is visited infinitely often iff x1 and x2


are 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 x1

y2 x2

Winning condition for Eva: y2 is visited infinitely often iff x1 and x2


are 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 x1

y2 x2

Winning condition for Eva: y2 is visited infinitely often iff x1 and x2


are 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 v0 v1 v2 · · · is played according to σ if

∀i : vi ∈ VE → σ(v0 · · · vi ) = vi+1

• Out(σ, v0 ) = set of all plays starting in v0 that are played


according 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 v0 v1 v2 · · · is played according to σ if

∀i : vi ∈ VE → σ(v0 · · · vi ) = vi+1

• Out(σ, v0 ) = set of all plays starting in v0 that are played


according to σ (the possible outcomes of σ).
• A strategy for Eva is a winning strategy from vertex v0 if
Out(σ, v0 ) ⊆ Win
• A strategy for Adam (defined similarly) is a winning strategy
from 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 Eva
or 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 Eva
or 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 Eva
or 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 a
deterministic finite automaton that reads the colors of the play.
It depends on the current vertex and the state of the
automaton.

Infinite games and automata theory · Bertinoro, June 2009 15 / 84


Finite memory strategy – example
Muller game:

y1 x1
F = {{ x1 , y1 }, { x2 , y1 }, { x1 , x2 , y1 , y2 }}
y2 x2

x1 , y1 , y2 x2 , y1 , y2
x2
σ ( m0 , x1 ) = y1
m0 m1
x1 σ ( 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 x1
F = {{ x1 , y1 }, { x2 , y1 }, { x1 , x2 , y1 , y2 }}
y2 x2

y1
m0

x1 , y1 , y2 x2 , y1 , y2
x2
σ ( m0 , x1 ) = y1
m0 m1
x1 σ ( 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 x1
F = {{ x1 , y1 }, { x2 , y1 }, { x1 , x2 , y1 , y2 }}
y2 x2

y1 x1
m0 m0

x1 , y1 , y2 x2 , y1 , y2
x2
σ ( m0 , x1 ) = y1
m0 m1
x1 σ ( 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 x1
F = {{ x1 , y1 }, { x2 , y1 }, { x1 , x2 , y1 , y2 }}
y2 x2

y1 x1 y1
m0 m0 m0

x1 , y1 , y2 x2 , y1 , y2
x2
σ ( m0 , x1 ) = y1
m0 m1
x1 σ ( 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 x1
F = {{ x1 , y1 }, { x2 , y1 }, { x1 , x2 , y1 , y2 }}
y2 x2

y1 x1 y1 x1
m0 m0 m0 m0

x1 , y1 , y2 x2 , y1 , y2
x2
σ ( m0 , x1 ) = y1
m0 m1
x1 σ ( 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 x1
F = {{ x1 , y1 }, { x2 , y1 }, { x1 , x2 , y1 , y2 }}
y2 x2

y1 x1 y1 x1 y1
m0 m0 m0 m0 m0

x1 , y1 , y2 x2 , y1 , y2
x2
σ ( m0 , x1 ) = y1
m0 m1
x1 σ ( 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 x1
F = {{ x1 , y1 }, { x2 , y1 }, { x1 , x2 , y1 , y2 }}
y2 x2

y1 x1 y1 x1 y1 x2
m0 m0 m0 m0 m0 m0

x1 , y1 , y2 x2 , y1 , y2
x2
σ ( m0 , x1 ) = y1
m0 m1
x1 σ ( 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 x1
F = {{ x1 , y1 }, { x2 , y1 }, { x1 , x2 , y1 , y2 }}
y2 x2

y1 x1 y1 x1 y1 x2 y1
m0 m0 m0 m0 m0 m0 m1

x1 , y1 , y2 x2 , y1 , y2
x2
σ ( m0 , x1 ) = y1
m0 m1
x1 σ ( 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 x1
F = {{ x1 , y1 }, { x2 , y1 }, { x1 , x2 , y1 , y2 }}
y2 x2

y1 x1 y1 x1 y1 x2 y1 x1
m0 m0 m0 m0 m0 m0 m1 m1

x1 , y1 , y2 x2 , y1 , y2
x2
σ ( m0 , x1 ) = y1
m0 m1
x1 σ ( 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 x1
F = {{ x1 , y1 }, { x2 , y1 }, { x1 , x2 , y1 , y2 }}
y2 x2

y1 x1 y1 x1 y1 x2 y1 x1 y2
m0 m0 m0 m0 m0 m0 m1 m1 m0

x1 , y1 , y2 x2 , y1 , y2
x2
σ ( m0 , x1 ) = y1
m0 m1
x1 σ ( 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 x1
F = {{ x1 , y1 }, { x2 , y1 }, { x1 , x2 , y1 , y2 }}
y2 x2

y1 x1 y1 x1 y1 x2 y1 x1 y2 x1
m0 m0 m0 m0 m0 m0 m1 m1 m0 m0

x1 , y1 , y2 x2 , y1 , y2
x2
σ ( m0 , x1 ) = y1
m0 m1
x1 σ ( 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 x1
F = {{ x1 , y1 }, { x2 , y1 }, { x1 , x2 , y1 , y2 }}
y2 x2

y1 x1 y1 x1 y1 x2 y1 x1 y2 x1 y1
m0 m0 m0 m0 m0 m0 m1 m1 m0 m0 m0

x1 , y1 , y2 x2 , y1 , y2
x2
σ ( m0 , x1 ) = y1
m0 m1
x1 σ ( 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 Jurdziński)
Theorem (Büchi/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 Jurdziński)
Theorem (Büchi/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 Jurdziński)
Theorem (Büchi/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 most


3 red states, and if there is no yellow state, then there are
infinitely 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 regular
expression r (over the alphabet C)

a b C ∗ c( a + b)∗ cC ∗ + C ∗ d( a + b)∗ dC ∗

c d

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 regular
expression r (over the alphabet C)

a b C ∗ c( a + b)∗ cC ∗ + C ∗ d( a + b)∗ dC ∗

c d 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 regular
expression r (over the alphabet C)

a b C ∗ c( a + b)∗ cC ∗ + C ∗ d( a + b)∗ dC ∗

c d 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 b

c d

0 a, b

c d
d
a, b 1 2 a, b
c
c d

3 a, b, c, d

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 b a, 0 b, 0

c d c, 0 d, 0

0 a, b a, 1 b, 1 a, 2 b, 2
c d
d
a, b 1 2 a, b c, 1 d, 1 c, 2 d, 2
c
c d

3 a, b, c, d

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 b a, 0 b, 0

c d c, 0 d, 0

0 a, b a, 1 b, 1 a, 2 b, 2
c d
d
a, b 1 2 a, b c, 1 d, 1 c, 2 d, 2
c
c d

3 a, b, c, d

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 b a, 0 b, 0

c d c, 0 d, 0

0 a, b a, 1 b, 1 a, 2 b, 2
c d
d
a, b 1 2 a, b c, 1 d, 1 c, 2 d, 2
c
c d

3 a, b, c, d

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 b a, 0 b, 0

c d c, 0 d, 0

0 a, b a, 1 b, 1 a, 2 b, 2
c d
d
a, b 1 2 a, b c, 1 d, 1 c, 2 d, 2
c
c d

3 a, b, c, d

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 b a, 0 b, 0

c d c, 0 d, 0

0 a, b a, 1 b, 1 a, 2 b, 2
c d
d
a, b 1 2 a, b c, 1 d, 1 c, 2 d, 2
c
c d

3 a, b, c, d

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 b a, 0 b, 0

c d c, 0 d, 0

0 a, b a, 1 b, 1 a, 2 b, 2
c d
d
a, b 1 2 a, b c, 1 d, 1 c, 2 d, 2
c
c d

3 a, b, c, d

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 b a, 0 b, 0

c d c, 0 d, 0

0 a, b a, 1 b, 1 a, 2 b, 2
c d
d
a, b 1 2 a, b c, 1 d, 1 c, 2 d, 2
c
c d

3 a, b, c, d

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 b a, 0 b, 0

c d c, 0 d, 0

0 a, b a, 1 b, 1 a, 2 b, 2
c d
d
a, b 1 2 a, b c, 1 d, 1 c, 2 d, 2
c
c d

3 a, b, c, d

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 avoid
the set R of red states.
• Solve the safety game by an attractor construction:
• Compute stepwise the set Attr A ( R) of nodes from where Adam
can force a visit to a red state.
• For the nodes outside of Attr A ( R) Eva has a strategy to stay
outside (by the definition of Attr A ( R)).
• Translate the strategy for Eva (or for Adam) back to the original
game, 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 regular
expressions to deterministic finite automata (DFAs).
• For infinitary conditions (something happens infinitely/finitely
often) 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


Büchi automata
An ω -automaton is of the form A = ( Q, Σ, qin , ∆, Acc), where
Q, Σ, qin , ∆ are as for standard finite automata, and Acc defines the
acceptance condition.
Acceptance conditions:

• Büchi 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 infinitely
often is even.

Deterministic automata: as usual (at most one transition per state


and letter)

Infinite games and automata theory · Bertinoro, June 2009 24 / 84


Basic examples
Σ = { a, b}
• A nondeterministic Büchi automaton for “finitely many b”:
a, b a

q0 a q1

Infinite games and automata theory · Bertinoro, June 2009 25 / 84


Basic examples
Σ = { a, b}
• A nondeterministic Büchi automaton for “finitely many b”:
a, b a

q0 a q1
There is no deterministic Büchi automaton for this language

Infinite games and automata theory · Bertinoro, June 2009 25 / 84


Basic examples
Σ = { a, b}
• A nondeterministic Büchi automaton for “finitely many b”:
a, b a

q0 a q1
There is no deterministic Büchi automaton for this language
• A deterministic parity automaton for the same language:
a b
b
q0 q1
0 1
a

Infinite games and automata theory · Bertinoro, June 2009 25 / 84


The determinization problem
• Classical subset construction fails
a, b a
a, b
q0 q1
aaaaaa · · · and abababab · · · induce the same sequence of
sets:

a a a a
{ q0 } −
→ { q0 , q1 } −
→ { q0 , q1 } −
→ { q0 , q1 } −
→ { q0 , q1 } · · ·
a b a b

Infinite games and automata theory · Bertinoro, June 2009 26 / 84


The determinization problem
• Classical subset construction fails
a, b a
a, b
q0 q1
aaaaaa · · · and abababab · · · induce the same sequence of
sets:

a a a a
{ q0 } −
→ { q0 , q1 } −
→ { q0 , q1 } −
→ { q0 , q1 } −
→ { q0 , q1 } · · ·
a b a b

• A deterministic automaton has to store more information on the


possible runs of the Büchi automaton: Besides the states
reached some information on the visits to final states are is
necessary.

Infinite games and automata theory · Bertinoro, June 2009 26 / 84


The determinization problem
• Classical subset construction fails
a, b a
a, b
q0 q1
aaaaaa · · · and abababab · · · induce the same sequence of
sets:

a a a a
{ q0 } −
→ { q0 , q1 } −
→ { q0 , q1 } −
→ { q0 , q1 } −
→ { q0 , q1 } · · ·
a b a b

• A deterministic automaton has to store more information on the


possible runs of the Büchi automaton: Besides the states
reached some information on the visits to final states are is
necessary.
• The details are rather technical...
Infinite games and automata theory · Bertinoro, June 2009 26 / 84
Determinization
Theorem (McNaughton’66,Safra’88)
For each nondeterministic Büchi automaton with n states there is
an 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 Büchi automaton with n states there is
an equivalent deterministic parity automaton with 2O(n log n) states.

Deterministic parity automata are easy to complement: increase all


priorities by 1.

Corollary
The 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:

product parity game


( G, Win)
game G × AWin

• AWin is a determinisitic parity automaton for Win


• It can be seen as a transducer that transforms sequences from
C ω into sequences of priorities

Infinite games and automata theory · Bertinoro, June 2009 29 / 84


Game reductions
We use the following scheme:

product parity game


( G, Win)
game G × AWin
compute

positional
winning strategy

• AWin is a determinisitic parity automaton for Win


• It can be seen as a transducer that transforms sequences from
C ω into sequences of priorities

Infinite games and automata theory · Bertinoro, June 2009 29 / 84


Game reductions
We use the following scheme:

product parity game


( G, Win)
game G × AWin
compute

winning strategy translate positional


with memory AWin winning strategy

• AWin is a determinisitic parity automaton for Win


• It can be seen as a transducer that transforms sequences from
C ω 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 a
translation of Muller games to parity games.
• For this purpose we construct a deterministic parity automaton
that
• 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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
d b b d c b a b a c b a b a c
a
b
c
d

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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
d b b d c b a b a c b a b a c
a d
b a
c b
d 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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
d b b d c b a b a c b a b a c
a d b
b a d
c b a
d c c

• When a color is moved to the front (top), mark its previous


position
• This allows to infer from the LAR which colors are visited
infinitely 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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
d b b d c b a b a c b a b a c
a d b b
b a d d
c b a a
d c c c

• When a color is moved to the front (top), mark its previous


position
• This allows to infer from the LAR which colors are visited
infinitely 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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
d b b d c b a b a c b a b a c
a d b b d
b a d d b
c b a a a
d c c c c

• When a color is moved to the front (top), mark its previous


position
• This allows to infer from the LAR which colors are visited
infinitely 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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
d b b d c b a b a c b a b a c
a d b b d c
b a d d b d
c b a a a b
d c c c c a

• When a color is moved to the front (top), mark its previous


position
• This allows to infer from the LAR which colors are visited
infinitely 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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
d b b d c b a b a c b a b a c
a d b b d c b
b a d d b d c
c b a a a b d
d c c c c a a

• When a color is moved to the front (top), mark its previous


position
• This allows to infer from the LAR which colors are visited
infinitely 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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
d b b d c b a b a c b a b a c
a d b b d c b a
b a d d b d c b
c b a a a b d c
d c c c c a a d

• When a color is moved to the front (top), mark its previous


position
• This allows to infer from the LAR which colors are visited
infinitely 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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
d b b d c b a b a c b a b a c
a d b b d c b a b
b a d d b d c b a
c b a a a b d c c
d c c c c a a d d

• When a color is moved to the front (top), mark its previous


position
• This allows to infer from the LAR which colors are visited
infinitely 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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
d b b d c b a b a c b a b a c
a d b b d c b a b a
b a d d b d c b a b
c b a a a b d c c c
d c c c c a a d d d

• When a color is moved to the front (top), mark its previous


position
• This allows to infer from the LAR which colors are visited
infinitely 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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
d b b d c b a b a c b a b a c
a d b b d c b a b a c
b a d d b d c b a b a
c b a a a b d c c c b
d c c c c a a d d d d

• When a color is moved to the front (top), mark its previous


position
• This allows to infer from the LAR which colors are visited
infinitely 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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
d b b d c b a b a c b a b a c
a d b b d c b a b a c b
b a d d b d c b a b a c
c b a a a b d c c c b a
d c c c c a a d d d d d

• When a color is moved to the front (top), mark its previous


position
• This allows to infer from the LAR which colors are visited
infinitely 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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
d b b d c b a b a c b a b a c
a d b b d c b a b a c b a
b a d d b d c b a b a c b
c b a a a b d c c c b a c
d c c c c a a d d d d d d

• When a color is moved to the front (top), mark its previous


position
• This allows to infer from the LAR which colors are visited
infinitely 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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
d b b d c b a b a c b a b a c
a d b b d c b a b a c b a b
b a d d b d c b a b a c b a
c b a a a b d c c c b a c c
d c c c c a a d d d d d d d

• When a color is moved to the front (top), mark its previous


position
• This allows to infer from the LAR which colors are visited
infinitely 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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
d b b d c b a b a c b a b a c
a d b b d c b a b a c b a b a
b a d d b d c b a b a c b a b
c b a a a b d c c c b a c c c
d c c c c a a d d d d d d d d

• When a color is moved to the front (top), mark its previous


position
• This allows to infer from the LAR which colors are visited
infinitely 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 play
appeared (starting with an arbitrary order)
• The colors appearing finitely often will gather at one end
d b b d c b a b a c b a b a c
a d b b d c b a b a c b a b a c
b a d d b d c b a b a c b a b a
c b a a a b d c c c b a c c c b
d c c c c a a d d d d d d d d d

• When a color is moved to the front (top), mark its previous


position
• This allows to infer from the LAR which colors are visited
infinitely often

Infinite games and automata theory · Bertinoro, June 2009 31 / 84


Latest Appearance Record
• A latest appearance record (LAR) over C is an ordering of
the elements of C.
½ ¾
[d1 · · · dn , h] di ∈ C, di , d j for all i , j,
LAR(C ) =
and 1 ≤ h ≤ n

• LAR update:

δLAR ([d1 · · · dn , h], d) = [dd1 · · · di−1 di+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 has
changed in the last transition.
• The biggest part that changes infinitely often decides
• Example for F = {{b, d}, { a, b, c}}
d b b d c b a b a c b a b a c
a d b b d c b a b a c b a b a c
b a d d b d c b a b a c b a b a
c b a a a b d c c c b a c c c b
d c c c c a a d d d d d d d d d
7 7 5 1 4 7 5 7 3 3 6 6 6 3 3 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 automaton
ALAR = (LAR(C ), C, qin , δLAR , cLAR ) with
½
2h − 1 {d1 , . . . , dh } < F ,
cLAR ([d1 · · · dn , h]) =
2h { d1 , . . . , d h } ∈ F .

Theorem
For a Muller condition F over C the corresponding deterministic
parity automaton ALAR accepts precisely those α ∈ C ω that satisfy
the Muller condition F .

Infinite games and automata theory · Bertinoro, June 2009 34 / 84


From Muller to Parity Games

product parity game


Muller game ( G, F )
game G × ALAR
From Muller to Parity Games

product parity game


Muller game ( G, F )
game G × ALAR

compute

positional
winning strategy
From Muller to Parity Games

product parity game


Muller game ( G, F )
game G × ALAR

compute

winning strategy translate positional


with memory ALAR winning strategy

Infinite games and automata theory · Bertinoro, June 2009 35 / 84


From Muller to Parity Games

product parity game


Muller game ( G, F )
game G × ALAR

compute

winning strategy translate positional


with memory ALAR winning strategy

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 for
expressive 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 atomic
propositions.
Models: Infinite sequences of vectors of size n. Entry i of a vector
codes 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
Examples
p1 ∧ X ¬ p2
µ ¶µ ¶µ ¶µ ¶
1 1 0 0
···
1 0 1 0

Infinite games and automata theory · Bertinoro, June 2009 39 / 84


Examples
p1 ∧ X ¬ p2
µ ¶µ ¶µ ¶µ ¶
1 1 0 0
···
1 0 1 0

G p2 ∧ F p1
µ ¶µ ¶µ ¶ µ ¶µ ¶µ ¶µ ¶µ ¶
0 0 0 0 1 0 0 1
··· ···
1 1 1 1 1 1 1 1

Infinite games and automata theory · Bertinoro, June 2009 39 / 84


Examples
p1 ∧ X ¬ p2
µ ¶µ ¶µ ¶µ ¶
1 1 0 0
···
1 0 1 0

G p2 ∧ F p1
µ ¶µ ¶µ ¶ µ ¶µ ¶µ ¶µ ¶µ ¶
0 0 0 0 1 0 0 1
··· ···
1 1 1 1 1 1 1 1

F( p3 ∧ X(¬ p2 U p1 ))
        
0 0 1 0 0 0 1
1 0 · · · 0 0 0 0 1 · · ·
0 1 1 1 1 0 0

Infinite games and automata theory · Bertinoro, June 2009 39 / 84


From LTL to automata
Büchi automaton “guesses” valuations of the subformulas and
verifies 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
Büchi automaton “guesses” valuations of the subformulas and
verifies 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
¬ p2 U p1
X(¬ p2 U p1 )
¬ p1 ∧ X(¬ p2 U p1 )
F(¬ p1 ∧ X(¬ p2 U p1 ))

Infinite games and automata theory · Bertinoro, June 2009 40 / 84


From LTL to automata
Büchi automaton “guesses” valuations of the subformulas and
verifies 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 0
¬ p2 1
¬ p2 U p1 1
X(¬ p2 U p1 ) 0
¬ p1 ∧ X(¬ p2 U p1 ) 0
F(¬ p1 ∧ X(¬ p2 U p1 )) 1

Infinite games and automata theory · Bertinoro, June 2009 40 / 84


From LTL to automata
Büchi automaton “guesses” valuations of the subformulas and
verifies 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 0 1
¬ p2 1 0
¬ p2 U p1 1 0
X(¬ p2 U p1 ) 0 1
¬ p1 ∧ X(¬ p2 U p1 ) 0 1
F(¬ p1 ∧ X(¬ p2 U p1 )) 1 1

Infinite games and automata theory · Bertinoro, June 2009 40 / 84


From LTL to automata
Büchi automaton “guesses” valuations of the subformulas and
verifies 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 0 1 0
¬ p2 1 0 0
¬ p2 U p1 1 0 1
X(¬ p2 U p1 ) 0 1 1
¬ p1 ∧ X(¬ p2 U p1 ) 0 1 0
F(¬ p1 ∧ X(¬ p2 U p1 )) 1 1 1

Infinite games and automata theory · Bertinoro, June 2009 40 / 84


From LTL to automata
Büchi automaton “guesses” valuations of the subformulas and
verifies 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 0 1 0 1
¬ p2 1 0 0 1
¬ p2 U p1 1 0 1 1
X(¬ p2 U p1 ) 0 1 1 1
¬ p1 ∧ X(¬ p2 U p1 ) 0 1 0 1
F(¬ p1 ∧ X(¬ p2 U p1 )) 1 1 1 1

Infinite games and automata theory · Bertinoro, June 2009 40 / 84


From LTL to automata
Büchi automaton “guesses” valuations of the subformulas and
verifies 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 0 1 0 1 0
¬ p2 1 0 0 1 1
¬ p2 U p1 1 0 1 1 1
X(¬ p2 U p1 ) 0 1 1 1 0
¬ p1 ∧ X(¬ p2 U p1 ) 0 1 0 1 0
F(¬ p1 ∧ X(¬ p2 U p1 )) 1 1 1 1 ·

Infinite games and automata theory · Bertinoro, June 2009 40 / 84


From LTL to automata
Büchi automaton “guesses” valuations of the subformulas and
verifies 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 0 1 0 1 0 1 ···
¬ p2 1 0 0 1 1 0 ···
¬ p2 U p1 1 0 1 1 1 0 ···
X(¬ p2 U p1 ) 0 1 1 1 0 · ···
¬ p1 ∧ X(¬ p2 U p1 ) 0 1 0 1 0 · ···
F(¬ p1 ∧ X(¬ p2 U p1 )) 1 1 1 1 · · ···

Infinite games and automata theory · Bertinoro, June 2009 40 / 84


Games with LTL conditions
Theorem
• For each LTL formula ϕ one can construct an equivalent Büchi
automaton A ϕ of size exponential in ϕ. (Vardi/Wolper’86)
• For each LTL formula ϕ one can construct an equivalent
deterministic parity automaton of size doubly exponential in ϕ.
(determinization theorem)
• Finite games ( G, ϕ) with a winning condition given by an LTL
formula 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 for
sets 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 for
sets 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 can
only 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 for
sets 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 can
only occur on even positions.
• In general we consider formulas ϕ( X1 , . . . , Xn ) with n free set
variables defining ω -languages over {0, 1}n .

Infinite games and automata theory · Bertinoro, June 2009 42 / 84


Equivalence to automata
Theorem (Büchi’62)
A language L ⊆ ({0, 1}n )ω is definable by an S1S formula iff it can
be accepted by a nondeterministic Büchi automaton.

Proof:

• From formulas to automata use an inductive translation, based


on the closure properties of automata.
• From automata to formulas: Write a formula that describes the
existence of an accepting run.
Sets Xq for each state q code the positions of the run where
the automaton is in state q.

Infinite games and automata theory · Bertinoro, June 2009 43 / 84


Games with S1S conditions
Using determinization of Büchi automata and game reduction:

Theorem (Büchi/Landweber’69)
For finite games ( G, ϕ) with a winning condition given by an S1S
formula one can decide the winner and can compute a
corresponding winning strategy.

Complexity: The size of the memory required for such a winning


strategy cannot be bounded by function

n ¾
· ·2
2· k
22

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 game
by running a deterministic automaton along the plays.

product parity game


( G, Win)
game G × AWin

compute

winning strategy translate positional


with memory AWin winning strategy

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
input ∈ Σ1 circuit f 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


µ ¶µ ¶µ ¶µ ¶µ ¶
0 1 0 0 1
···
1 1 0 0 1

with the input signals in the first row, the output signals in the
second 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
µ ¶
0
0
µ ¶
0
1
µ ¶
1
0
µ ¶
1
1

Winning condition: Specification ϕ rewritten such that it only


considers 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 Büchi automaton with n states there is
an equivalent deterministic parity automaton with 2O(n log n) states.

automata on infinite
trees

games of infinite
duration

automata on infinite
words

Infinite games and automata theory · Bertinoro, June 2009 49 / 84


Why infinite trees?
• Discrete systems (circuits, protocols etc.) can be described by
transitions graphs.
• The possible behavior of such a system is captured by an
infinite tree: the unraveling of the transition graph.
• Properties of the system behavior can be specified as
properties 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
b b b b
a a a a b a 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}∗ → Σ.

t(ε) = b b
t (0) = a
t(01) = b
a b
b b b b t(110) = a

a a a a b a a a
..
.

Infinite games and automata theory · Bertinoro, June 2009 51 / 84


Automata on infinite trees

automata on automata on
finite words finite trees

automata on automata on
infinite words infinite 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
b b b b
a a a a b a 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′′ )
qin
Run of A : b
a b
b b b b
a a a a b a 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′′ )
qin
Run of A : b (qin , b, q1 , q2 ) ∈ ∆
q1 q2
a b
b b b b
a a a a b a 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′′ )
qin
Run of A : b (qin , b, q1 , q2 ) ∈ ∆
q1 q2
(q1 , a, q3 , q4 ) ∈ ∆ a b
q3 q4
b b b b
a a a a b a 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′′ )
qin
Run of A : b (qin , b, q1 , q2 ) ∈ ∆
q1 q2
(q1 , a, q3 , q4 ) ∈ ∆ a b (q2 , b, q5 , q6 ) ∈ ∆
q3 q4 q5 q6
b b b b
a a a a b a 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′′ )
qin
Run of A : b (qin , b, q1 , q2 ) ∈ ∆
q1 q2
(q1 , a, q3 , q4 ) ∈ ∆ a b (q2 , b, q5 , q6 ) ∈ ∆
q3 q4 q5 q6
b b b b
a a a a b a a a
..
.
• Priority function pri : Q → N
• Run accepting if on each path the maximal priority appearing
infinitely 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 only
finitely many b
• Use parity word automaton and run it on all branches
a b
b
q0 q1
0 1
a

Infinite games and automata theory · Bertinoro, June 2009 54 / 84


Example
• Trees over { a, b} such that on each infinite path there are only
finitely many b
• Use parity word automaton and run it on all branches
a b
b
q0 q1
0 1
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 only
finitely many b
• Use parity word automaton and run it on all branches
a b
b
q0 q1
0 1
a

• Required transitions: (q0 , a, q0 , q0 ), (q0 , b, q1 , q1 ), (q1 , a, q0 , q0 ),


and (q1 , b, q1 , q1 )
• There is no (nondeterministic) Büchi tree automaton for this
language.

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 one
node 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, Büchi, etc.
automata.
• The LAR construction can be used to transform Muller tree
automata into parity tree automata.
• Call a language of infinite trees regular if it can be accepted by
a parity tree automaton.

Infinite games and automata theory · Bertinoro, June 2009 56 / 84


Basic closure properties
Proposition
The class of regular languages of infinite trees is closed under
union, intersection, and projection (relabeling).

Infinite games and automata theory · Bertinoro, June 2009 57 / 84


Basic closure properties
Proposition
The class of regular languages of infinite trees is closed under
union, intersection, and projection (relabeling).

Proof:

• Union, intersection: A standard product construction yields a


Muller automaton over pairs of priorities.
• Projection h : Σ → Γ: simply apply the projection to the labels
in the transitions.

Infinite games and automata theory · Bertinoro, June 2009 57 / 84


Basic closure properties
Proposition
The class of regular languages of infinite trees is closed under
union, intersection, and projection (relabeling).

Proof:

• Union, intersection: A standard product construction yields a


Muller automaton over pairs of priorities.
• Projection h : Σ → Γ: simply apply the projection to the labels
in 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 by


constructing a run.
• Player S tries to show the contrary by selecting a path on
which 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 by


constructing a run.
• Player S tries to show the contrary by selecting a path on
which 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 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

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
Lemma
A tree t is not in T (A) iff
there is a positional winning strategy for S
in 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})
|ÃÃÃÃÃÃÃÃÃÃÃÃÃ{zÃÃÃÃÃÃÃÃÃÃÃÃÃ}
Γ

Infinite games and automata theory · Bertinoro, June 2009 63 / 84


Strategies for S

..
.

Postional strategy for S coded as


σ : {0, 1}∗ → (∆ → {0, 1})
|ÃÃÃÃÃÃÃÃÃÃÃÃÃ{zÃÃÃÃÃÃÃÃÃÃÃÃÃ}
Γ
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 form
t × σ, 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 the
labels (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 not
satisfy the acceptance condition

Infinite games and automata theory · Bertinoro, June 2009 65 / 84


Construction of Astrat

..
.
Astrat has to check: the paths following the blue edges do not
satisfy 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

..
.

• Construct a nondeterministic Büchi automaton that guesses a


blue path and accepts if it does satisfy the acceptance
condition of A.
• Determinize and complement, and obtain a deterministic parity
path
word automaton Astrat 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
path
• Run Astrat along each branch:

path
Astrat : δ(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 in
membership game
• Positional determinacy for parity games yields: t not accepted
iff S has positional winning strategy
• Construct an automaton that checks if a given strategy of
S is winning.
• This construction is based on the determinization of
ω -automata.
• Obtain the desired automaton by projection (removing the
strategy 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 for
the 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 emptiness
problem 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 to


construct an accepting run on t
• In the emptiness game, C’s task is to construct a
tree 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 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 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 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 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 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 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 position
q0 or q1
• Winning condition for C: acceptance condition of A

This is a finite game graph.

Lemma
C has a winning strategy in the emptiness game for A iff
T (A) , ∅

Infinite games and automata theory · Bertinoro, June 2009 74 / 84


Example automaton
q1 a
(q1 , a, q1 , q+ ) q1
(q1 , a, q2 , q+ ) q1
(q2 , a, q1 , q1′ ) q2
a
(q1′ , a, q+ , q1′ ) q1 a
(q1′ , b, q+ , q+ ) q1 q1′
(q+ , a, q+ , q+ ) q2
a a
(q+ , b, q+ , q+ ) q1′
q1 a b
q1′ q1′
c(q1 ) = c(q1′ ) = 1
c ( q2 ) = c ( q + ) = 2 a
q1′ b
q1′

Infinite games and automata theory · Bertinoro, June 2009 75 / 84


Emptiness game

1
q1

(q1 , a, q1 , q+ ) (q1 , a, q2 , q+ )

2
q2 (q2 , a, q1 , q1′ )
2
q+
(q1′ , a, q+ , q1′ )
1
q1′
(q+ , a, q+ , q+ ) (q+ , b, q+ , q+ ) (q1′ , b, q+ , q+ )

Infinite games and automata theory · Bertinoro, June 2009 76 / 84


Emptiness game

1
q1

(q1 , a, q1 , q+ ) (q1 , a, q2 , q+ )

2
q2 (q2 , a, q1 , q1′ )
2
q+
(q1′ , a, q+ , q1′ )
1
q1′
(q+ , a, q+ , q+ ) (q+ , b, q+ , q+ ) (q1′ , 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 the
language

(q1 , (q1 , a, q2 , q+ ))

0
0
1

(q2 , (q2 , a, q1 , q1′ ))


(q+ , (q+ , a, q+ , q+ )) 1

0,1
0,1 (q1′ , (q1′ , b, q+ , q+ ))

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 a
finite 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 positional


determinacy of parity games is used for the correctness
proof of the construction.
The actual construction is based on determinization of word
automata.
• The emptiness test directly reduces to a game. A positional
winning strategy for C yields a regular tree in the
language.

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?

Proposition
The problem of finding the winner in a game ( G, Win), where Win
is defined by a nondeterministic pushdown ω -automaton is
undecidable.

Infinite games and automata theory · Bertinoro, June 2009 81 / 84


Pushdown games
Assume Win is specified by a deterministic pushdown
ω -automaton (with parity condition):
Taking the product of G with the pushdown automaton results in a
parity game on a pushdown graph. These games can be solved
and winning strategies can be implemented by pushdown
automata.
Theorem (Walukiewicz’96)
Parity games on pushdown graphs can be solved in exponential
time and winning strategies can be implemented by pushdown
automata.

Corollary
The problem of deciding the winner in a game ( G, Win) for a finite
game graph, where Win 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 (infinite
set of vertices, computable edge relation and coloring).
For recursive parity games winning strategies need not be
computable:
i−1 i i+1
··· ···

.. .. .. .. .. .. .. .. .. ..
. . . . . . . . . .

.. ..
Eva wins if she visits . .
finitely many green ver- Switch at level k if Turing ma-
tices chine number i halts after k
steps for the empty input
.. ..
. .
Infinite games and automata theory · Bertinoro, June 2009 83 / 84
Summary
1. Solving infinite games with the help of automata: Extend the
game by running a deterministic automaton along the plays
• Determinization: nondeterministic Büchi → 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

You might also like