Holigor ponders Yose Principles and theory

    Keywords: EndGame, Theory

Playing yose is simple. Just calculate correctly the value of the move and play the largest of them. If there is a sequence of the games with the values {2, 1.5, 1, 0.5} then choosing the largest of them is always correct. The player who starts is sure to score 2 points more, so the game is worth 2 points. Choosing anything else than the largest moves loses something.

The problem is to calculate the value of the move correctly and in this respect I still don't know how to treat double sente situations.

Charles I certainly think this is a good place to start thinking about endgame theory. I would call this Model Zero, or One-Pass Model of the endgame.

It contrasts strongly with what comes out of CGT; which I'd call Model Omega, the ultimate model (in which one can carry out proofs).

A difficulty for anyone approaching the theory is that the natural Model One, based on miai counting, doesn't actually build on Model Zero. That is, if you look at Model One versus Model Zero Plus Reverse Sente, you get different answers: the second of these is a multi-pass model giving better answers in some cases.

You can incorporate double sente by making the plays effectively of infinite value (or, say, worth 1000 points). What is missing then is the fact that in real life absolute sente is a comparative rarity. In a sense that tells you something about endgame conditions: you are supposed to be able to tell absolute sente when you see it.

Black to play  

RafaelCaetano: Maybe I'm just repeating Charles, but anyway my question is more concrete: what's the largest move? Is it the best move?

I have to reformulate CGT now in notations closer to quantum mechanics which is more familiar territory for me.

Let us have two bags <| and |> in which the scores for black and white are collected. Let us have also operators that effects the bags B(n,m) and W(n,m). B(n,m) adds n moku to the black bag and subtracts m moku from the white bag.

Simplest game  

Depending on who plays firsts two possible final positions are <0|0> and <0|1>.

This can be rewritten as <0| B(0,0) + W(0,1) |0>.

The plus is used as or operation, so if one of the options is chosen all others dissapear.

The situation in the diagram can happen in any number of games and, generally, it is unknown who has sente. Therefore, one can assume that the probabilities of white playing first and black playing first are equal, i.e. 1/2.

Then, on average the score of this game is 1/2. So, one can apply the operation which can be called scoring to the this game.

SCORE (<0|B(0,0) +W(0,1)|0>) = 1/2* SCORE (<0|0>) + 1/2* SCORE(<0|1>) = -1/2

This is the miai score of the position, of course.

One can introduce simple operator b(p) = |p><0| = |p> which adds p moku to the black bag and subtracts p moku from the white bag. w(p) make the reverse thing. Therefore,

<0|B(0,0)+W(0,1)|0> = <0|-0.5> + <0| b(0.5) + w(0.5) |0>.

-0.5 + |0.5><0| + |0><0.5| = -0.5 + |0.5> + <0.5|

Of course, p is the value of the move. Let us call this a miai form of the yose game. The miai form is a sum of the score and game in which both white and black moves have the same value.

Complex game  

Possible end positions are <0|0>, <0|1> and <0|2>.

The game is

<0|B(0,0)(B(0,0)+W(0,1)) + W(0,2)|0>

The notation B(m,n) is used for the moves that close the bag. Other moves may be denoted as B(0,0) or simply B. The values of these moves that do not close the bags will be calculated later. The record of this yose game then looks as

<0| B(B+W(0,1))+W(0,2)|0>

Reducing this game to the miai form starts from the innermost blackets.


Formally one can write


The miai form of game in the brackets may be neglected now for the purpose of the calculations.

<0|B(0,-0.5)+W(0,2)|0> = <0| 0.5*(-0.5) + 0.5*(-2) + b(0.75) +w(0.75) |> = <0| -1.25 + b(0.75) + w(0.75) |0>

To get the whole game one has to put the neglected miai game back

<0| -1.25 + b(0.75)(b(0.5)+w(0.5))+w(0.75) |0>

-1.25 + |0.75>( |0.5> + <0.5| ) + <0.75|

This is the miai form of the complex game. In general case the depth of the tree and the population of the branches may be arbitrary.

Big treasure  

The possible end positions are <0|0>, <0|8>, <0|9> and <0|10>. These end positions are connected with some moves.

<0|B (B (B(0,0)+W(0,8))+W(0,9))+ W(0,10)|0>

Starting form the innermost

<0|B (B (-4 + b(4)+w(4))+W(0,9))+W(0,10)|0>

Next reduction

<0|B(0,0)(-6.5 +b(2.5)(b(4)+w(4))+w(2.5))+W(0,10)|0>

The final reduction to the miai form.

<0|-8.25 + b(1.75)(b(2.5)(b(4)+w(4))+w(2.5))+w(1.75)|0>

