Mean-Payoff Games and The Max-Atom Problem
Mean-Payoff Games and The Max-Atom Problem
February 3, 2010
Abstract
The max-atom problem asks for the satisfiability of a system of inequality constraints of the
type x ≤ max(y, z) + c, where x, y and z are integer variables, and c is an integer constant.
We observe that this problem is polynomial-time equivalent to solving mean-payoff games, and
therefore at least as hard as solving parity games.
1 Introduction
A max-atom is an inequality constraint of the form x ≤ max(y, z) + c, where x, y and z are
variables ranging over the integers, and c is an integer constant called offset. Motivated by potential
applications in hardware verification, Bezem, Nieuwenhuis and Rodrı́guez-Carbonell [1] introduced
the max-atom problem: given a system of max-atoms, is there an assignment of integer values to
the variables that satisfies all inequalities? The problem contains as a special case the satisfiability
of systems of inequalities of the form x ≤ y + c. This particular case is a well-studied fragment of
linear arithmetic called difference logic that has several applications.
Unlike in the special case of difference logic, a polynomial-time algorithm for the max-atom
problem is not known. The authors of [1] gave strong evidence that the problem is not NP-hard by
showing that it belongs to NP ∩ co-NP. They also gave evidence that the problem might not be
easy by showing that it is polynomial-time equivalent to a 30-year old problem in control theory,
for which polynomial-time algorithms are not known either. This gives the max-atom problem an
interesting status shared only by a few other problems. Bezem at al. mention a possible connection
between the max-atom problem and solving simple stochastic games. This is a well-known path-
forming game on graphs, whose complexity is also between P and NP ∩ co-NP [3]. The problem
of solving parity games is another famous example with similar complexity status that has many
applications in logic and automata.
We show in this note that the max-atom problem is polynomial-time equivalent to solving mean-
payoff games. This is yet another path-forming game, introduced by Ehrenfeucht and Mycielsky
[5], whose complexity is known to lie between parity and simple stochastic games. A path-forming
game comes specified by a directed graph G = (V, E) in which every vertex has positive outdegree,
and by two disjoint sets of vertices V0 and V1 . The game is played by two players called 0 and 1
and starts at an initial vertex u0 . After t ≥ 0 moves have been made, if ut belongs to Vi , with
i ∈ {0, 1}, player i chooses ut+1 in such a way that (ut , ut+1 ) belongs to E. On the other hand, if
ut belongs to V − (V0 ∪ V1 ), it is nature who chooses the next vertex ut+1 , uniformly at random
1
among all those for which (ut , ut+1 ) belongs to E. When all vertices of V belong to either V0 or V1
the game is called deterministic. Otherwise it is called stochastic.
Mean-payoff games are deterministic. The edges are labeled by an integer weight assignment
w : E → {−W, . . . , 0, . . . , W }. The goal of player 0 is to maximize the long-run average
t
1X
lim inf w(ui−1 , ui )
t→∞ t
i=1
of the weight of the walk. The goal of player 1 is to minimize it. Parity games are also deterministic.
In this case the vertices a labeled by an integer priority assignment p : V → {0, . . . , k − 1}. The
goal of player 0 is to ensure that the largest priority that appears infinitely often in p(u0 ), p(u1 ), . . .
is even. The goal of player 1 is to ensure that it is odd. Finally, in simple stochastic games, every
vertex in V − (V0 ∪ V1 ) has outdegree two and the goal of the players is to maximize the probability
of reaching corresponding target vertices t0 and t1 . In all three cases, solving the game means
determining whether player 0 has a strategy that ensures her a win. In the case of mean-payoff
games, a win is a non-negative long-run average. In the case of parity games, a win is an even
largest ultimate priority. And in the case of simple stochastic games, a win is getting probability
at least 1/2 of reaching the target vertex t0 .
Jurdziński [6] reduces solving parity games to solving mean-payoff games. Zwick and Paterson
[9] reduce solving mean-payoff games to solving simple stochastic games. Thus, mean-payoff games
lie in between. The correctness of both these reductions rely on a key property of the games which
states that the optimal strategies for the players can be chosen memoryless. This means that the
choice made by the players at each stage depends only on the current vertex ut , and not on the path
that led to ut . This property of games, called memoryless determinacy, was first established for
mean-payoff games by Ehrenfeucht and Mycielsky [5] and has been revisited several times (see, for
example, [2]). It is the key step in showing that the complexity of the problems is in NP ∩ co-NP.
Here we show that the max-atom problem and mean-payoff games are polynomial-time equivalent
without relying on memoryless determinacy. In fact, our proof shows that general strategies can be
replaced by memoryless ones as a consequence of a simple lemma on the structure of unsatisfiable
max-atom systems. This structure lemma was introduced by Bezem et al. to show that their
problem is in NP ∩ co-NP. Here we offer a refined version of their lemma with an equally simple
proof.
2 Problems
MAX ATOM: A max-atom inequality has the form z0 ≤ max(z1 , z2 ) + c, where z0 , z1 and z2 are
variables ranging over the integers Z, and c is an integer constant in Z. The problem MAX ATOM
is the following:
2
(x1 , . . . , xn ) 7→ (F1 (x1 , . . . , xn ), . . . , Fn (x1 , . . . , xn )), where each Fi is a max or min offset operator
of the same arity n. The problem MAX MIN OFFSET OPERATOR is this:
Max-min offset operators, exactly as defined here, are the objects of study in a subarea of
control and decision theory called max-plus algebra (see [8]). The connection between max-min
offset operators and mean payoff games, as we will use it later, appears in [9] and has been revisited
more recently by Dhingra and Gaubert [4].
3 Reductions
MAX ATOM ≤ MAX MIN OFFSET OPERATOR:
To every system of max-atom inequalities S we associate a system of operators FS . Let Z denote the
set of variables of S, and let E denote the set of inequalities of S. We use I = Z ∪ E as an index set
for tuples as in (xi : i ∈ I). For every z in Z, let Ez denote the set of inequalities z0 ≤ max(z1 , z2 )+c
in E with z0 = z. To every variable z in Z we associate a min operator Fz : ZI → Z defined by
(xi : i ∈ I) 7→ min {xe : e ∈ Ez }. To every e in E of the form z0 ≤ max(z1 , z2 ) + c we associate a
max operator Fe : ZI → Z defined by (xi : i ∈ I) 7→ max {xz1 + c, xz2 + c}. Finally, FS : ZI → ZI
is the system (Fi : i ∈ I).
3
MEAN-PAYOFF GAME ≤ MAX MIN OFFSET OPERATOR:
To every mean-payoff game (G, V0 , V1 , w) we associate a system of operators FG,V0 ,V1 ,w . Let G =
(V, E) and let n = |V |. For every u ∈ V , let Fu : ZV → Z be the operator defined by (xi : i ∈ V ) 7→
Mu {xv + w(u, v) : (u, v) ∈ E}, where Mu = max if u ∈ V0 and Mu = min otherwise. Finally, let
FG,V0 ,V1 ,w = (Fi : i ∈ V ).
Note the linear recursion on |Ii | underlying this construction. For every i for which Mi = min,
we want to impose the constraint zi ≤ min {zj + ci,j : j ∈ Ii }. If Ii = {j0 }, this is simply
zi ≤ max(zj0 , zj0 ) + ci,j0 . If Ii = {j0 , . . . , jh } with h ≥ 1, we impose the system
4 Proofs
MAX ATOM ≤ MAX MIN OFFSET OPERATOR:
It follows directly from the definition of the reduction that S is satisfiable if and only if x ≤ FS (x)
is satisfiable.
Let GF = (V, E) be the game graph produced by the reduction. We need to show that x ≤ F (x)
is satisfiable if and only if ν(u) ≥ 0 for every u ∈ V . The forward implication is proved in the
following lemma:
Proof. Let x ∈ Zn be such that x ≤ F (x). For every i for which Fi is a max operator, let s(i) ∈ Ii
be such that
xs(i) + ci,s(i) = max {xj + ci,j : j ∈ Ii }. (1)
By the construction of GF , we may think of s as a (memoryless) strategy s0 for player 0. We claim
that for every u ∈ V and every strategy s1 for player 1, memoryless or not, the outcome of the play
4
determined by u, s0 and s1 is non-negative. Fix u and s1 and let u0 , u1 , . . . be the play. In order
to simplify notation, write yt for xut . We want to prove that the following inequality holds:
t
X
y0 ≤ yt + w(ui−1 , ui ). (2)
i=1
Let Et denote statement (2). We will prove that Et holds by induction on t. The base case t = 0
is obvious because the sum on the right is vacuous. Assume now that t ≥ 0 and that Et holds; we
prove Et+1 . Suppose first that ut belongs to V1 . From the facts that x ≤ F (x) and that (ut , ut+1 )
is an edge of the game graph we get
Combining Et and (3) we get Et+1 . Suppose next that ut belongs to V0 . From x ≤ F (x) and the
choice in (1) we get
Combining Et and (4) we get Et+1 . This completes the proof of (2). Dividing through by t and
taking lim inf on both sides we conclude that
t
!
1 1 1X
lim inf y0 ≤ lim inf yt + w(ui−1 , ui ) .
t→∞ t t→∞ t t
i=1
As y0 is a fixed integer, the lim inf on the left is 0. As yt is bounded from below by minv∈V xv
and from above by maxv∈V xv , the lim inf on the right is not affected by the vanishing term 1t yt .
Therefore, the term on the right is precisely ν(u, s0 , s1 ) which means that the outcome of the play
is non-negative.
Next we prove the backward implication. For this we will need some preliminary facts. Let
F = (F1 , . . . , Fn ), with Fi given by Mi {xj + ci,j : j ∈ Ii } where Mi ∈ {min, max}. We will need
the following notation:
1. MIN = {k : Mk is min},
2. MAX = {k : Mk is max},
3. MIN+ = {k : Mk is min and |Ik | ≥ 2},
4. MAX+ = {k : Mk is max and |Ik | ≥ 2}.
For k ∈ {1, . . . , n} for which |Ik | ≥ 2 and ℓ ∈ Ik , we write F k,ℓ for the operator that agrees with F
in every component except in Fk where it is defined as Mk {xj + ck,j : j ∈ Ik − {ℓ}}. The proof of
the following lemma is basically the same as the proof of Lemma 4 in [1].
5
Proof. The case k ∈ MAX+ is easier: every solution to x ≤ F k,ℓ (x) is also a solution to x ≤ F (x)
simply because max S ≤ max T whenever S ⊆ T . We proceed with the case k ∈ MIN+ . For
every ℓ ∈ Ik , let xℓ = (xℓ1 , . . . , xℓn ) be such that xℓ ≤ F k,ℓ (xℓ ). Since adding a fixed integer to every
component of a solution yields another solution, we may assume that xℓk1 = xℓk2 for every ℓ1 , ℓ2 ∈ Ik .
Let x = (x1 , . . . , xn ) be defined as xi = max {xℓi : ℓ ∈ Ik }. In particular xk = xℓk for every ℓ ∈ Ik ,
and xi = xℓi for some ℓ ∈ Ik whenever i 6= k. We claim that x is a solution to x ≤ F (x). For i 6= k,
let ℓ ∈ Ik be such that xi = xℓi and note that
For i = k we have
xk = xℓk ≤ min {xℓj + ck,j : j ∈ Ik − {ℓ}} ≤ min {xj + ck,j : j ∈ Ik − {ℓ}} (6)
for every ℓ ∈ Ik . Because |Ik | ≥ 2, every j ∈ Ik belongs to some Ik − {ℓ}, which means that the
inequality xk ≤ min {xj + ck,j : j ∈ Ik } is also true.
The second fact we need is a characterization of unsatisfiable systems without min operators.
Let us also note that when MIN+ = ∅, we may think of the system as not having min operators.
Indeed, if |Ii | = 1, the inequalities xi ≤ min {xj + ci,j : j ∈ Ii } and xi ≤ max {xj + ci,j : j ∈ Ii } are
equivalent.
Lemma 3. Let F be a system without min operators. The following are equivalent:
1. x ≤ F (x) is unsatisfiable,
2. there exists a vertex u in GF such that every cycle reachable from u in GF is negative.
Proof. The proof that 2. implies 1. is similar to the proof of Lemma 1. We prove the contrapositive.
Assume that x = (x1 , . . . , xn ) satisfies x ≤ F (x). For every i ∈ {1, . . . , n}, let s(i) ∈ Ii be such
that
xs(i) + ci,s(i) = max {xj + ci,j : j ∈ Ii }. (7)
Then, for every vertex u in GF , the sequence u0 , u1 , . . . defined by u0 = u and ut+1 = s(ut ) is a
walk in GF that reaches a cycle. By construction we have xut ≤ xut+1 + cut ,ut+1 . Adding up all
inequalities for the vertices of the cycle we get that its weight is non-negative.
The proof that 1. implies 2. is by induction on n, the arity of F . The base case is n = 1, which
means that F consists of a single inequality x1 ≤ max {x1 + c1,1 }. As F is unsatisfiable, necessarily
c1,1 < 0. But GF consists of a single vertex with a loop labelled by c1,1 , so the only cycle reachable
from 1 is negative. Suppose now that n > 1 and that the claim holds for systems of smaller arities.
Let Fn be of the form max {xj + cn,j : j ∈ In }. We consider two cases: n 6∈ In and n ∈ In .
In case n 6∈ In , let H be the system obtained from F by replacing every occurrence of xn by
max {xj + cn,j : j ∈ In }. Formally, this is done as follows. For every i ∈ {1, . . . , n − 1} such that
n ∈ Ii , let di,j = max(ci,n + cn,j , ci,j ) for every j ∈ Ii ∩ In , and let di,j = ci,j for every j ∈ Ii − In . For
every i ∈ {1, . . . , n − 1} such that n 6∈ Ii , let di,j = ci,j for every j ∈ Ii . Then H = (H1 , . . . , Hn−1 )
where Hi is defined as max {xj + di,j : j ∈ Ii }. We claim that if H were satisfiable, then F would
also be satisfiable. For a proof, take a satisfying assignment for H and extend it to a satisfying
assignment for F by setting xn = max {xj + cn,j : j ∈ In }. Since n 6∈ In , this is well defined and it
satisfies F .
6
We continue with the proof in the case n 6∈ In . It follows from the above that H is unsatisfiable.
Its arity is n − 1. By induction hypothesis, there exists a vertex u in GH for which all cycles
reachable from u in GH are negative. We claim that the same u works for GF . For a proof, let
u0 , u1 , . . . , ur be a path to a cycle in GF starting at u. In other words, u0 = u, and all ui are
different except ur = us for some s ≤ r. If ui 6= n for every i ∈ {1, . . . , r}, then this path to a
cycle also appears in GH with the same or bigger weight. Since the weight of this cycle in GH is
negative, its weight in GF is also negative which is what we want. If ui = n for some i ∈ {1, . . . , r},
we distinguish two cases: ur = us = n and ur = us 6= n. In case ur = us = n, we have 1 ≤ s ≤ r − 1
because n 6∈ In . But then
u0 , . . . , us−1 , us+1 , . . . , ur−1 , us+1 (8)
is a path to a cycle in GH . The weight of the edge (us−1 , us+1 ) in GH is at least as big as the sum
of the weights of the edges (us−1 , us ) and (us , us+1 ) in GF , and the weight of the edge (ur−1 , us+1 )
in GH is at least as big as the sum of the weights of the edges (ur−1 , ur ) and (ur , us+1 ). It follows
that the weight of the cycle in GF is bounded by the weight of the cycle in GH . This is negative,
which is what we want. Finally, in case ur = us 6= n, we have 1 ≤ i ≤ r − 1 and
is a path to a cycle in GH . The weight of the edge (ui−1 , ui+1 ) is at least as big as the sum of the
weights of the edges (ui−1 , ui ) and (ui , ui+1 ) in GF . Again it follows that the weight of the cycle
in GF is bounded by the weight of the cycle in GH , which is negative.
Next the case n ∈ In . If cn,n < 0 and |In | = 1, we let u = n and we are done: the only cycle
reachable from u in GF is negative. If cn,n < 0 and |In | > 1, we can apply the argument of the
previous case to F n,n and get a vertex u in GF n,n such that all cycles reachable from u in GF n,n
are negative. But then, since the only difference between GF and GF n,n is a negative loop on n,
all cycles reachable from u in GF are also negative. If cn,n ≥ 0, we need to proceed differently.
First, let H be the system obtained by trivializing every inequality of F in which xn occurs in the
right-hand side. Formally this is done as follows. For every i ∈ {1, . . . , n − 1}, if n ∈ Ii let Ji = {i}
and di,i = 0, and if n 6∈ Ii let Ji = Ii and di,j = ci,j for every j ∈ Ii . Then H = (H1 , . . . , Hn−1 )
where Hi is defined as max {xj + di,j : j ∈ Ji }. We claim that if H were satisfiable, then F would
also be satisfiable. For a proof, take a satisfying assignment for H and extend it to a satisfying
assignment for F by setting xn = max {xi − ci,n : i ∈ Cn }, where Cn is the set of i ∈ {1, . . . , n − 1}
such that n ∈ Ii .
We continue with the proof in the case n ∈ In . It follows from the above that H is unsatisfiable.
Its arity is n − 1. By induction hypothesis, there exists a vertex u in GH for which all cycles
reachable from u in GH are negative. We claim that the same u works for GF . To see this, note
that no i ∈ Cn is reachable from u in GH since otherwise u would reach a non-negative cycle in
GH : the loop with weight 0 on i. But then n is not reachable from u in GF because every path to
n must go through some i in Cn . It follows that all the cycles reachable from u in GF are already
in GH and therefore they are negative.
Proof. We prove the contrapositive. Suppose that x ≤ F (x) is unsatisfiable. Repeated application
of part 1 of Lemma 2 until MIN+ = ∅ gives, for every i ∈ MIN, a vertex s(i) ∈ Ii such that the
7
system
xi ≤ max {xj + ci,j : j ∈ Ii } if i ∈ MAX
(10)
xi ≤ xs(i) + ci,s(i) if i ∈ MIN
is unsatisfiable. By the construction of GF , we may think of s as a (memoryless) strategy s1 for
player 1. We will show that there exists a vertex u ∈ V such that, for every strategy s0 for player
0, memoryless or not, the outcome of the game determined by u, s0 and s1 is negative. To define
u, let H be the system in (10). Note that H may be thought as a min-free system. Let u be the
vertex given by Lemma 3 applied to H.
Fix now a strategy s0 for player 0. We will show that ν(u, s0 , s1 ) < 0. Let u0 , u1 , . . . be the play
determined by u, s0 and s1 . Let t be an integer and let p = u0 . . . ut denote the first t + 1 vertices
of the play. This forms a walk in GH . If this walk is longer than the number of vertices |V | of GH ,
some vertex repeats in p. Let i0 be minimal such that ui0 repeats, and let j0 be minimal such that
j0 > i0 and uj0 = ui0 . Then we define another walk C(p) by contracting the cycle ui0 . . . uj0 in p.
In other words,
C(p) = u0 . . . ui0 −1 uj0 . . . ut .
If the walk C(p) is longer than the number of vertices, we repeat and get another walk C(C(p)),
obtained from C(p) by contracting its first cycle. Continuing this way, we produce a sequence
of walks p0 , p1 , . . . , pm , where p0 = p and pi+1 = C(pi ), until |pm | ≤ |V |. The lengths satisfy
|pi | ≤ |pi+1 | + |V | for i ∈ {0, . . . , m − 1}. Since |p0 | ≥ t + 1 and |pm | ≤ |V |, we get
1
m ≥ (t + 1) − 1. (11)
|V |
Note also that every pi starts at u.
Let Wi stand for the weight of pi . For i ∈ {0, . . . , m − 1}, let Ri be the weight of the cycle
removed from pi . Note that Wi = Wi+1 + Ri . Therefore,
m−1
X m−1
X
W0 = Wm + Ri ≤ |V |W + Ri , (12)
i=0 i=0
where the inequality follows from |pm | ≤ |V | and the fact that all weights are bounded by W . Note
also that each Ri is negative by the choice of u because it is the weight of a cycle reachable from u
in GH .
We continue with the proof that the outcome of the play is negative. We have:
t m−1
X X 1
w(ui−1 , ui ) ≤ |V |W + Ri ≤ |V |W − m ≤ |V |W − (t + 1) + 1, (13)
|V |
i=1 i=0
where the first inequality comes from (12), the second inequality comes from the fact that Ri is a
negative integer for every i ∈ {0, . . . , m − 1}, and the last inequality comes from (11). Dividing
through by t and taking lim inf on both sides we get
t
1X 1 1 1 1
lim inf w(ui−1 , ui ) ≤ lim inf |V |W − 1 + + . (14)
t→∞ t t→∞ t t |V | t
i=1
The lim inf on the right is not affected by the vanishing terms 1t |V |W and 1t . On the other hand,
the middle term approaches − |V1 | as t grows, which means that the right-hand side is negative.
Since the left-hand side is precisely ν(u, s0 , s1 ), the proof is complete.
8
MEAN-PAYOFF GAME ≤ MAX MIN OFFSET OPERATOR:
The correctness of this reduction follows from the fact that if we start with a game G, apply
the reduction to get a system of operators FG , and then the reduction back into a game GFG , we
end up with the same game G we started with (up to isomorphism). Therefore, ν(u) ≥ 0 for every
u in G if and only if ν(u) ≥ 0 for every u in GFG , and by the above, if and only if FG is satisfiable.
5 Remarks
It is worth noting that the proof of Lemma 1 shows something stronger than it states. It shows
that if x ≤ F (x) is satisfiable, then not only ν(u) ≥ 0 for every u, but moreover there exists a
single memoryless strategy for player 0 that achieves non-negative value at every vertex. Similarly,
the proof of Lemma 4 also shows that if x ≤ F (x) is unsatisfiable, then not only ν(u) < 0 for
some u, but moreover there exists a memoryless strategy for player 1 that forces negative value
at that vertex, and even lim supt→∞ 1t ti=1 w(ui−1 , ui ) is negative. Following along these lines,
P
it is possible to rederive the memoryless determinacy of mean-payoff games in the form originally
stated by Ehrenfeucht and Mycielsky. Conversely, if we used memoryless determinacy as a black-
box, our proofs would get even simpler at the expense of not being self-contained. In personal
communication, Bezem et al. informed us that, according to one of the referees of [1], the general
theory of max-min function would also give alternative proofs.
A different point worth noting is that the version of the decision problem for mean-payoff games
considered here is equivalent to several other variants. For example, we might want to determine
whether ν(u) ≥ 0 for a given starting vertex u instead of whether ν(u) ≥ 0 for every starting vertex
u. Or whether ν(u) ≥ ν for a given starting vertex u and a given rational value ν, etc. All these
versions are polynomial-time equivalent to MEAN-PAYOFF GAME through standard reductions.
On the other hand, the standard reduction from parity games to mean-payoff games produces an
instance of mean-payoff games where the goal is to determine if the values are negative or positive.
This is the reduction that assigns weight (−|V |)p(v) to every edge going out of v, where p(v) is the
priority assigned to v in the parity game. The corresponding max-atom instance gets exponentially
large offsets (polynomially-sized when represented in binary) with some special structure. While we
do not see a straightforward way of exploiting this structure to speed up the pseudo-polynomial-time
algorithm from [1] for this special case of the max-atom problem, it might be worth turning this
around and interpreting the known subexponential algorithms for parity games [7] in the language
of the max-atom problem with the hope of generalizing them.
9
References
[1] M. Bezem, R. Nieuwenhuis, and E. Rodrı́guez-Carbonell. The max-atom problem and its
relevance. In Proceedings of the 15th International Conference on Logic for Programming,
Artificial Intelligence and Reasoning (LPAR), pages 47–61. Springer-Verlag, 2008.
[2] H. Björklund, S. Sandberg, and S. Vorobyov. Memoryless determinacy of parity and mean
payoff games: a simple proof. Theoretical Computer Science, 310:365–378, 2004.
[3] A. Condon. The complexity of stochastic games. Information and Computation, 96(2):203–224,
1992.
[4] V. Dhingra and S. Gaubert. How to solve large scale deterministic games with mean payoff by
policy iteration. In Proceedings of the 1st International Conference on Performance Evaluation
Methodologies and Tools, page 12, 2006.
[5] A. Ehrenfeucht and J. Mycielsky. Positional strategies for mean payoff games. International
Journal of Game Theory, 8(2):109–113, 1979.
[6] M. Jurdziński. Deciding the winner in partity games is in UP ∩ co-UP. Information Processing
Letters, 68:119–124, 1998.
[7] M. Jurdziński, M. Paterson, and U. Zwick. A deterministic subexponential algorithm for solving
parity games. SIAM Journal on Computing, 38(4):1519–1532, 2008.
[8] G. J. Olsder. Eigenvalues of dynamic min-max systems. Journal of Discrete Event Dynamic
Systems, 1:177–207, 1991.
[9] U. Zwick and M. Paterson. The complexity of mean payoff games on graphs. Theoretical
Computer Science, 158:343–359, 1996.
10