the computational complexity columnarvind/columns/column116.pdf · 2015-10-20 · torial games,...

37

Upload: others

Post on 25-Jul-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

The Computational Complexity

Column

by

V. Arvind

Institute of Mathematical Sciences, CIT Campus, Taramani

Chennai 600113, India

[email protected]

http://www.imsc.res.in/~arvind

Combinatorial games are a fascinating topic, as both recreational and serious

mathematics. One aspect of the mathematical theory deals with assigning values

that quantify positions in games. This has lead to deep connections between

numbers and games and a rich algebraic theory as discovered by Conway.

A natural algorithmic question that arises is the following: given a position in

a combinatorial game as input, determine which player has a winning strategy.

In their article, Steve Fenner and John Rogers give an excellent self-contained

introduction to the computational complexity of combinatorial games. They

�rst explain the basic theory of combinatorial games, with focus on poset games.

With this background, they survey the complexity-theoretic results in this �eld

and discuss several open questions.

1

Page 2: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

Combinatorial Game Complexity:

An Introduction with Poset Games

Stephen A. Fenner∗ John Rogers†

Abstract

Poset games have been the object of mathematical study for over acentury but little has been written on the computational complexity ofdetermining important properties of these games. In this introductionwe de�ne combinatorial games and focus for the most part on impartialposet games, of which Nim is perhaps the best-known example. Wepresent the complexity results known to date, some discovered veryrecently.

An extended version of this paper, with detailed proofs, is availableonline at http://www.cse.sc.edu/~fenner/papers/games.html andon arXiv.org.

1 Introduction

Combinatorial games have long been studied (see [5, 1], for example) but therecord of results on the complexity of questions arising from these games israther spotty. Our goal in this introduction is to present several results�some old, some new�addressing the complexity of the fundamental problemgiven an instance of a combinatorial game:

Determine which player has a winning strategy.

A secondary, related problem is

Find a winning strategy for one or the other player, or just �nda winning �rst move, if there is one.

The former is a decision problem and the latter a search problem. In somecases, the search problem clearly reduces to the decision problem, i.e., having

∗University of South Carolina, Computer Science and Engineering Department†DePaul University, School of Computing

2

Page 3: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

a solution for the decision problem provides a solution to the search problem.In other cases this is not at all clear, and it may depend on the class of gamesyou are allowed to query.

We give formal de�nitions below, but to give an idea of the subject matter,we will discuss here the large class of games known as the poset games. Oneof the best known of these is Nim, an ancient game, but given its name byCharles Bouton in 1901 [2]. There are many others, among them, Hackendot,Divisors, and Chomp [5]. Poset games not only provide good examples toillustrate general combinatorial game concepts, but they also are the subjectof a �urry of recent results in game complexity, which is the primary focusof this article.

The rest of this section gives some basic techniques for analyzing posetgames. Section 2 lays out the foundations of the general theory of combina-torial games, including numeric and impartial games. The rest of the paperis devoted to computational complexity. Section 3 gives an upper bound onthe complexity of so-called �N-free� games, showing that they are solvable inpolynomial time. Section 4 gives lower bounds on the complexity of somegames, showing they are hard for various complexity classes. The sectionculminates in two recent PSPACE-completeness results�one for impartialposet games, and the other for �black-white� poset games. Section 5 discussessome open problems.

An extended version of this paper, with detailed proofs, is available onlineat http://www.cse.sc.edu/~fenner/papers/games.html and on arXiv.

org.

1.1 Poset games

De�nition 1.1. A partial order on a set P (hereafter called a poset) is abinary relation ≤ on P that is re�exive, transitive, and antisymmetric (i.e.,x ≤ y and y ≤ x imply x = y). For any x ∈ P , de�ne Px := {y ∈ P | x 6≤ y}.

We identify a �nite poset P with the corresponding poset game: Startingwith P , two players (Alice and Bob, say) alternate moves, Alice moving �rst,where a move consists of choosing any point x in the remaining poset andremoving all y such that x ≤ y, leaving Px remaining. Such a move we callplaying x. The �rst player unable to move (because the poset is empty)loses.1

Poset games are impartial, which means that, at any point in the play,

1Games can be played on some in�nite posets as well, provided every possible sequenceof moves is �nite. This is true if and only if the poset is a well-quasi-order (see, e.g.,Kruskal [18]).

3

Page 4: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

the set of legal moves is the same for either player. There is a rich theory ofimpartial games, and we cover it in Section 2.5.

In an impartial game, the only meaningful distinction between players iswho plays �rst (and we have named her Alice). Since every play of a posetgame has only �nitely many moves, one of the two players (but clearly notboth!) must have a winning strategy. We say that a poset P is an ∃-game(or winning position) if the �rst player has a winning strategy, and P is a ∀-game (or losing position) if the second player has a winning strategy. In thecombinatorial game theory literature, these are often called N -games (�Nextplayer win�) and P-games (�Previous player win�), respectively. We get thefollowing concise inductive de�nition for any poset P :

P is an ∃-game i� there exists x ∈ P such that Px is a ∀-game.P is a ∀-game i� P is not an ∃-game (i�, for all x ∈ P , Px is an∃-game).

We call the distinction of a game being a ∀-game versus an ∃-game theoutcome of the game.

There are at least two natural ways of combining two posets to producea third.

De�nition 1.2. For posets P = 〈P,≤P 〉 and Q = 〈Q,≤Q〉,

• de�ne P + Q (the parallel union of P and Q) to be the disjoint unionof P and Q, where all points in P are incomparable with all points inQ:

P +Q := 〈P ∪̇Q,≤〉 ,where ≤:=≤P ∪̇ ≤Q.

• De�ne P/Q (or PQ�the series union of P over Q) to be the disjoint

union of P and Q where all points in P lie above (i.e., are ≥ to) allpoints in Q:

P

Q:= 〈P ∪̇Q,≤〉 ,

where ≤ := ≤P ∪̇ ≤Q ∪̇(Q× P ).

Note that + is commutative and associative, and that / is associative butnot commutative. Using these two operations, let's build some simple posets.Let C1 be the one-element poset. For any n ∈ N, let

1. Cn := C1/C1/ . . . /C1︸ ︷︷ ︸n

is the chain of n points (totally ordered). This is

also called a NIM stack.

4

Page 5: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

33C3 = 31 V5 Λ4

Figure 1: Some simple posets constructed from individual points via paralleland series union.

2. An := C1 + C1 + · · ·+ C1︸ ︷︷ ︸n

is the antichain of n pairwise incomparable

points.

3. Vn := An/C1 is the n-antichain with a common lower bound.

4. Λn := C1/An is the n-antichain with a common upper bound.

5. 3n := C1/An/C1 is the n-antichain with common upper and lowerbounds.

Some examples are shown in Figure 1.

Exercise 1.3. Find a simple way, given m and n, to determine whetherAm/An is an ∃-game or a ∀-game.

Exercise 1.4. Show that P/Q is an ∃-game if and only if either P is an∃-game or Q is an ∃-game.

1.1.1 More examples

The best-known poset game is Nim, an ancient game �rst formally describedand �solved� by C. L. Bouton in 1902 [2]. Here, the poset is a union ofdisjoint chains, i.e., of the form Cn1 + Cn2 + · · · + Cnk

for some positiveintegers n1, . . . , nk. A move then consists of choosing a point in one of thechains and remove that point and everything above it.

Other families of poset games include

Chomp, introduced in 1974 by D. Gale [11], which, in its �nite form, isrepresented by a rectangular arrangement of squares with the leftmostsquare in the bottom row removed. This is a poset with two minimalelements (�rst square on the second row, second square on bottomrow). Every element in a row is greater than all of the elements to the

5

Page 6: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

left and below so playing an element removes it and all elements to theright and above.

Hackendot, attributed to von Newmann, where the poset is a forest ofupside-down trees (roots at the top). Hackendot was solved in 1980by Úlehla [29].

Divisors, introduced by F. Schuh [22], the poset is the set of all positivedivisors (except 1) of a �xed integer n, partially ordered by divisibility.Divisors is a multidimensional generalization of Chomp. Chomp

occurs as the special case where n = pmqn for distinct primes p, q.

1.2 Dual symmetry

Some poset games can be determined (as ∃-games or ∀-games just by inspec-tion). For example, suppose a poset P has some kind of dual symmetry, thatis, there is an order-preserving map ϕ : P → P such that ϕ ◦ ϕ = id.

Fact 1.5. Let P be a poset and let ϕ : P → P be such that ϕ ◦ ϕ = idP andx ≤ y ⇐⇒ ϕ(x) ≤ ϕ(y) for all x, y ∈ P .

• If ϕ has no �xed points, then P is a ∀-game.

• If ϕ has a minimum �xed point (minimum among the set of �xedpoints), then P is an ∃-game.

Proof. If ϕ has no �xed points, then Bob can answer any x played by Aliceby playing ϕ(x). If ϕ has a least �xed point z, then Alice plays z on her�rst move, leaving Pz, which is symmetric with no �xed points, and thus a∀-game.

For example, the poset below is symmetric with a unique �xed point x,which Alice can win by playing on her �rst move:

x

6

Page 7: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

1.3 Strategy stealing

