[Welcome to Sensei's Library!]

StartingPoints
ReferenceSection
About


Paths
CGTPath

Referenced by
CombinatorialGame...

Homepages
Tom

 

Tom's technical introduction to CGT
Path: CGTPath   · Prev: TreeRepresentation   · Next: SurrealNumbers
   

Table of contents

Introduction

Some people have commented that it is difficult for the uninitiated to get an understanding of what Combinatorial Game Theory is from the pages about it on Sensei's Library. I take this as evidence for an opinion of mine: that it is not possible to get a proper understanding of technical subjects without some familiarity with the technicalities of those subjects.

I am aware that I'm in a minority in holding this opinion. For this reason, and because I find that technical pages can lose their focus from having too many people contributing, I have personalised this page.

It seems a bit against the spirit of wiki to personalise a reference page. If anyone thinks I'm wrong to take this approach, please add a comment to that effect. Also, if you have any other comments or corrections please add them in, but be prepared to be edited! I am particularly interested in comments from those who have been unable to understand something on this page.

I think the first thing to say about CGT is that it is maths. In order to understand it, I think it is necessary to understand some of the maths it uses. The good news is that for a practical understanding of CGT, the main bit of maths you need is a very basic understanding of set theory.

Set theory

A 'set' is the mathematical formalisation of the everyday concept of a 'collection of objects'. A set is determined by the objects it contains in the sense that sets A and B are equal if and only if they contain the same objects.

If the set A contains the objects a,b and c and no others then we write A={a,b,c}. We call a,b and c the 'elements' or 'members' of A. Since a set is determined by the objects it contains,

{a,b,c}={a,c,b} and {a,b,c}={a,a,b,c}.

In order for set theory to be interesting, it is necessary that some objects exist, which can be members of our sets. It turns out that set theory can lift itself by it's own bootstraps in this respect. There is a set containing no elements. We can tell that there is only one, because sets are determined by their elements. We call this set the empty set and write it {}.

Once we know the empty set exists, we can produce others. For example {{}}: the set containing only the empty set. Then {{{}}} and {{},{{}}}. Once we get started, there are loads of sets.

Game-forms

A game-form G is a pair of sets: GL and GR of game-forms. We call GL the set of left options of G and GR the set of right options. If GL={a,b,c} and GR={d,e,f} then to save symbols we write G={a,b,c|d,e,f} or even G= a,b,c|d,e,f.

Informally, G is supposed to represent a two player game in which either of the two players 'left' and 'right' (for go read 'black' and 'white') may have the first move. If left has first move, for example, he chooses one of elements gL of GL. After left's move, the game gL remains in which either of the two players may have the first move etc. Although we have found it convenient to set things up to allow for non-alternating play, in CGT, for a single game, we suppose that play alternates and that the winner is the last player to make a move.

The definition of 'game-form' may seem a bit incestuous. If you skiped the section on set theory, it may be hard to see how it gets off the ground. Since the empty set is a set of game-forms (it has no elements, so all its elements are game-forms), there is a game-form {|} which we call 0.

Once we know the zero game-form exists, we can produce others, for example {0|}, {|0} and {0|0}. We call these game-forms 1, -1 and * respectively. Now we can produce more game forms, some of which we also name:

  • {1|} = 2
  • {0|1} = 1/2
  • {1|-1}
  • {-1|0}=-1/2
  • {|-1}=-2
  • {0|*}=up
  • {1|1}.

You can see that once we get started, there are loads of game-forms.

We introduce the notion of the opposite: -G of a game-form G. This opposite is also a game form. If G={a,b,c|d} then we define -G={-d|-a,-b,-c}. For simplicity, an example rather than the general form has been given, but the general form should be clear.

You might think that we now have to define what we mean by -a,-b etc, but since a,b etc are themselves game forms, we can apply the defintion recursively to these. Continuing in this way, we will eventually have to define the set of opposites of the elements of the empty set. Since there are no such elements, there are no such opposites, so the set of opposites is itself the empty set.

Informally, -G is the game G but with the players: left and right, reversed.

It is easy to show that -(-G) is the same as G. This pattern of defining an operation or a predicate on a game or games in terms of the same operation or predicate on its left or right options occurs ubiquitously in CGT.

We introduce the notion of the sum G+H of two game-forms G and H. This sum is also a game-form. For simplicity again, only an example will be given, but the general form should be clear. In order to define G+H, it is sufficient to define its set of left options and its set of right options. If G={gl1,gl2|gr1,gr2} and H={hl1,hl2|hr1} then the set of left option of G+H is {gl1+H,gl2+H,G+hl1,G+hl2} and the set of right options is {G+hr1,gr1+H,gr2+H}.

Informally, G+H represents the players playing the games G and H simultaneously. A move in the sum game is a move in one of the two summands. It is not coincidence that this is reminicent of the situation in a go endgame, where there are typically several distinct independent areas on the board, and at each move, a player can play a move in only one of them. It is not necessarily the case that when the game G+H is played, the moves in the game G will be alternatley by left and right. This is why CGT is set up to allow non-alternating play in a game.

It is easy to show that G+H=H+G.

We introduce a relation 'greater than or equal to' (written >=) between two game-forms. We say G>=H if for no left options hL of H, is hL>=G and for no right options gR of G is H>= gR.

Informally, left's position in G is at least as good as it is in H. More precisely, left wins if right starts in the game G+(-H) It is easy to show that G>=G, and more challanging to show that if G>=H and H>=K then G>=K.

Games

We are now in a position to define what we mean by a 'game' in the sense of combinatorial game theory. There is more information than we need in the structure of a game-form. We will treat two game-forms G and G' as equivalent, if for all game-forms H, and with either left or right starting, with optimal play, the games G+H and G'+H have the same winner. It turns out that game forms G and H are equivalent in this sense if and only if both G>=H and H>=G.

Formally, a game is a set of all game-forms equivalent to some particular game-form. In practise, game-forms are mostly interesting because they can be used to define games, so we confound the game-forms with the games. Thus we tend not to distinguish between two equivalent game forms and write for example {-2|}=0.

We define opposites, sums and 'greater than or equal to' for games in terms of the equivalent notions for game-forms. For example, if G and H are game forms corresponding to the games G and H then G+H is defined to be the game corresponding to the game form G+H.

It is not obvious 'a priori' that these definitions make any sense. It seems possible that these concepts might depend on which representative game form corresponding to the relevent game is chosen. It happens that one can prove that this concern is unfounded.

It also turns out to be justifyable to express a game in terms of sets of left and right options which are themselves games. In other words, if game-form represenatives of those options are chosen and used to define a game form, that game form is equivalent to that which would be defined by other representatives.

After all this work, we can prove lots of powerful things about games, for instance, for all G, H and K.

  • G+0=G.
  • G+H=H+G.
  • G+(H+K)=(G+H)+K.
  • G+(-G)=0.
  • G>=G.
  • G>=H and H>=G implies G=H.
  • G>=H and H>=K implies G>=K.
  • G>=H implies G+K >= H+K.

Conclusion

If you have understood all that, congratulations! You deserve a pizza (entitlement exchangeable for a curry, or any other dish with a similar level of unhealthyness). I think you now have a good understanding of what combinatorial game theory is about. I hope it helps you to understand the pages on SL explaining its applications to go.


Thanks to the following for helpful comments and corrections

deg,Bill



Path: CGTPath   · Prev: TreeRepresentation   · Next: SurrealNumbers
This is a copy of the living page "Tom's technical introduction to CGT" at Sensei's Library.
(OC) 2004 the Authors, published under the OpenContent License V1.0.