-8.25 + |1.75> ( |2.5> + (|4> + <4|) + <2.5|) + <1.75|

The value of the move is 1.75 .

The interesting point about this situation that the value of the move increases as we go up the sequence. The move becomes sente in the follow-up and thus its value increases by from 0.75 in the complex case above to 1.75. Interesting. Obvious but interesting.

Two games. Let us consider a game of go which consists of the game above and another one.

<0|-8.25 + |1.75>(|2.5>(|4>+<4|)+<2.5|)+<1.75| |0>

<0| 2 + |2> + <2| |0>

If white plays first the game is

<0|9> ++ <0|0> = -9

If black plays first and chooses the largest move then the game is

<0|10> ++ <4|0> = -6

If black chooses a smaller move the game is reduced to

<0| -6.5 +|2.5>(|4>+<4|)+<2.5| |0>

<0| 2+ |2>+<2| |0>

Now, white has to choose a smaller move again. In this case the score becomes

(-6.5 + 2.5 -4) + (2-2) = -8

But if instead white chooses the larger move then the score would be

(-6.5 -2.5) + (2+2) = -5

So, the situation becomes complicated again. If these considerations are correct there are situations when the smaller move is preferable. Is there any rule?

Is something wrong with the procedure determining the value of the move? Common sense tells that the black's move is 1 point gote. It takes 2 points from white. The second move just cashes the gain of the first move in sente. Therefore, the procedure of the calculation of the values of the moves should be modified.

The only solution I see so far is to use the notions of sente and ambient temperature (defined as the largest move value outside the current game). If the ambient temperature remains higher than the largest value of the move in the chain the above miai form of the game remains valid.

If the temperature is lower than any move in the chain the above move becomes forced and the game should be reduced.

In this situation we may say that the probability of the moves are no longer the same, the probability of some move should the situation arise is 100%.


<0|-6.5 +|2.5>(|4>+<4|)+<2.5| |0> => <0|-6.5 + *<-1.5| + <2.5| |0>

where the asterisk means that the move is sente.

One has to reduce this to the miai form

-8.5 + |0.5>* +<0.5|

The same should apply to the whole game.

The reduction is

<0|-8.25 + |1.75>(|2.5>(|4>+<4|)+<2.5|)+<1.75| |0> => <0| -8.25 + |1.75>(-2.0 +|0.5>* +<0.5| ) + <1.75| |0>

<0| -9.25 + |0.75>(0.5>* +<0.5|) + <0.75| |0>

-9.25 + |0.75> (|0.5>* + <0.5|) + <0.75|

Further reduction of the miai for of the game is not needed till the ambient temperature is less than 0.75 .

The ambient temperature is determined by the value of the most external operator.

In this particular case the move is worth 0.75 with the sente follow-up. White has an option of replying, however.

Since the value of the move in such situations increases as we go deeper the moves would never be chosen by a perfect player before the reduction.

Thus, the procedure for the calculations is following:

  • Determine the temperature of the position.
  • Reduce all games that contain operators hotter than the temperature. The value of the games will drop as we've seen here.
  • Convert sente moves if external.
  • Play the largest move.
  • Repeat

The diagram notation is very useful. One has to plot the value of the move as the y-axis. Then the bifurcations on the trees happen at different heights. Thus one makes the correspondance between the values of the move and the cannonical forms.

    1   |      ^
    0.5 |     . .         ^
        |    .   .       . .

These are two simple games with the values of 1 and 0.5. The branch to the left adds to Black's bag. The branch to the right adds to White's bag.

In the general case one needs a finer scale.

To be true to the spirit of quantum mechanics the notation for the operators has to be changed to the true bra and ket forms. Thus

<m| b(p) + w(p) |n>


<m| |p> + <p| |n>.

Of course, the operators that add 0 points to the black's bag are white's moves and vice versa.

In the case when the game is finished with the last move one can use simple |>p<| = |p> + <p| notation for the expression above. But in the case when a move does not end the sequence a + sign as an indicaiton of choice is required.

To make the procedure very formal one has to make the following steps.

  • create a list of the final positions.
  • connect final positions with the moves.
  • calculate the values of the moves using the averaging procedure.

Splitting a game of go into a set of yose games is a very difficult task for a computer, though it is very obvious for human player.

There is one case when the global game tree cannot be splitted into separate trees in principal. This is the case of a ko. With a ko present moves that do not add points to bags but are sente moves should be taken into account. One has to denote such moves as |*>0<|. If a sente is played the turn does not change.


Basically one usually considers using the same procedure but an interesting averaging.


There are two final positions <0|0> and <0|1>. But connecting them is not easy. White needs two moves in a row to get the desired result.

<0| P |0><0| + K |0><1| |0>