Another class of posets that are easy to determine by inspection are thosewith an articulation point, i.e., a point that is comparable with every otherpoint in the poset. For example, minimum and maximum points of P arearticulation points.

Fact 1.6. If a poset P contains an articulation point, then P is an ∃-game.

Proof. Let x be some articulation point of P . If x is a winning �rst move forAlice, then we are done. If x is a losing �rst move for Alice, then there mustbe some winning response y for Bob if Alice �rst plays x. But if Alice playsx, then all points ≥ x are now gone, and so we have y < x. This means thatthe game after Bob moves is Py, which is a ∀-game by assumption. But then,Alice could have played y instead on her �rst move, leaving the ∀-game Py

for Bob, and thus winning.

We call this �strategy stealing� because Alice steals Bob's winning strat-egy. The interesting thing about this proof is how nonconstructive it is. Itshows that Alice has a winning �rst move, but gives virtually no informa-tion about what that �rst move could be. All we know is that the winning�rst play must be ≤ x. If x is a maximum point of P , then the proof givesno information whatsoever about Alice's winning �rst move. Several posetgames, including Chomp, have initial posets with maximum points, so weknow that they are ∃-games. But determining a winning �rst move for Al-ice in Chomp appears quite di�cult, and no fast algorithm is known. Thissuggests that, in the case of Chomp at least, the search problem (�ndinga winning �rst move) is apparently di�cult, whereas the decision problem(∃-game or ∀-game?) is trivial. The search versus decision issue is discussedfurther in Section 4.1, below.

Exercise 1.7. Show that the winning �rst moves in any poset form an an-tichain.

1.4 Black-white poset games

Many interesting games are not impartial because the legal moves di�er forthe players. In chess, for example, one player can only move white piecesand the other only black pieces. We will informally call a game �black-white�when each player is assigned a color (black or white) and can only makemoves corresponding to their color.2 Many impartial games have naturalblack-white versions. Here, then, is a black-white version of a poset game:

2A di�erent, popular color combination is red-blue. We use black-white so that illus-trations are faithfully rendered on a black-and-white printer.

7

Page 8: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

De�nition 1.8. A black-white poset game consists of �nite poset P , eachof whose points are colored either black or white. The same rules applyto black-white poset games as to (impartial) poset games, except that oneplayer (Black) can only play black points and the other player (White) canonly play white points. (All points above a played point are still removed,regardless of color.)

One could generalize this de�nition by allowing a third color, grey, say,where grey points can be played by either player. We will not pursue thisidea further. Other �colored� games include red-blue Hackenbush and red-green-blue Hackenbush [1].

Combinatorial games that are not impartial are known as partisan. Inpartisan games, we must make a distinction between the two players beyondwho moves �rst. Generically, these players are called Left and Right. Thereis a surprisingly robust general theory of combinatorial games, both impartialand partisan, developed in [1, 5], and we give the basics of this theory in thenext section.

2 Combinatorial game theory basics

In this section we give some relevant de�nitions and a few facts from thegeneral theory of combinatorial games. We give enough of the theory tounderstand later results. Thorough treatments of this material, with lots ofexamples, can be found in [1, 5] as well as other sources, e.g., the recentbook by Siegel [23]. Our terminology and notation vary a little bit from[1, 5], but the concepts are the same. When we say, �game,� we always meanwhat is commonly referred to as a combinatorial game, i.e., a game betweentwo players, say, Left and Right, alternating moves with perfect information,where the �rst player unable to move loses (and the other wins). In theirfullest generality, these games can be de�ned abstractly by what options eachplayer has to move, given any position in the game.

To save space, we will omit proofs of the results of this section, leavingthem as exercises to the reader. These proofs are usually straightforwardapplications of previous results in this section, or induction, or both. Theextended paper contains the full proofs.

2.1 Notation

We let N denote the set {0, 1, 2, . . . , } of natural numbers. We let |X| denotethe cardinality of a �nite set X. We use the relation � :=� to mean �equals byde�nition.� We extend the de�nition of an operator on games to an operator

8

Page 9: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

on sets of games in the customary way; for example, if ∗ is a binary operationon games, and G and H are sets of games, then G ∗H := {g ∗ h | g ∈ G ∧h ∈ H}, and if g is a game, then g ∗H := {g} ∗H, and so on.

2.2 Basic de�nitions

De�nition 2.1. A game is an ordered pair G = (GL, GR), where GL and GR

are sets of games. The elements of GL (respectively, GR) are the left options(respectively, right options) of G. An option of G is either a left option or aright option of G.

It is customary to write {GL|GR} or {`1, `2, . . . |r1, r2, . . .} rather than(GL, GR), where GL = {`1, `2, . . .} and GR = {r1, r2, . . .}. We will do thesame.

For this and the following inductive de�nitions to make sense, we tacitlyassume that the �option of� relation is well-founded, i.e., there is no in�nitesequence of games g1, g2, . . . where gi+1 is an option of gi for all i.3 A positionof a game G is any game reachable by making a �nite series of moves startingwith G (the moves need not alternate left-right). Formally,

De�nition 2.2. A position of a game G is either G itself or a position of someoption of G. We say that G is �nite i� G has a �nite number of positions.4

Starting with a game G, we imagine two players, Left and Right, alter-nating moves as follows: the initial position is G; given the current positionP of G (also a game), the player whose turn it is chooses one of her or hisoptions of P (left options for Left; right options for Right), and this optionbecomes the new game position. The �rst player faced with an empty set ofoptions loses. The sequence of positions obtained this way is a play of thegame G. Our well-foundedness assumption implies that every play is �nite,and so there must be a winning strategy for one or the other player. Weclassify games by who wins (which may depend on who moves �rst) whenthe players play optimally. This is our broadest and most basic classi�cation.Before giving it, we �rst introduce the �mirror image� of a game G: de�ne−G to be the game where all left options and right options are swapped atevery position, as if the players switched places. Formally,

De�nition 2.3. For any game G, de�ne −G := {−GR|−GL}.

3This follows from the Foundation Axiom of set theory, provided ordered pairs areimplemented in some standard way, e.g., (x, y) := {{x}, {x, y}} for all sets x and y.

4Finite games are sometimes called short games; see [23].

9

Page 10: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

It is a good warm-up exercise to prove�inductively, of course�that−(−G) = G for every game G. For impartial games, e.g., poset games, the�−� operator has no e�ect; for black-white poset games, this is tantamountto swapping the color of each point in the poset.

We can consider the following de�nition to be the most fundamentalproperty of a game:

De�nition 2.4. Let G be a game. We say that G ≥ 0 (or 0 ≤ G) i� thereis no right option gR of G such that −gR ≥ 0. We will say G ≤ 0 to meanthat −G ≥ 0.

So G ≥ 0 if and only if no right option gR of G satis�es gR ≤ 0. Sym-metrically, G ≤ 0 if and only if no left option gL of G satis�es gL ≥ 0. Interms of strategies, G ≥ 0 means that G is a �rst-move loss for Right ora second-move win for Left. If Right has to move �rst in G, then Left canwin. Symmetrically, G ≤ 0 means that G is a �rst-move loss for Left or asecond-move win for Right.

The ≤ notation suggests that a partial order (or at least, a preorder) ongames is lurking somewhere. This is true, and we develop it below.

De�nition 2.4 allows us to partition all games into four broad categories.

De�nition 2.5. Let G be a game.

• G is a zero game (or a �rst-move loss, or P-game) i� G ≤ 0 and G ≥ 0.

• G is positive (or a win for Left, or L-game) i� G ≥ 0 and G 6≤ 0.

• G is negative (or a win for Right, or R-game) i� G ≤ 0 and G 6≥ 0.

• G is fuzzy (or a �rst-move win, or N -game) i� G 6≤ 0 and G 6≥ 0.

These four categories, P (for previous player win), L (for Left win), R (forRight win), and N (for next player win), partition the class of all games.The unique category to which G belongs is called the outcome of G, writteno(G).

For example, the simplest game is the endgame 0 := {|} with no options,which is a zero game (o(0) = P). The game 1 := {0|} is positive (o(1) = L),and the game −1 := {|0} is negative o(−1) = R, while the game ∗ := {0|0}is fuzzy (o(∗) = N ).

10

Page 11: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

2.3 Game arithmetic, equivalence, and ordering

Games can be added, and this is a fundamental construction on games. Thesum G+H of two games G and H is the game where, on each move, a playermay decide in which of the two games to play. Formally:

De�nition 2.6. Let G and H be games. We de�ne

G+H := {(GL +H) ∪ (G+HL) | (GR +H) ∪ (G+HR)} .

In Section 1 we used the + operator for the parallel union of posets.Observe that this corresponds exactly to the + operator on the correspondinggames, i.e., the game corresponding to the parallel union of posets P and Qis the game-theoretic + applied to the corresponding poset games P and Q.

We write G − H as shorthand for G + (−H). One can easily show byinduction that + is commutative and associative when applied to games, andthe endgame 0 is the identity under +. This makes the class of all gamesinto a commutative monoid (albeit a proper class). One can also show forall games G and H that −(G + H) = −G −H. Furthermore, if G ≥ 0 andH ≥ 0, then G+H ≥ 0. It is not the case, however, that G−G = 0 for allG, although G−G is always a zero game. These easy results are importantenough that we state and prove them formally.

