The simplicity rule
A position where Left can move to a game worth and Right can move to a game worth is written . It has a value. The question is which number, and the answer is not the one most people guess.
It is , which happens to be the midpoint — a coincidence that this position is small enough to make, and that larger positions do not repeat. That coincidence is unfortunate, because it makes the rule look like averaging, and averaging is wrong.
The rule
If every option of is a number, and every one of Left’s options is strictly less than every one of Right’s, then
Simplest means born earliest, in a sense made precise below. It does not mean smallest, or closest to zero, or having the smallest denominator — though it usually coincides with the last of those.
has options and , so the value is the simplest number strictly between them. That is , and it is also the midpoint, which is why the example is a bad first one.
has options and . The midpoint is . The simplest number strictly between is , because is born long before . The value is .
has options and . The midpoint is , the simplest number strictly between is , and here they agree. But has midpoint and value , and has midpoint and value — the simplest number strictly between and , which is not and not .
Birthdays, which make “simplest” precise
Numbers are built by the same recursion as everything else, and each one has a birthday — the first day on which it exists.
On day zero, is born: that is .
On day one, the only options available are , so and are born: those are and .
On day two: is , is , is , is .
On day three: , , , , , and their negatives. And so on.
Simplest now means unambiguous: the number with the earliest birthday. Between any two numbers there is exactly one of earliest birthday, so the rule is well defined. Between and the earliest-born is , born on day one, while waits until day five.
The tree also makes the rule visually obvious. Between two numbers, the simplest one is the highest common ancestor’s relevant child — the first node the interval reaches as the tree is descended. Reading the value off the tree is faster than any calculation.
Only the dyadic rationals
A striking consequence: after finitely many days, only the dyadic rationals — fractions with a power of two as denominator — have been born.
is not among them. It never appears on any finite day, because every finite-day number has the form . To reach requires infinitely many days, at which point the construction produces it as — a limit rather than an entry.
This is not an artefact of the definition. It is a fact about finite games: a position that ends after moves cannot be worth a number of birthday greater than , so a finite game is never worth a third. Anybody who expected game values to be arbitrary rationals is expecting the wrong kind of object.
The same construction, run without the finiteness restriction, produces every real number and then continues past them into the ordinals. That is Conway’s surreal numbers, and the point worth taking here is that the number line of game theory arrives already built rather than assumed.
Why simplicity and not the midpoint
The rule has to be proved, and the proof is where the reason becomes visible.
The claim is that where is the simplest number in the interval, and to prove it, must be a second-player win.
Suppose Right moves first, either in to some , or in to . If Right moves in to , then , so Left wins. If Right moves in , the resulting number is an option of — and since is the simplest number in the interval, is not in the interval, so for some option. Left then moves in to that option and the difference is at least zero. Left wins.
The mirror argument covers Left moving first. Both cases turn on the same fact: being simplest means its own options fall outside the interval, so any move to one of them overshoots and can be punished.
That is the whole reason it is simplicity rather than the midpoint. The midpoint has no such property — its options are inside the interval, they do not overshoot, and the argument collapses. Simplicity is precisely the condition that makes the second player’s replies exist.
The rule in a game somebody plays
Abstract braces are unconvincing, so here is the rule doing work on a board.
In Hackenbush, a stalk of one blue edge is worth : Left cuts it and leaves nothing, Right cannot move at all. So it is .
A stalk of one blue edge with a red edge on top is worth . Left’s only move cuts the blue edge, taking everything, leaving . Right’s only move cuts the red edge on top, leaving one blue edge, worth . So the position is , and the rule gives .
Add another red edge above and the position becomes , worth . Each further red edge halves it, and the pattern is exactly the binary expansion.
That correspondence — position as binary numeral — is the most satisfying single fact in the elementary theory, and it exists because the simplicity rule is what it is. Averaging would have produced nothing so clean.
What the solver computed
simplestBetween(lo, hi) in lib/cgt.js finds the earliest-born number strictly between two dyadics. It works by the tree: start at zero, and if zero is not in the interval move towards it by integers until an integer lands inside, and otherwise bisect by halving the denominator until a dyadic lands inside.
That routine was wrong on the first attempt, in a way worth recording. It searched upwards from lo and returned the first number found, giving . That is the first number above the lower option, not the simplest number in the interval, and the two coincide only when the interval excludes zero. Simplicity is about distance from the root of the tree, not about position along the line, and a search that walks the line will get it wrong every time the interval straddles zero.
The corrected routine is checked against the game recursion. For each figure, lib/cgt.js builds the position from its options, reduces it to canonical form, and reads off the value; simplestBetween computes the same value from the rule; the build asserts they match. , , , — all confirmed by both routes.
When the rule does not apply
The hypothesis is doing real work, and there are two ways to violate it.
An option that is not a number. has a non-number on the right, so the rule says nothing. The position is , which is not a number at all — it is positive, and smaller than every positive number.
Left’s option not below Right’s. has options that are both numbers, but Left’s is larger. The rule requires and this fails. The position is not a number; it is a switch, worth offset by , and both players are eager to move in it because moving there is better than being moved on.
That second case is the important one, because it is where temperature comes from. A position where Left’s best option beats Right’s best is a position worth fighting over, and the whole theory of hot games lives in the gap the simplicity rule refuses to fill.
Reading a value off the tree
The tree turns the rule into a lookup, and it is worth doing a few by eye.
Between and : descend from the root. Zero is not strictly inside, so step to — inside. Answer , on day one.
Between and : neither integer is inside the open interval, so no integer works. Descend to the halves: is inside. Answer , on day four.
Between and : no integer, no half. The eighths: is inside. Answer .
Between and : zero is inside. Answer , on day zero, which is as simple as anything gets. The interval is wide and off-centre and the answer is still the root of the tree.
The pattern is always the same — take the earliest number the interval admits, and the interval’s width and position are otherwise irrelevant. A wide interval is not more complicated than a narrow one; it is simpler, because it catches an earlier node.
The value is not a score
A number attached to a position invites a misreading, and it is worth blocking.
A position worth does not mean Left is three-quarters of the way to winning, or has three-quarters of a move in hand, or would score under some scoring rule. It means something exact and stranger: that the position behaves, in every sum it might ever appear in, exactly as three-quarters of a free move would.
The operational content is entirely comparative. If a position is worth and it is added to a position worth , the total is zero and the second player wins. If it is added to something worth , the total is negative and Right wins. That is what the number asserts, and it asserts nothing else.
Which is why equality of games is defined by a difference and a winner rather than by a magnitude. The numbers are useful because they compose, not because they measure.
Integers, and moves in hand
The integers deserve a sentence of their own, because they are the one case where the value does have a plain reading.
A position worth , for positive whole , is worth exactly free moves to Left. Left can move times before running out, Right cannot move at all, and adding such a position to any other gives Left moves of slack.
In Hackenbush that is a stalk of blue edges. Left cuts the top one times; Right, with no red edge to cut, is helpless from the start.
So integers are moves in hand, and fractions are the interpolation between them that the tree forces. A position worth is not half a move in any operational sense — it is the position that, doubled, is worth one move, which is a weaker and more precise statement.
Numbers avoid numbers
One theorem sits so close to this rule that it belongs here.
If a position is a number, moving in it is a mistake. More precisely, in a sum where some component is a number and some is not, there is always a move at least as good outside the number.
The intuition is that a number is a position with no urgency — the value is fixed and moving in it only gives ground. Formally, if is a number and is one of Left’s options, then , so Left moving in strictly reduces the total.
This is why numbers are described as “cold”: they are the parts of the position nobody wants to touch, the settled territory, the moves saved for when there is nothing else. In a Go endgame it is exactly the distinction between a position worth points and a position worth playing, and it is the reason temperature theory can order the moves at all.
Who found it, and when
The simplicity rule is Conway’s, from around 1970, published in On Numbers and Games in 1976. Its context there is unusual: the book constructs the real numbers and the ordinals from the same recursion, in the same chapters, and games appear as the general case of which numbers are a special one.
That ordering is deliberate and is the opposite of how the subject is normally presented. Conway does not start with games and discover that some are numbers. He starts with a construction, observes that it produces numbers, and then observes that it produces a great deal more. The simplicity rule is the theorem that identifies which of the products are numbers and what they are worth.
Donald Knuth’s Surreal Numbers, published in 1974 before Conway’s own book, presented the number construction as a novella. It is the only mathematical result to have been popularised before it was published.
Where the model stops
Both option sets must be numbers, and Left’s must be below Right’s. Neither is a technicality; the two failure modes are the two most interesting classes of position in the subject.
Finitely born numbers are dyadic. Anybody looking for a game worth is looking for an infinite game.
Simplest is a statement about the tree, not the line. This is where implementations go wrong, and it went wrong here.
A value is not a move. Knowing a component is worth does not say what to play in it — and by the theorem above, the answer is usually to play somewhere else entirely.
The ladder from here
Next rungs: canonical form, which makes values unique and gives the algorithm for computing them; the number tree developed properly, with birthdays as ordinals; switches and mean values, for the positions the simplicity rule rejects; and the theorem that numbers avoid numbers, proved rather than motivated.
Further along, infinitesimals — the values that are positive and smaller than every number on the tree, which the simplicity rule cannot produce and which decide most close games.