This is a possible notation. K is the operator that would capture black's stone keeping sente, P is the availability of the scoring move for black.

Usually this position is assigned -0.33 value. This is justified by the following procedure, I guess. If there is a very large number of positions like this white will score a third of the points. Even when there 3 positions like this white will have a point. Interestingly, this result does not depend on whose turn it is if there are any ko-threats on the rest of the board.

This, actually, should be a separate issue of the theory. There are games of go the result of which does not depend on the turn.

There are rules for the addition of the yose games.

Simple miai. Two similar positions form a miai.

a ++ a = 0

Ko-miai. Three similar ko produce a deterministic result.

b ++ b ++ b = -1

For ko, there is an inverse situation !b. Then

b ++ !b = 0.

Addition means that the result does not change with the turn. They are miai situations.

Actually these are like C2, C3 symmetry axes.

Actually, if there is a miai situation, it can be used as a ko-threat. Yet, it is bad to start the ko before playing miai as the miai is your opponent's ko-threat then.

The miai from of the ko situation above would be

-0.33 + |0.33><0| + |0>?<0.67|

The question mark here denotes the probalility of winning the ko. In each individual game it is either 0 or 1. If this probability is 0 then black is in no hurry to connect the ko. The move is not urgent. If this probability is 1 then the play is urgent and saves a point for black.

This is similar to the idea of the ko-monster.

A better notation for the ko would include the value of possible compensation. In this particular case the player has to be able to win the ko with no compensation at all. Thus, the notation should be something like ?0?.

Then one can introduce the arithmetics of ko.

|0.67>?0?<0| + |0><0.33| ++ |0.33><0| + |0>?0?<0.67| = 0

++ stands for the sum of several yose games into one game of go.

The possible win

Each individual yose game in the game of go is scored statistically to get the miai value of the game. Then a win or loss in this particular game is just the value of the move. Whether the move is played by black or white is not known when the yose game is analyzed. The game of go then is the sequence of the plays in separate yose games. The win or loss can be found for each particular case of the game of go. This win or loss is not large, it is, actually, less than the value of the largest move in the set.

I think that if one has a set of the yose games making one go game it is important to be able to calculate a possible win against the nature (or random opponent). That would be the opponent that cannot calculate the values of the moves and chooses then randomly. If the opponent always chooses the right move then the result of the yose is known, the game is basically over. Or, the only problem is to get the last move. Yet, if the opponent is not ideal then one can hope to win some points yet.

The list of ko-threats

The complete record of the game of go should include besides the list of the yose games, the list of the ko-threats with their values. One side may be a ko-master at certain value of the ko-threat and the ko-slave at the different level of the ko threat. Then the complete analysis may be performed. Sente moves may be considered ko-threats though the set of the ko-treats is usually bigger.

The score of the gote part

There are several types of yose games. Till now we arranged them by the value. Let us arrange them in the following manner.

  • Sente
  • Reverse sente
  • Gote

Gote part is easy and it can be scored. To score the gote part one has to take the value biggest move - next biggest + 3rd - 4th and so on to the end.

Each pair adds someting to the score, so it is at least not zero and it is obvious is less than the value of the biggest move. If one removes the biggest move and passes the turn to the opponent the remaining game should score to not negative value.

Thus, the score of the gote part is between the value of the largest move and zero. This value should be compared with the value of the largest reverse sente move, therefore it is very important. If the gote part scores to zero (perfect miai) then one has to play reverse sente moves however small they might be. If the gote part scores close to the value of the largest move then the gote part has to be balanced first.

Usually one talks about miai, but in the game the correspondent might be not ideal. This is the generalization of the idea of miai.

Practically, counting the value of the gote part may be difficult, yet it can be performed, if not under the pressure of the clock, then in the analysis.

So, we have the next approximation to the sequence of moves before considering the mutual damage.

  • Sente
  • Balancing gote part
  • Reverse sente
  • Gote
  • Last ko

Interesting summation

I don't know yet how to formulate the summation rules but looking at the page Numbers one can see that for

  • G1 = |0.5> + <0.5|
  • G2 = |0.75>G1 + <0.75|
  • G3 = |0.875>G2 + <0.875|

G1 ++ G2 ++ G3 = 0

This is a little unexpected result. Choosing the largest value of the external move does not give any win. And it seems that it hurts if one does not see this.

Holigor ponders Yose Principles and theory last edited by MrTenuki on July 9, 2006 - 01:08
RecentChanges · StartingPoints · About
Edit page ·Search · Related · Page info · Latest diff
[Welcome to Sensei's Library!]
Search position
Page history
Latest page diff
Partner sites:
Go Teaching Ladder
Login / Prefs
Sensei's Library