# Minimax / Discussion

Path: <= CGT path =>
Sub-page of Minimax

JanDeWit: You're confusing numbers and minimax outcomes :-)

Bill: The minimax outcomes indicate the stops of the game. They may include infinitesimals, but the stops are numbers.

• The numerical result when Black plays first is the Left stop;
• the numerical result when White plays first is the Right stop.

I hope that the new diagrams show that I was not confusing the two. ;-)

Bill: Note to Charles Matthews, 1/24/03. I know you reshuffled the original discussion, but, out of context, this does not make much sense. I went back to the referring page and could not easily find the original context.
Charles One can look at version 10 of Combinatorial Game Theory to see what Jan was talking about. The general approach here is to allow misconceptions to remain, but to hive off discussions based on them to separate pages. I'd say this could all be re-expressed, rather better. The term WikiButcher was coined for those too quick on the edit, and who over-use the right to delete old matter. I'd prefer to let at least one of the principals recast it.

JanDeWit: I took a look at On Numbers And Games by Conway in the local university bookstore today, so now I understand why 1 + (-1) = 0. You beat me to starting this page, Bill!

I'll adopt the convention of prefixing 'CGT' to any page on Combinatorial Game Theory not directly relating to Go, so my this is the list of references I've built up so far.

Bill, if you could shed some light on how to convert games to canonical form and some more standard terminology? That really would help me to bridge the gap from my self-taught understanding to knowing what all those research papers are about... I know * = Dame = {0|0}, but what does up = {0|*} mean in terms of Go? What is the 'tiny' operator? I think it means 0 || 0 | (-x) but what does that mean?

RafaelCaetano: It means that White can make a threat of x points, but Black has a good answer. White does not gain anything if Black answers. That is, a ko threat. Also, if Black moves first he can remove the threat.

But usually we talk about chilled go. See tiny for a example in chilled go.

Bill: Well, Rafael, it seems to me that we can remove this page. The original discussion has been largely edited away, so we have lost the context. In addition, I think that the material is now covered elsewhere on SL. I don't know if Jan De Wit is still around.

Charles I'd say, an edit.

Bill: What would you suggest keeping, Charles?

Charles So, minimax value is currently an alias for optimal play. Which is rather brusque and recursive, as an explanation. Otherwise minimax tends to be piped to game theory interface.

Bill: Yes, it appears that minimax is not fully explained here. Not that the original discussion here addressed that question, either. ;-)

JanDeWit: Arno, Morten, is there a way to put gifs/jpeg/bmps/whatevers on Sensei's? I really need to draw some game tree diagrams now! I could manage inlining from another site if that is necessary... Motion capture for handwaving would be cool as well ;-)

Jan de Wit: Writing a computer program to do this kind of stuff really helps in understanding. So far I can write:

```     i2g = intToGame -- converts integers to games
g1 = (i2g 6) ! (i2g (-10))
g2 = (i2g 8) ! (i2g (-8))
g3 = g1 ! g2
```

'value g1' gives "First player to go wins (fuzzy)" as does 'value g2', however 'value g3' returns "Second player to go wins(=0)". Not bad for 130 lines of code, eh? Those 130 lines also incorporate a basic mechanism for playing games interactively...

Bill: Congratulations on your nascent program. :-)

Strictly speaking, your conversion has to do with representation. In CGT integers are games.

What does your program do with {2 | 0 || 0 | -2} ?
How about {15 | 9 || 11 | -1} ?

Path: <= CGT path =>
Minimax / Discussion last edited by Phelan on January 4, 2007 - 08:31