Lemma 2.7. For any games G and H,

1. G−G is a zero game.

2. Suppose G ≥ 0. Then H ≥ 0 implies G + H ≥ 0, and H 6≤ 0 impliesG+H 6≤ 0.

3. Suppose G ≤ 0. Then H ≤ 0 implies G + H ≤ 0, and H 6≥ 0 impliesG+H 6≥ 0.

4. −(G+H) = −G−H.

The outcome o(G) of a game G is certainly the �rst question to be askedabout G, but it leaves out a lot of other important information about G. Itdoes not determine, for example, the outcome when G is added to a �xedgame X. That is, it may be that two games G and H have the same outcome,but o(G + X) 6= o(H + X) for some game X. Indeed, de�ning 2 := {1|},one can check that o(1) = o(2) = L, but we have o(2− 1) = L (left wins bychoosing 1 ∈ 2L when she gets the chance), whereas we know already fromLemma 2.7 that o(1− 1) = P .

Behavior under addition leads us to a �ner classi�cation of games.

11

Page 12: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

De�nition 2.8. LetG andH be games. We say thatG andH are equivalent,written G ≈ H, i� o(G+X) = o(H +X) for all games X.5

It follows immediately from the de�nition that≈ is an equivalence relationon games, and we call the equivalence classes game values. We let PG denotethe Class6 of all game values.7 Letting X be the endgame 0 in the de�nitionshows that equivalent games have the same outcome. Using the associativityof +, we also get that G ≈ H implies G+X ≈ H+X for any game X. Thus+ respects equivalence and naturally lifts to a commutative and associativeOperation (also denoted +) on PG.

The remaining goal of this subsection is �nish showing that 〈PG,+,≤〉 isa partially ordered abelian Group. We have built up enough basic machinerythat we can accomplish our goal in a direct, arithmetic way, without referringto players' strategies.

Lemma 2.9. A game G is a zero game if and only if G + H ≈ H for allgames H.

Corollary 2.10. A game G is a zero game if and only if G ≈ 0 (where 0 isthe endgame).

Here is our promised Preorder on games.

De�nition 2.11. Let G and H be games. We write G ≤ H (or H ≥ G) tomean H − G ≥ 0 (equivalently, G −H ≤ 0). As usual, we write G < H tomean G ≤ H and H 6≤ G.8

You can interpret G < H informally as meaning that H is more preferablea position for Left than G, or that G is more preferable for Right than H.For example, if Left is ever faced with moving in position G, and (let uspretend) she had the option of replacing G with H beforehand, she alwayswants to do so.

Proposition 2.12. The ≤ Relation on games is re�exive and transitive.

5In much of the literature, the overloaded equality symbol = is used for game equiva-lence. We avoid that practice here, preferring to reserve = for set theoretic equality. Thereare some important game properties that are not ≈-invariant.

6We will start to capitalize words that describe proper classes.7Since each game value itself is a proper Class, we really cannot consider it as a member

of anything. A standard �x for this in set theory is to represent each game value v by theset of elements of v with minimum rank, so PG becomes the Class of all such sets.

8We now have two ways of interpreting the expression �G ≥ 0�: one using De�nition 2.4directly and the other using De�nition 2.11 with 0 being the endgame. One readily checksthat the two interpretations coincide.

12

Page 13: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

Proposition 2.13. For any two games G and H, G ≈ H if and only ifG−H is a zero game, if and only if G ≤ H and G ≥ H.

The last two propositions show that the binary Relation ≤ on games isa Preorder that induces a partial Order on PG. Proposition 2.13 also givesa good working criterion for proving or disproving game equivalence�justcheck whether G − H is a second player win�without having to quantifyover all games.

Proposition 2.14. 〈PG,+〉 is an abelian Group, where the identity elementis the ≈-equivalence class of zero games, and inverses are obtained by thenegation Operator on games.

Finally, ≤ is translation-invariant on PG, making it a partially orderedabelian Group:

Corollary 2.15. For any games G, H, and X, if G ≤ H then G + X ≤H +X.

We next look at two important subclasses of games�the numeric gamesand the impartial games.

2.4 Numeric games

A numeric game is one where at each position all the left options are < allthe right options. Formally,

De�nition 2.16. A game G is numeric i� ` < r for every ` ∈ GL andr ∈ GR, and further, every option of G is numeric.

One can show that G is numeric if and only if ` < G for every ` ∈ GL

and G < r for every r ∈ GR. If H is also numeric, then either G ≤ H orH ≤ G. The + and − operations also yield numeric games when applied tonumeric games.9 Numeric games have a peculiar property: making a moveonly worsens your position (for Left this means having to choose a smallergame; for Right, having to choose a larger game). Thus neither player wantsto make a move�if they were given the option to skip a turn, they wouldalways take it. For these games, an optimal play is easy to describe: Leftalways chooses a maximum left option (i.e., one that does the least damage),and Right always chooses a minimum right option, assuming these options

9The property of being numeric is not invariant under ≈. One can easily concoct twoequivalent games, one of which is numeric and the other not.

13

Page 14: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

exist.10 This intuitive idea is formalized in the following theorem, which isreferred to in the literature as the �dominating rule.� It applies to all games,not just numeric games.

Theorem 2.17. Let G be a game. If y ≤ ` for some ` ∈ GL, then G ≈{y,GL|GR}. Similarly, if y ≥ r for some r ∈ GR, then G ≈ {GL|GR, y}.

If y ≤ ` ∈ GR, then we say that y is dominated by ` in G. Similarly, ify ≥ r ∈ GR, then y is dominated by r in G. We obtain equivalent gamesby removing dominated options. A player never needs to play a dominatedoption; it is just as well (or better) to choose an option that dominates it.

Numeric games are called such because their values act like real numbers;for one thing, their values are totally ordered by ≤. These games are con-structed in a way somewhat akin to how the real numbers are constructedfrom the rationals via Dedekind cuts. The left options of a game form the leftcut, the right options the right cut, and the game itself represents a numberstrictly between the two. The di�erences are that the two cuts might bebounded away from each other (one or the other may even be empty), andthe left cut might contain a maximum element.

2.4.1 Finite numeric games

The values of �nite numeric games form a subgroup of PG naturally iso-morphic (in an order-preserving way) to the dyadic rational numbers underaddition, according to the following �simplicity rule�:

De�nition 2.18. Let G be a �nite numeric game. The (numerical) value ofG, denoted v(G), is the unique rational number a/2k such that

1. k is the least nonnegative integer such that there exists an integer asuch that v(`) < a/2k for all ` ∈ GL and a/2k < v(r) for all r ∈ GR,and

2. a is the integer with the least absolute value satisfying (1.) above.

So for example, the endgame 0 has value v(0) = 0, the game 1 has valuev(1) = 1, and the game −1 has value v(−1) = −1, as the notation suggests.Intuitively, |v(G)| indicates the number of �free moves� one of the players hasbefore losing (Left if v(G) > 0, and Right if v(G) < 0). In fact, for any two�nite numeric games P and Q, one can show that v(P + Q) = v(P ) + v(Q)

10In general, Left can win by choosing any option ` ≥ 0, and Right can win by choosingany option r ≤ 0.

14

Page 15: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

2−k

`1 `2 `k· · ·

u1 u2 uk

k − 12

Figure 2: The numerical values of two simple black-white poset games. Theleft has value k − 1

2and the right has value 2−k, for k ≥ 1.

and that v(−P ) = −v(P ). Also, P ≤ Q if and only if v(P ) ≤ v(Q).11 Thevaluation map v is not one-to-one on games, but induces a one-to-one mapon values of numeric games.

To illustrate the simplicity rule, consider the game h := {0|1}. The rulesays that v(h) is the simplest dyadic rational number strictly between 0 and1, namely, 1/2. First note that Left can always win h whether or not sheplays �rst, so h > 0. If v respects +, then we should also have h + h ≈ 1.Let us check this. First consider 1− h:

1− h = 1 + (−h) = {0|}+ {−1|0} = {0− h, 1− 1|1 + 0}= {−h, 0|1} ≈ {0|1} = h

(the equivalence is by the dominating rule and −h < 0). Thus

h+ h ≈ h+ (1− h) ≈ 1 .

Black-white poset games are numeric [10]. Here we identify Black withLeft and White with Right. So for example, an antichain of k black pointshas numeric value k, and an antichain of k white nodes has numeric value−k. Figure 2 shows the numeric value of two simple, two-level black-whiteposet games.

Exercise 2.19. Use the simplicity rule to prove the values in Figure 2.

The numerical values of arbitrary numeric games (not necessarily �nite)form an ordered, real-closed �eldNo into which the real numbers embed, butwhich also contains all the ordinals as well as in�nitesimals [5]. Donald Knuthdubbed No the surreal numbers [17], and they are formed via a trans�niteconstruction. The dyadic rationals are those constructed at �nite stages, butnumbers constructed through stage ω already form a proper superset of R.

11One can de�ne a purely game-theoretic multiplication operation on numeric games insuch a way that v(PQ) = v(P )v(Q) for all P and Q. See [5] for details.

15

Page 16: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

2.5 Impartial games and Sprague-Grundy theory

A game is impartial if at every position, the two players have the sameoptions. Formally,

De�nition 2.20. A game G is impartial i� GL = GR and every g ∈ GL isimpartial.

Equivalently, G is impartial if and only if G = −G. This means thatvalues of impartial games are those that have order two in the group 〈PG,+〉.

Examples of impartial games include 0 and ∗. Families of impartial gamesinclude Nim, Geography, Node Kayles, and poset games.12 There is abeautiful theory of impartial games, developed by R. P. Sprague and P. M.Grundy [25, 14] that predates the more general theory of combinatorial gamesdescribed in [1, 5]. We develop the basics of this older theory here. Firstnote that, since there are no Left/Right biases, all impartial games are eitherzero (P) or fuzzy (N ), and we can assume that Left always moves �rst.We will call impartial zero games ∀-games (�for all �rst moves . . . �) andimpartial fuzzy games ∃-games (�there exists a �rst move such that . . . �). Inthis section only, we restrict our attention to impartial games, so when wesay �game,� we mean impartial game.

Two (impartial) games G and H are equivalent (G ≈ H) if and only ifG + H is a ∀-game, because H = −H (Sprague and Grundy de�ned thisnotion for impartial games). One can associate an ordinal number with eachgame, which we call the g-number 13 of the game, such that two games areequivalent if and only if they have the same g-number. The g-number of a�nite game is a natural number. We will restrict ourselves to �nite games.

De�nition 2.21. Let A be any coin�nite subset of N. De�ne mexA (theminimum excluded element from A) to be the least natural number not inA, i.e.,

mexA := min(N− A) .

More generally, for i = 0, 1, 2, . . . , inductively de�ne

mexiA := min (N− (A ∪ {mex0(A), . . . ,mexi−1A})) ,

the i'th least natural number not in A. (So in particular, mex0A = mexA.)

12Impartiality is not ≈-invariant.13also called the Grundy number or the NIM number�not to be confused with the value

of a numerical game

16

Page 17: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

De�nition 2.22. Let G be any (�nite) game. De�ne the g-number of G as

g(G) := mex g-set(G) ,

where g-set(G) := {g(x) | x ∈ GL} is called the g-set of G.

That is, g(G) is the least natural number that is not the g-number ofany option of G, and the set of g-numbers of options of G is g-set(G). Forexample, g-set(0) = ∅, and so g(0) = 0. Also, g-set(∗) = {g(0)} = {0}, andso g(∗) = 1.

Exercise 2.23. Prove the following for any �nite poset P and any n ∈ N.

1. g(P ) ≤ |P |. (Generally, g(G) ≤∣∣GL

∣∣ for any impartial G.)

2. g(Cn) = n for all n ∈ N.

3. g(An) = n mod 2.

4. g(Vn) = (n mod 2) + 1.

What is g(Λn)? What is g(3n)?

Exercise 2.24. Describe g(Am/An) simply in terms of m and n.

Here is the connection between the g-number and the outcome of a game.

Proposition 2.25. A game G is a ∀-game if and only if g(G) = 0.

Proof idea. If g(G) 6= 0, then there is some option x of G that Left can playsuch that g(x) = 0, but if g(G) = 0, then no move Left makes can keep theg-number at 0.

The central theorem of Sprague-Grundy theory�an amazing theoremwith a completely nonintuitive proof�concerns the g-number of the sum oftwo games.

De�nition 2.26. For any m,n ∈ N, de�ne m ⊕ n to be the natural num-ber k whose binary representation is the bitwise exclusive OR of the binaryrepresentations of m and n. We may also call k the bitwise XOR of m andn.

For example, 23⊕ 13 = 10111⊕ 01101 = 11010 = 26.

Theorem 2.27 (Sprague, Grundy [25, 14]). For any �nite games G and H,

g(G+H) = g(G)⊕ g(H) .

17

Page 18: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

Corollary 2.28. Two impartial games G and H are equivalent if and onlyif g(G) = g(H).

Proof. G and H are equivalent i� G + H is a ∀-game, i� g(G + H) = 0(Proposition 2.25), i� g(G)⊕g(H) = 0 (Theorem 2.27), i� g(G) = g(H).

Since every natural number n is the g-number of the poset game Cn, thismeans that every game is equivalent to a single NIM stack.

We can use Theorem 2.27 to solve Nim. Given a Nim game P = Cn1 +· · · + Cnk

, we get g(P ) = n1 ⊕ · · · ⊕ nk. If this number is nonzero, then leti be largest such that (g(P ))i = 1. Alice can win by choosing a j such that(nj)i = 1 and playing in Cnj

to reduce its length (and hence its g-number)from nj to nj ⊕ (g(P ))i. This makes the g-number of the whole Nim gamezero.

Theorem 2.27 shows how the g-number behaves under parallel unions ofposets (De�nition 1.2). How does the g-number behave under series unions?Unfortunately, g(P/Q) might not depend solely on g(P ) and g(Q). Forexample, g(V2) = g(C1) = 1, but g(C1/V2) = g(32) = 3 whereas g(C1/C1) =g(C2) = 2. However, g-set(P/Q) does depend solely on g-set(P ) and g-set(Q)for any posets P and Q, and this fact forms the basis of the Deuber &Thomassé algorithm of the next section.

There is one important case where g(P/Q) does only depend on g(P ) andg(Q):

Fact 2.29. For any �nite poset P and any k ≥ 0,

g

(P

Ck

)= g(P ) + k .

This can shown by �rst showing that g(P/C1) = g(P ) + 1, then usinginduction on k. By Fact 2.29, we get that g(3n) = 1 + g(Λn) for example.

3 Upper bounds

When asking about the computational di�culty of determining the outcomeof a game, we really mean a family of similar games, represented in some wayas �nite inputs. In discussing game complexity, we will abuse terminologyand refer to a family of games simply as a game. (The same abuse occursin other areas of complexity, notably circuit complexity.) We will also usethe same small-caps notation to refer both to a family of games and to thecorresponding decision problem about the outcomes.

18

Page 19: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

Perhaps the most common upper bound in the literature on the complex-ity of a game is membership in PSPACE. Without pursuing it further, wewill just mention that, if a game G of size n satis�es: (i) every position ofG has size polynomial in n; (ii) the length of any play of G is polynomialin n; and (iii) there are polynomial-time (or even just polynomial-space) al-gorithms computing the �left option of� and �right option of� relations onthe positions of G, then o(G) can be computed in polynomial space. Theseproperties are shared by many, many games.

In this section we will give some better upper bounds on some classes of�nite poset games, the best one being that N-free poset games are in P [6].We will assume that a poset is represented by its Hasse diagram, a directedacyclic graph (DAG) in which each element is represented as a node andan arc is placed from a node for element x to the node for y when x < yand there is no element z such that x < z < y. The poset is the re�exive,transitive closure of the edge relation of the DAG.

3.1 N-free games

With the Hasse diagram representation, we can apply results from graphtheory to devise e�cient ways to calculate g-numbers for certain classes ofgames. A good example is the class of N-free poset games. An �N� in aposet is a set of four elements {a, b, c, d} such that a < b, c < d, c < b, andthe three other pairs are incomparable. When drawn as a Hasse diagramthe arcs indicating comparability form the letter �N�. A poset is N-free if itcontains no N as an induced subposet. We let N-Free denote the class ofN-free poset games.

Valdes, Tarjan, and Lawler [30] show that an N-free DAG can be con-structed in linear time from a set of single nodes. New components arecreated either by applying parallel union (G+H) or by applying series union(G/H). As with posets, the parallel union is the disjoint union of G and H.The series union is a single DAG formed by giving to every element in H without-degree 0 (the sinks in H) an arc to every element in G with in-degree0 (the sources in G). This gives the Hasse diagram of the series union ofthe corresponding posets. Their algorithm provides a sequence of + and /operations that will construct a given N-free DAG from single points.

Deuber & Thomassé [6] show that N-Free ∈ P by applying this con-struction to demonstrate how to calculate the g-number of an N-free posetgame based on the sequence of construction steps obtained by the VTL al-gorithm above. Their algorithm, which we now describe, works by keepingtrack of the g-sets of the posets obtained in the intermediate steps of theconstruction, rather than the g-numbers. There is no need to store the g-

19

Page 20: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

numbers, because the g-number of any poset can always be easily computedfrom its g-set by taking the mex.

The g-number of a single node is 1. This is the base case.

Fact 3.1. Given posets P and Q, the g-set of the parallel union P +Q is

g-set(P +Q) = {g(P +Qq) : q ∈ Q} ∪ {g(Pp +Q) : p ∈ P}= {g(P )⊕ g(Qq) : q ∈ Q} ∪ {g(Pp)⊕ g(Q) : p ∈ P} .

The second equality follows from the Sprague-Grundy theorem. This iseasy to see if you consider the root of the game tree for P + Q. Each ofits children results from playing either an element in P or one in Q. Theleft-hand set in the union contains the g-numbers of the games resulting fromplaying an element in Q; the right-hand set from playing an element in P .Their union is the g-set of P +Q, so its g-number is the mex of that set.

To calculate the g-set of a series union, we will need the de�nition of theGrundy product of two �nite sets of natural numbers:

A�B := B ∪ {mexaB | a ∈ A} .

A�B is again a �nite set of natural numbers that is easy to compute givenA and B. Basically, A � B unions B with the version of A we get after re-indexing the natural numbers to go �around� B. Notice that mex(A�B) =mexmexAB. We will use this fact below.

Lemma 3.2 (Deuber & Thomassé [6]). For any �nite posets P and Q,g-set(P/Q) = g-set(P )�g-set(Q) = g-set(Q)∪{mexi(g-set(Q)) : i ∈ g-set(P )}.

The left-hand set of the union results from playing an element in Q, whichremoves all of the elements in P . Using induction, we can see what happenswhen an element in P is played.

Proof of Lemma 3.2. The fourth equality uses the inductive hypothesis.

g-set(P/Q) = {g((P/Q)r) : r ∈ P/Q}= {g((P/Q)p) : p ∈ P} ∪ {g((P/Q)q) : q ∈ Q}= {g((Pp/Q)) : p ∈ P} ∪ {g(Qq) : q ∈ Q}= {mex(g-set(Pp)� g-set(Q)) : p ∈ P} ∪ g-set(Q)

= {mexmex g-set(Pp) g-set(Q) : p ∈ P} ∪ g-set(Q)

= {mexg(Pp)(g-set(Q)) : p ∈ P} ∪ g-set(Q)

= {mexi(g-set(Q)) : i ∈ g-set(P )} ∪ g-set(Q)

= g-set(P )� g-set(Q)

20

Page 21: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

In particular, the g-number of P/Q is greater than or equal to the sumof the g-numbers of P and Q. Notably, it's an equality if Q is Cn for somen (Fact 2.29) and the reason is that the g-set of Cn has no gaps, that is, itcontains all of the values from 0 to n− 1. It's easy to see that it's true whenP and Q are both singletons. Their g-numbers are both 1 and forming theirseries-union creates a NIM stack of size 2 and that has g-number 2.

Another way to understand Lemma 3.2 is to consider the game tree ofP/Q, and we'll look at the simple case where P is an arbitrary game withg-number k and Q is a singleton. Consider the root node r of the game tree ofP/Q. One of its children represents playing the single element in Q and thatchild has g-number 0. The rest of r's children represent game con�gurationsreached by playing an element in P . By the induction hypothesis the g-number of each of these nodes will be one more than in P 's game tree wherethey had g-numbers 0 to k− 1, and perhaps g-numbers k + 1 and larger. Soin P/Q's tree they have g-numbers 1 to k, with perhaps g-numbers k + 2 orlarger. Because the child reached by playing Q's single element has g-number0, the �rst missing value in the g-set formed from these g-numbers is k + 1.

Now using Fact 3.1 and Lemma 3.2, the decomposition described in [30]can generate a binary tree where each internal node is labeled with a posetP and an operation (parallel union or series union), and its children are thetwo posets combined to form P . Starting with each leaf, where the posetis a singleton and the g-set is {0}, and moving up the tree, one can applyFact 3.1 and Lemma 3.2 to compute the g-set of the root (and none of theg-numbers involved exceed the size of the �nal poset). This can all be donein time O(n4).

3.2 Results on some classes of games with N's

General results for classes of games containing an �N� have been few. In 2003,Steven Byrnes [3] proved a poset game periodicity theorem, which applies to,among others, Chomp-like games, which contain many �N�-con�gurations.

Here's the theorem, essentially as stated in the paper:

Theorem 3.3. In an in�nite poset game X, suppose we have two in�nitechains C (c1 < c2 < · · · ) and D (d1 < d2 < · · · ), and a �nite subset A, allpairwise disjoint, and assume that no element of C is less than an elementof D. Let Am,n = A∪C ∪D− {x ∈ X|x ≥ cm+1} − {x ∈ X|x ≥ dn+1} (thatis, Am,n is the position that results from starting with the poset A ∪ C ∪D,then making the two moves cm+1 and dn+1). Let k be a nonnegative integer.Then either:

1. there are only �nitely many di�erent Am,n with g-number k; or

21

Page 22: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

2. we can �nd a positive integer p such that, for large enough n, g(Am,n) =k if and only if g(Am+p,n+p) = k.

Thus, as the poset A expands along the chains C and D, positions with any�xed g-number have a regular structure.

A simple example of a class of games covered by the theorem is the familyof two-stack Nim games, where A is empty and Am,n consists of an m-chainand an n-chain. The g-number 0 occurs for every An,n so the periodicity is 1.The g-number 1 occurs for every A2n,2n+1 and so has periodicity 2. In fact,one can �nd a periodic repetition for every g-number. The surprising thingis that this is still true when you allow elements in one chain to be less thanelements in the other.

Another family contains Chomp, described in Section 1.1.1. We cangeneralize Chomp to games where the rows do not have to contain the samenumber of elements. Byrnes showed that for such games there is a periodicityin the g-numbers when we �x the size of all but the top two rows.

As Byrnes claims, this yields a polynomial-time decision algorithm foreach family generated from a �xed A but not a uniformly polynomial-timealgorithm across the families, as the time is parameterized by A.

3.2.1 Bounded-width poset games

If a poset P has width k, that is, if k is the maximum size of any an-tichain in P , then there are only |P |k many positions at most in the game:if x0, x1, . . . , xn−1 ∈ P are the elements chosen by the players in the �rst nmoves of the game, then the resulting position is completely determined bythe minimal elements of the set {x0, . . . , xn−1}, i.e., an antichain of size ≤ k.

This means that, for constant k, one can compute the g-number of P inpolynomial time using dynamic programming. The exponent on the runningtime depends on k, however. For certain families of bounded-width posets,one can beat the time of the dynamic programming algorithm; for example,one can compute the g-number of width-2 games in linear time.

4 Lower bounds

In this section we give some lower bounds on game complexity. There is avast literature on combinatorial game complexity, and we make no attemptto be thorough, but rather concentrate on poset game complexity.

22

Page 23: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

4.1 A note about representations of games

The complexity of a game depends quite a bit on its representation. Thechoice of representation is usually straightforward, but not always. For ex-ample, how should we represent an N-free poset? Just by its Hasse diagram,or by an expression for the poset in terms of single points and parallel unionand series union operators? The results of Valdes, et al. [30] show that onerepresentation can be converted into the other in polynomial time, so thechoice of representation is not an issue unless we want to consider complex-ity classes within P or more succinct representations of posets, as we will dobelow. There, fortunately, our hardness results apply to either representa-tion.

Even if the representation of a game is clear, the results may be coun-terintuitive. For example, how should we represent members of the class ofall �nite games? In Section 2, we de�ned a game as an ordered pair of itsleft and right options. We must then represent the options, and the optionsof options, and so on. In e�ect, to represent an arbitrary �nite game explic-itly, we must give its entire game tree (actually, game DAG, since di�erentsequences of moves may end up in the same position). Under this represen-tation, there is a straightforward algorithm to compute the outcome of anygame: use dynamic programming to �nd the outcome of every position in thegame. Since every position is encoded in the string representing the game,this algorithm runs in polynomial time.

What makes a game hard, then, is that we have a succinct representationfor it that does not apply to all games. For example, the obvious represen-tation of a poset game is the poset itself, and the number of positions istypically exponential in the size of the poset. Subfamilies of poset gamesmay have even more succinct representations. For example, a Nim game canbe represented as a �nite list of natural numbers in binary, giving the sizes ofthe stacks, and a game of Chomp can be represented with just two naturalnumbers m and n in binary, giving the dimensions of the grid. Notice thatthis Chomp representation is signi�cantly shorter than what is needed torepresent an arbitrary position in a Chomp game; the latter is polynomialin m+ n.

In what sense does �nding a winning strategy in Chomp reduce to deter-mining the outcome of Chomp games? We already know that every Chompgame is an ∃-game because it has a maximal point. We could �nd a winningstrategy if we were able to determine the outcome of every Chomp posi-tion, but even writing down a query to an �outcome oracle� takes time linearin m + n, which is exponential in the input size. The more modest goalof �nding a winning �rst move may be more feasible, because the position

23

Page 24: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

after one move is simple enough to describe by a polynomial-length querystring. To our knowledge, no e�cient algorithm is known to determine theoutcome of an arbitrary Chomp position after a single move, even allowingtime (m+ n)O(1).

We will more to say about representations below when we discuss lowerbounds for poset games within the complexity class P.

4.2 Some PSPACE-hard games

Many games have been shown PSPACE-hard over the years. Early on, Evenand Tarjan showed that Hex generalized to arbitrary graphs is PSPACE-complete [7]. A typical proof of PSPACE-hardness reduces the PSPACE-complete True Quanti�ed Boolean Formulas (TQBF [26]) problem to theoutcome of a game. We can consider a quanti�ed Boolean formula ϕ =(∃x1)(∀x2) · · ·ψ (where ψ is a Boolean formula in conjunctive normal form(cnf)) itself as a game, where players alternate choosing truth values forx1, x2, . . ., the �rst player (Right, say) winning if the resulting instantiationof ψ is true, and Left winning otherwise.14

TQBF seems ideal for encoding into other games. Thomas Schaefershowed a number of interesting games to be PSPACE-hard this way [21].One interesting variant of TQBF that Schaefer proved PSPACE-completeis the game where a positive Boolean formula ψ is in cnf with no negations,and players alternate choosing truth values for the Boolean variables. Schae-fer called this game Gpos(POS CNF). Unlike TQBF, however, the variablesneed not be chosen in order; players may choose to assign a truth value toany unassigned variable on any move. Left (who moves �rst) wins if ψ istrue after all variables have been chosen, and Right wins otherwise. Since ψis positive, Left always wants to set variables to 1 and Right to 0.

As another example, consider Geography. The input is a directedgraph G and a designated vertex s of G on which a token initially rests. Thetwo players alternate moving the token on G from one node to a neighboringnode, trying to force the opponent to move to a node that has already beenvisited. Geography is a well-known PSPACE-complete game [21, 24]. In[19], Lichtenstein & Sipser show that Geography is PSPACE-completeeven for bipartite graphs.

An obvious way to turn Geography into a black-white game is to colorthe nodes of graph G black and white. Each player is then only allowedto move the token to a node of their own color. Since moves are allowed

14This is technically not a combinatorial game by our de�nition, because the end condi-tion is di�erent. One can modify the game slightly to make it �t our de�nition, however.

24

Page 25: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

only to neighboring nodes, the black-white version is equivalent to the un-colored version on bipartite graphs. The standard method of showing thatGeography is PSPACE-complete is via a reduction from True Quanti�edBoolean Formulas (TQBF) to Geography (see for example [24]). Observethat the graph constructed in this reduction is not bipartite. That is, thereare nodes that potentially may be played by both players. Hence, we can-not directly conclude that the black-white version is PSPACE-complete.However, in [19] Lichtenstein & Sipser show that Geography is indeedPSPACE-complete for bipartite graphs.

We now consider the game Node Kayles. This game is de�ned on anundirected graph G. The players alternately play an arbitrary node from G.In one move, playing node v removes v and all the direct neighbors of vfrom G. In the black-white version of the game, we color the nodes blackand white. Schaefer [21] showed that determining the winner of an arbitraryNode Kayles instance is PSPACE-complete. He also extended the reduc-tion to bipartite graphs, which automatically yields a reduction to the black-white version of the game (see [12]). Therefore, black-white Node Kaylesis also PSPACE-complete.

The game of Col [1] is a two-player combinatorial strategy game playedon a simple planar graph, some of whose vertices may be colored black orwhite. During the game, the players alternate coloring the uncolored verticesof the graph. One player colors vertices white and the other player colorsvertices black. A player is not allowed to color a vertex neighboring anothervertex of the same color. The �rst player unable to color a vertex loses. Awell-known theorem about Col is that the value of any game is either xor x + ∗ where x is a number. Removing the restriction that Col gamesbe played on planar graphs and considering only those games in which novertex is already colored, we get a new game, GenCol (generalized Col). Itis shown in [10] that GenCol is PSPACE-complete; furthermore, GenColgames only assume the two very simply game values 0 and ∗.

In [20], Stockmeyer & Chandra give examples of games that are completefor exponential time and thus provably infeasible.

4.3 Lower bounds for poset games

Until recently, virtually no hardness results were known relating to posetgames, and the question of the complexity of determining the outcome of agame was wide open, save the easy observation that it is in PSPACE.

For the moment, let PG informally denote the decision problem of de-termining the outcome of a arbitrary given (impartial) poset game, that is,whether or not the �rst player (Alice) can win the game with perfect play.

25

Page 26: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

The �rst lower bound on the complexity of PG we are aware of, and it is amodest one, was proved by Fabian Wagner [31] in 2009. He showed that PGis L-hard15 under FO-reductions (First-Order reductions). This is enoughto show, for example, that PG /∈ AC0. Soon after, Thomas Thierauf [28]showed that PG is hard for NL under AC0 reductions.16 A breakthroughcame in 2010, when Adam Kalinich, then a high school student near Chicago,Illinois, showed that PG is hard for NC1 under AC0 reductions [16]. For theproof, he invents a clever way to obliviously ��ip� the outcome of a game,i.e., to toggle the outcome between ∃ and ∀. This allows for the simulation ofa NOT-gate in an NC1 circuit. (An OR-gate can be simulated by the seriesunion construction of De�nition 1.2. See below.)

The astute reader will notice that Kalinich's result appears to be weakerthan the other two earlier results. In fact, the three results are actually in-comparable with each other, because they make di�erent assumptions abouthow poset games are represented as inputs. We say more about this below,but �rst we mention that Wagner's and Thierauf's results both hold evenwhen restricted to Nim games with two stacks, and Kalinich's result holdsrestricted to N-free games. Modest as they are, these are currently the bestlower bound we know of for N-free poset games.

Very recently, the complexity of PG was settled completely by DanielGrier, an undergraduate at the University of South Carolina [13]. He showedthat PG is PSPACE-complete via a polynomial reduction (henceforth, p-reduction) from Node Kayles. Here, it is not important how a game isrepresented as an input, so long as the encoding is reasonable. His proofshows that PSPACE-completeness is still true when restricted to three-levelgames, i.e., posets where every chain has size at most three (equivalently,posets that are partitionable into at most three antichains). The games usedin the reduction are of course not N-free.

4.4 Representing posets as input

As we discussed above, for any of the various well-studied families of posetgames (Chomp, Divisors, Nim, etc.), there is usually an obvious and nat-ural way to represent a game as input. For example, an instance of Chompcan be given with just two positive integers, one positive integer for Divisors,and a �nite list of positive integers for Nim, giving the heights of the stacks.When considering arbitrary �nite posets, however, there is no single naturalway to represent a poset as input, but rather a handful of possibilities, and

15L is short for LOGSPACE.

16NL is nondeterministic LOGSPACE.

26

Page 27: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

these may a�ect the complexity of various types of poset games. We considertwo broad genres of poset representation:

Explicit The poset is represented by an explicit data structure, includingthe set of points and the relations between them. In this representation,the size of the poset is always comparable to the size of the input.

Succinct (Implicit) The poset is represented by a Boolean circuit with twon-bit inputs. The inputs to the circuit uniquely represent the pointsof the poset, and the (1-bit) output gives the binary relation betweenthese two inputs. In this representation, the size of the poset can beexponential in the size of the circuit.

Within each representational genre, we will consider three general approachesto encoding a poset P , in order from �easiest to work with� to �hardest towork with�:

Partial Order (PO) P is given as a re�exive, transitive, directed acyclicgraph, where there is an edge from x to y i� x ≤ y.

Hasse Diagram (HD) P is given as a directed acyclic graph whose re�ex-ive, transitive closure (i.e., reachability relation) is the ordering ≤. Thegraph then gives the Hasse diagram of P .

Arbitrary (binary) Relation (AR) An arbitrary directed graph (or ar-bitrary binary relation) is given, whose re�exive, transitive closure isthen a pre-order whose induced partial order is P . (Equivalently, Pis the set of strongly connected components, and ≤ is the reachabilityrelation between these components.)

The �rst two (PO and HD) must involve promises that the input satis�esthe corresponding constraint, so problems in these categories are posed aspromise problems. Notice that the PO promise is stronger than the HDpromise, which is stronger than the AR (vacuous) promise. So in eitherthe Explicit or Succinct cases, the complexity of the corresponding problemsincreases monotonically as PO→ HD→ AR.

We will ignore some additional subtleties: In the explicit case, is thegraph (or relation) given by an adjacency matrix or an array of edge lists?In the succinct case, should we be able to represent a poset whose size is nota power of 2? For example, should we insist on including a second circuitthat tells us whether a given binary string represents a point in the poset?These questions can generally be �nessed, and they do not a�ect any of theresults.

27

Page 28: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

4.5 The decision problems

The two genres and three approaches above can be combined to give sixversions of the basic decision problem for arbitrary posets: the three ex-plicit problems PG(Explicit,PO), PG(Explicit,HD), and PG(Explicit,AR);and the three succinct problems PG(Succinct,PO), PG(Succinct,HD), andPG(Succinct,AR). We will de�ne just a couple of these, the others beingde�ned analogously.

De�nition 4.1. PG(Succinct,HD) is the following promise problem:

Input: A Boolean circuit C with one output and two inputs ofn bits each, for some n.

Promise: G is acyclic, where G is the digraph on {0, 1}n whoseedge relation is computed by C.

Question: Letting P be the poset given by the reachability re-lation on G, is P an ∃-game?

De�nition 4.2. PG(Explicit,AR) is the following promise problem:

Input: A digraph G on n nodes.Promise: None.Question: Letting P be the poset given by the reachability re-

lation on the strongly connected components of G, is P an∃-game?

We also can denote subcategories of poset games the same way. Forexample, Nim(Explicit,HD) is the same as PG(Explicit,HD), but with theadditional promise that the poset is a parallel union of chains; for any k > 0,Nimk(Explicit,HD) is the same as Nim(Explicit,HD) but with the additionalpromise that there are at most k chains; N-Free(Succinct,PO) is the sameas PG(Succinct,PO) with the additional promise that the poset is N-free.

4.6 The �rst results

Here are the �rst lower bounds known for poset games, given roughly inchronological order. The �rst four involve Nim; the �rst two of these considerexplicit games, and the next two consider succinct games. None of theseresults is currently published; proof sketches can be found in the extendedpaper.

Theorem 4.3 (Wagner, 2009). Nim4(Explicit,HD) is L-hard under AC0

reductions.

28

Page 29: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

The proof reduces from the promise problem ORD (order between ver-tices), which is known to be complete for L via quanti�er-free projections[8, 15].

Theorem 4.4 (Thierauf, 2009). Nim2(Explicit,AR) is NL-hard under AC0

reductions.

The proof reduces from the reachability problem for directed graphs,which is NL-complete under AC0-reductions.

The next result about succinct poset games is straightforward.

Theorem 4.5 (F, 2009). Nim2(Succinct,PO) is coC=P-hard under p-re-ductions.

The idea here is that, for any L ∈ coC=P and any input x, we producetwo NIM stacks, and x ∈ L if and only if they are of unequal length.

Theorem 4.6 (F, 2009). Nim6(Succinct,HD) is PSPACE-hard under p-re-ductions.

The proof uses a result of Cai & Furst [4] based on techniques of DavidBarrington on bounded-width branching programs. Recall that S5 is thegroup of permutations of the set {1, 2, 3, 4, 5}. Their result is essentially asfollows:

Theorem 4.7 (Cai & Furst). For any PSPACE language L, there existsa polynomial p and a polynomial-time computable (actually, log-space com-putable) function σ such that, for all strings x of length n and positive integersc (given in binary), σ(x, c) is an element of S5, and x ∈ L if and only if thecomposition σ(x, 1)σ(x, 2)σ(x, 2) · · ·σ(x, 2p(n)), applied left to right, �xes theelement 1.

The idea is that we connect the �rst �ve NIM stacks level-by-level viapermutations in S5, as well as adding a couple of widgets. If the product ofall the permutions �xes 1, then we get �ve NIM stacks of equal length N + 1and one NIM stack of length N + 3, which is an ∃-game by the Sprague-Grundy theorem. If 1 is not �xed, then we get four stacks of length N + 1and two of length N + 2�a ∀-game by the same theorem.

Although the above results all mention Nim, the representations we useof a Nim game as a poset are not the natural one. Therefore, it is better toconsider these as lower bounds on N-free poset games, which are naturallyrepresented as posets.

The next results regard N-free games. They depend on Adam Kalinich'sgame outcome-�ipping trick. The trick turns a poset game A into another

29

Page 30: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

poset game ¬A with opposite outcome, starting with A and applying seriesand parallel union operations in a straightforward way. Here we describe asimpli�cation of the trick due to Daniel Grier:Given a poset A,

1. Let k be any (convenient) natural number such that 2k ≥ |A| (that is,A has at most 2k elements).

2. Let B := A/C2k−1.

3. Let C := B + C2k .

4. Let D := C/C1.

5. Finally, de�ne ¬A := D + A.

Exercise 4.8. Check that: (1) if g(A) 6= 0, then g(¬A) = 0; (2) if g(A) = 0,then g(¬A) = 2k+1. See the extended paper for a proof.

Observe that the size of ¬A is linearly bounded in |A|. In fact, |¬A| ≤6|A| if A 6= ∅.

Theorem 4.9 (Kalinich [16]). N-Free(Explicit,PO) is NC1-hard underAC0 reductions.

Proof sketch. We reduce from the Circuit Value problem for NC1 circuitswith a single output. Given an NC circuit C with a single output and whoseinputs are constant Boolean values, we produce a poset game P so that P isan ∃-game if and only if C = 1. We can assume WLOG that all gates in Care either (binary) OR-gates or NOT-gates. Starting with the input nodes,we associate a poset Pn with every node n in C from bottom up so that theoutcome of Pn matches the Boolean value at node n. P is then the posetassociated with the output node of C. The association is as follows:

• If n is an input node, we set Pn := ∅ if n = 0; otherwise, if n = 1, weset Pn := C1.

• If n is an OR-gate taking nodes ` and r as inputs, then we set Pn :=P`/Pr. (Recall Exercise 1.4.)

• If n is a NOT-gate taking node c as input, we set Pn := ¬Pc.

This transformation from C to P can be done in (uniform) AC0, producinga poset of polynomial size, provided C has O(log n) depth.

The next theorem is not published elsewhere.

30

Page 31: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

Theorem 4.10 (F, 2011). N-Free(Succinct,PO) is PP-hard under p-re-ductions.

To prove this, we generalize the Kalinich/Grier construction a bit.

De�nition 4.11. For any poset A and any integer t > 0, de�ne

Threshold(A, t) :=(A/C2k−t) + C2k

Ct

+ A ,

where k is any convenient natural number (the least, say) such that 2k >max(|A| − t, t− 1).

Note that ¬A = Threshold(A, 1). It can be checked that

g(Threshold(A, t)) =

{2k+1 if g(A) < t,0 if g(A) ≥ t.

(1)

We then use the Threshold(·, ·) operator to polynomially reduce any PPlanguage to N-Free(Succinct,PO).

4.7 A note on the complexity of the g-number

Of course, computing the g-number of an impartial game is at least as hard ascomputing its outcome, the latter just being a test of whether the g-numberis zero. Is the reverse true, i.e., can we polynomial-time reduce computingthe g-number to computing the outcome? For explicitly represented posetgames, this is certainly true. Given an oracle S returning the outcome of anyposet game, we get the g-number of a given poset game G as follows: queryS with the games G,G + C1, G + C2, . . . , G + Cn, where n is the number ofoptions of G (recall that that Ci is a NIM stack of size i). By the Sprague-Grundy theorem (Theorem 2.27), all of these are ∃-games except G+Cg(G),which is a ∀-game.

What about succinctly represented games? The approach above can'twork, at least for poset games, because the poset has exponential size. Sur-prisingly, we can still reduce the g-number to the outcome for succinct posetgames in polynomial time, using the threshold construction of De�nition 4.11combined with binary search. Given a succinctly represented poset P of size≤ 2n, �rst query S with Threshold(P, 2n−1). If S says that this is an ∃-game,then we have g(P ) < 2n−1; otherwise, g(P ) ≥ 2n−1. Next, query S withThreshold(P, 2n−2) in the former case and Threshold(P, 3 · 2n−2) in the lat-ter case, and so on. Note that in this reduction, the queries are adaptive,whereas they are nonadaptive for explicitly represented games.

31

Page 32: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

4.8 PSPACE-completeness

In this section we sketch the proofs of two recent PSPACE-completeness re-sults for poset game. The �rst, by Daniel Grier, is that the outcome problemfor general explicit (impartial) poset games is PSPACE-complete [13]. Thesecond is a similar result about the complexity of black-white poset games[10].

Theorem 4.12 (Grier [13]). Deciding the outcome of an arbitrary �nite posetgame is PSPACE-complete.

Here we describe the reduction but do not prove correctness. See theextended paper or [13] for a full proof.

Proof sketch. Membership in PSPACE is clear. For PSPACE-hardness,we reduce from Node Kayles. Let G = (V,E) (a simple undirected graph)be an arbitrary instance of Node Kayles. By altering the graph slightly ifnecessary without changing the outcome of the game, we can assume that|E| is odd and that for every v ∈ V there exists e ∈ E not incident with v.We can do this by adding two disjoint cliques to G�either two K2's or a K2

and a K4, whichever of these options results in an odd number of edges. Wethen construct the following three-level poset P from G:

• The points of P are grouped into three disjoint antichains, A, B, andC, with A being the set of minimal points, C the maximal points, andB the points intermediate between A and C.

• For each edge e ∈ E there correspond unique points ce ∈ C and ae ∈ A,and vice versa.

• We let B := V .

• For each edge e = {v1, v2} and b ∈ B, we have b < ce i� b = v1 orb = v2, and ae < b i� this is not the case, i.e., i� b 6= v1 and b 6= v2.This is illustrated in Figure 3.

This construction can clearly be done in polynomial time, given G.

Finally, we turn to the complexity of black-white poset games. The nexttheorem is the �rst PSPACE-hardness result for a numeric game.

Theorem 4.13. Determining the outcome of a black-white poset game isPSPACE-complete.

32

Page 33: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

v2· · · · · ·

ce

ae

v1

Figure 3: The < relations in P obtained from the edge e = {v1, v2} in G.

Proof sketch. Membership in PSPACE is straightforward. For hardness, wereduce from TQBF. We present the reduction in detail and brie�y describeoptimal strategies for the winning players, but we do not show correctness.See the extended version for a more detailed sketch and [10] for a full proof.

Suppose we are given a fully-quanti�ed boolean formula ϕ of the form∃x1∀x2∃x3 · · · ∃x2n−1∀x2n∃x2n+1f(x1, x2, . . . , x2n+1), where f = c1∧c2∧· · ·∧cm is in cnf with clauses c1, . . . , cm. We de�ne a two-level black-white poset(game) X based on ϕ as follows:

• X is divided into sections. There is a section (called a stack) for eachvariable, a section for the clauses (the clause section), and a section for�ne-tuning the balance of the game (balance section).

• The ith stack consists of a set of incomparable waiting nodes Wi above(i.e., greater than) a set of incomparable choice nodes Ci. We also havea pair of anti-cheat nodes, αi and βi, on all stacks except the last stack.For odd i, the choice nodes are white, the waiting nodes are black, andthe anti-cheat nodes are black. The colors are reversed for even i.

• The set of choice nodes Ci, consists of eight nodes corresponding to allcon�gurations of three bits (i.e., 000, 001, . . . , 111), which we call theleft bit, assignment bit and right bit respectively.

• The number of waiting nodes is |Wi| = (2n+ 2− i)M , where M is thenumber of non-waiting nodes in the entire game. It is important that|Wi| ≥ |Wi+1|+M .

• The anti-cheat node αi is above nodes in Ci with right bit 0 and nodesin Ci+1 with left bit 0. Similarly, βi is above nodes in Ci with right bit1 and nodes in Ci+1 with left bit 1.

33

Page 34: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

· · ·

clause nodes

node

W1

C1

α1 β1 α2 β2

W2

C2 C3

W3

balance nodes

dummy node

interrupt

Figure 4: An example game with three variables (n = 1). Circles representindividual nodes, blobs represent sets of nodes, and χ is the set of clausenodes. An edge indicates that some node in the lower level is less than somenode in the upper level. The dotted lines divide the nodes into sections(stacks, clause section and balance section).

• The clause section contains a black clause node bj for each clause cj,in addition to a black dummy node. The clause nodes and dummynode are all above a single white interrupt node. The clause node bjis above a choice node z in Ci if the assignment bit of z is 1 and xiappears positively in cj, or if the assignment bit of z is 0 and xi appearsnegatively in cj.

• The balance section or balance game is incomparable with the rest ofthe nodes. The game consists of eight black nodes below a white node,which is designed to have numerical value −71

2. All nodes in this section

are called balance nodes.

The number of nodes is polynomial inm and n, so the poset can be e�cientlyconstructed from ϕ.

A sample construction is shown in Figure 4. The idea is that players taketurns playing choice nodes, starting with White, and the assignment bits ofthe nodes they play constitute an assignment of the variables, x1, . . . , x2n+1.The assignment destroys satis�ed clause nodes, and it turns out that Blackcan win if there remains at least one clause node. The waiting nodes andanti-cheat nodes exist to ensure players take nodes in the correct order. Theinterrupt node and dummy node control how much of an advantage a clausenode is worth (after the initial assignment), and the balance node ensures theclause node advantage can decide whether White or Black wins the game.One can show that White (i.e., Right) can force a win when playing �rst ifand only if the formula is true.

34

Page 35: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

5 Open questions

Are there interesting games whose complexity is complete for a subclass ofPSPACE? The natural black-white version of GenCol is complete for theclass PNP[log], but the game itself and the reasons for its complexity are notso interesting. In this version, each uncolored node is reserved (�tinted�) forbeing colored one or the other color, e.g., some node u can only be coloredblack, while some other node v can only be colored white. Then the outcomeof this game depends only on which subgraph (the black-tinted nodes or thewhite-tinted nodes) contains a bigger independent set. Given two graphs G1

and G2, the problem of determining whether G1 has a bigger independentset than G2 is known to be complete for PNP[log] [27].

Fix a natural number k > 2. For poset games of bounded width k, de�nedin Section 3.2.1, is there an algorithm running in time o(nk)?

Grier's proof that the poset game decision problem is PSPACE-complete(Theorem 4.12) constructs posets having three levels, that is, whose maxi-mum chain length is three. What about two-level games? Those having asingle maximum or a single minimum element are easily solved. What isthe complexity of those with more than one minimum and more than onemaximum? Certain subfamilies of two-level posets have g-numbers that showregular patterns and are easily computed, or example, games where each el-ement is above or below at most two elements, as well as �parity uniform�games [9]. Despite this, we conjecture that the class of all two-level posetgames is PSPACE-complete, but are nowhere near a proof. Are there largersubfamilies of the two-level poset games that are in P?

A more open-ended goal is to apply the many results and techniques ofcombinatorial game theory, as we did in Theorem 4.13, to more families ofgames.

Finally, we mention a long-standing open problem about a speci�c in�-nite poset game: What is the outcome of the game N3 − {(0, 0, 0)}, where(x1, x2, x3) ≤ (y1, y2, y3) i� xi ≤ yi for all i ∈ {1, 2, 3}?

References

[1] E. R. Berlekamp, J. H. Conway, and R. Guy. Winning Ways for your

Mathematical Plays. Academic Press, 1982.

[2] C. L. Bouton. Nim, a game with a complete mathematical theory.Annals of Mathematics, 3:35�39, 1901-1902.

[3] S. Byrnes. Poset game periodicity. INTEGERS: The Electronic Journalof Combinatorial Number Theory, 3, 2003.

35

Page 36: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

[4] Jin-Yi Cai and Merrick Furst. PSPACE survives constant-width bot-tlenecks. Int. J. Found. Comput. Sci., 02(01):67, March 1991.

[5] J. H. Conway. On Numbers and Games. Academic Press, 1976.

[6] W. Deuber and S. Thomassé. Grundy sets of partial orders.www.mathematik.uni-bielefeld.de/sfb343/preprints/pr96123.ps.gz.

[7] S. Even and R. E. Tarjan. A combinatorial problem which is completein polynomial space. Journal of the ACM, 23:710�719, 1976.

[8] Kousha Etessami. Counting quanti�ers, successor relations, and loga-rithmic space. Journal of Computer and System Sciences, 54(3):400�411, 1997.

[9] S. A. Fenner, R. Gurjar, A. Korwar, and T. Thierauf. On two-levelposet games. Technical Report TR13-019, Electronic Colloquium onComputational Complexity, 2013.

[10] S. A. Fenner, D. Grier, J. Meÿner, L. Schae�er, and T. Thierauf. Gamevalues and computational complexity: An analysis via black-white com-binatorial games. Technical Report TR15-021, Electronic Colloquiumon Computational Complexity, February 2015.

[11] D. Gale. A curious nim-type game. Amer. Math. Monthly, 81:876�879,1974.

[12] M. Garey and D. Johnson. Computers and Intractability. W. H. Free-man and Company, 1979.

[13] Daniel Grier. Deciding the winner of an arbitrary �nite poset gameis PSPACE-complete. In Proceedings of the 40th International Collo-

quium on Automata, Languages and Programming, volume 7965-7966of Lecture Notes in Computer Science, pages 497�503. Springer-Verlag,2013.

[14] P. M. Grundy. Mathematics and games. Eureka, 2:6�8, 1939.

[15] Birgit Jenner, Johannes Köbler, Pierre McKenzie, and Jacobo Torán.Completeness results for graph isomorphism. Journal of Computer and

System Sciences, 66(3):549�566, 2003.

[16] A. O. Kalinich. Flipping the winner of a poset game. Information

Processing Letters, 112(3):86�89, January 2012.

[17] Donald E. Knuth. Surreal Numbers. Addison-Wesley, 1974.

[18] J. B. Kruskal. The theory of well-quasi-ordering: A frequently discov-ered concept. Journal of Combinatorial Theory, 13(3):297�305, 1972.

[19] David Lichtenstein and Michael Sipser. GO is polynomial-space hard.Journal of the ACM, 27(2):393�401, 1980.

[20] L. J. Stockmeyer and A. K. Chandra. Provably di�cult combinatorialgames. SIAM Journal on Computing, 8(2):151�174, 1979.

36

Page 37: The Computational Complexity Columnarvind/columns/column116.pdf · 2015-10-20 · torial games, including numeric and impartial games. The rest of the paper is devoted to computational

[21] T. J. Schaefer. On the complexity of some two-person perfect-information games. Journal of Computer and System Sciences,16(2):185�225, 1978.

[22] F. Schuh. Spel van delers (game of divisors). Nieuw Tijdschrift voor

Wiskunde, 39:299, 2003.

[23] A. N. Siegel. Combinatorial Game Theory, volume 146 of GraduateStudies in Mathematics. American Mathematical Society, 2013.

[24] M. Sipser. Introduction to the Theory of Computation (2nd Ed.).Course Technology, Inc., 2005.

[25] R. P. Sprague. Über mathematische Kampfspiele. Tohoku Mathematical

Journal, 41:438�444, 1935-1936.

[26] L. Stockmeyer. The polynomial-time hierarchy. Theoretical Computer

Science, 3:1�22, 1977.

[27] H. Spakowski and J. Vogel. θ2p-completeness: A classical approach fornew results. In Proceedings of the 20th Conference on Foundations of

Software Technology and Theoretical Computer Science (FST TCS),number 1974 in Lecture Notes in Computer Science, pages 348�360,2000.

[28] T. Thierauf, 2009. Private communication.

[29] J. Úlehla. A complete analysis of Von Neumann's Hackendot. Interna-tional Journal of Game Theory, 9:107�113, 1980.

[30] J. Valdes, R. E. Tarjan, and E. L. Lawler. The recognition of seriesparallel digraphs. SIAM Journal on Computing, 11:298�313, 1982.

[31] F. Wagner, 2009. Private communication.

37