Values

The class where nobody runs out first

Three stones in a row — blue, blue, red — and the position is worth exactly up. Clobber cannot produce anything else, because adjacency is symmetric — a player has a move precisely when the opponent does, and a game with that shape can never be worth a whole move to anybody.
19 min read 7 figures Who moves lastSmall things decide

Assumes: Infinitesimals

Three stones on three squares: blue, blue, red. A move takes one of a player’s own stones onto an orthogonally adjacent enemy stone, which is removed; the stone ends on the square it cleared and the square it came from is left empty. A player with no such move loses.

That position is worth exactly \uparrow. Not approximately up, not something up-like — the recursion returns {0}\{0 \mid \ast\}, which is up’s canonical form, and comparison confirms it against a constructed up. It is the smallest positive value in the subject, sitting on three squares of a game invented in 2001 — and it arrives there without anybody arranging for it.

Clobber: every value smaller than every number. Blue and red stones on a small board. A move takes one of your own stones onto an orthogonally adjacent enemy stone, which is removed. Because adjacency is symmetric, a player has a move exactly when the opponent does — so no position can ever be worth a whole move to anybody, and every value that comes out is an infinitesimal.
Fig. 1 Four Clobber rows and their computed values. The first is worth up, the second star, and the last is a position Right wins whoever starts — but not by a number, and not by a number’s worth of anything. Every value in the row is an infinitesimal, and that is not a coincidence about these four boards.

The first row is small enough to work through completely, and doing so is more convincing than any amount of assertion about classes.

The squares are blue, blue, red. Left has one move: the blue stone in the middle is the only one adjacent to a red, and taking that red leaves blue, empty, blue. No stone is adjacent to an enemy any more, so neither player can move again, and the position left behind is worth zero.

Right also has one move: the red stone takes the blue beside it, leaving blue, red, empty. There the two remaining stones are adjacent, so either player may take the other, and whoever moves does — that position is worth \ast.

So the three-stone row is {0}\{0 \mid \ast\}, and {0}\{0 \mid \ast\} is the canonical form of \uparrow.

Read as play, that is the whole character of up in one board. Left’s move ends the game immediately with Right unable to reply. Right’s move leaves a position in which whoever moves next wins, which means Right has not gained anything by moving — the advantage is real, it belongs to Left, and it is worth strictly less than one move. That is what a value smaller than every positive number is, and here it is three stones on squared paper rather than a brace expression.

Nobody can run out first

The reason every Clobber value is an infinitesimal takes one sentence, and the sentence is about the rules rather than about the values.

Adjacency is symmetric. If a blue stone stands next to a red one, then Left may take the red — and by exactly the same adjacency, Right may take the blue. So Left has a move if and only if Right has one, in the starting position and in every position reachable from it.

A game with that property is called all-small, and the definition is a recursion on the shape of the option lists:

G all-small    G=0   or   (GL,  GR,  and every option is all-small).G \text{ all-small} \iff G = 0 \;\text{ or }\; \bigl(G^L \neq \varnothing,\; G^R \neq \varnothing,\; \text{and every option is all-small}\bigr).

The atomic weight essay states the consequence: every all-small game is strictly between x-x and xx for every positive number xx. The reason is that a position worth a whole move has to have a move for one player and none for the other somewhere in it — that is what “a move ahead” means — and an all-small game never does.

Clobber is the cleanest example this site has of a game satisfying the condition by construction. Nothing has to be checked; the symmetry of the rule does it.

The way to see that the guarantee is about the rule and not about the board is to hold the board still and move the stones.

Clobber: every value smaller than every number. Blue and red stones on a small board. A move takes one of your own stones onto an orthogonally adjacent enemy stone, which is removed. Because adjacency is symmetric, a player has a move exactly when the opponent does — so no position can ever be worth a whole move to anybody, and every value that comes out is an infinitesimal.
Fig. 2 Three squares, four colourings, four values: \uparrow, \ast, \downarrow and — where no blue stone stands beside a red one — zero. Nothing about the geometry changed between these boards. What changed is which stones are adjacent to which, and adjacency is the symmetric relation the guarantee rests on, so the class is the same in all four while the value ranges from a Left win through a first-player win to a Right win.

The fourth board is the case that decides whether the definition is written correctly. Neither player can move on it, so the recursion bottoms out at once and the value is zero — and zero is all-small by the base case of the definition rather than by the clause about option lists. A definition that demanded both option lists be non-empty everywhere, with no exception at the bottom, would exclude the empty position and thereby exclude everything, since every game ends at one.

It is worth noticing how unusual that is. For nearly every other game here — Domineering, Toads and Frogs, Col, Cutcake — whether a position is all-small depends on the position, and the only way to find out is to look. Clobber is all-small because of a property of the move relation, and a property of the move relation holds in every position at once. A rule that can be read for a structural guarantee is worth a great deal more than one that has to be tested board by board, and this is the difference between knowing something about a game and knowing something about a position in it.

Checked anyway, over every position

A one-sentence argument is worth having and is not worth trusting on its own, because the sentence is about adjacency and the condition is about option lists, and the step between them is where a mistake would live.

So the generator carries out the audit. From each board drawn, it walks every position reachable by any sequence of moves by either player, and at each one asks whether Left having a move and Right having a move are the same statement. A single position where they differ would stop the build.

Clobber: every value smaller than every number. Blue and red stones on a small board. A move takes one of your own stones onto an orthogonally adjacent enemy stone, which is removed. Because adjacency is symmetric, a player has a move exactly when the opponent does — so no position can ever be worth a whole move to anybody, and every value that comes out is an infinitesimal.
Fig. 3 Four boards with two dimensions rather than one, including a position with a hole in it. The last is worth a value with no short name, and the audit behind these four boards covered every position they can reach. The count in the footer is the number examined, and none of them gave one player a move without giving the other one too.

That the audit has never rejected anything is not evidence that it is worthless. It is given something it must reject before anything is published: the game {0}\{0 \mid \,\}, worth 11, in which Left has a move and Right has none. If the all-small test ever stopped complaining about that, every “all-small” in every caption on this site would have quietly become an unchecked assertion.

Four boards is a sample, and a sample is a poor answer to a claim about every position. One row of Clobber is small enough to exhaust outright.

Every one-row Clobber position up to 8 squares. The value of every row over blue, red and empty, counted by value rather than by position. Ten values cover the great majority of the census, and all of them are infinitesimal — zero, star, multiples of up and down, and a handful of forms with no short name. The bars are how many rows carry each value.
Fig. 4 Every string of blue, red and empty up to eight squares — 9,840 rows — counted by the value each one carries rather than drawn. There are 111 distinct values between them and the distribution is savagely uneven: 3,568 rows are worth exactly zero, 2,450 are worth \ast, and 699 each are worth \uparrow and \downarrow. The bottom line is the claim: every one of the 9,840 is an infinitesimal, with the symmetry audit run over 2,742 positions reachable from the longest rows and no exception found.

The ratio is the part worth carrying. Nine thousand eight hundred and forty positions produce one hundred and eleven values, so a Clobber row is overwhelmingly likely to be worth something another row is already worth — and the four commonest values account for more than three quarters of the census. A game whose every position is an infinitesimal is not thereby a game with a rich supply of them.

Being small is not the same as being all-small

The condition and its consequence are easy to run together, and they are not the same thing.

Every all-small game is infinitesimal. The converse is false, and tiny is the standing witness: +1+_1 is greater than zero, smaller than every positive number, and not all-small, because deep inside it there is an option worth 1-1 in which only Right can move.

The consequence is a refusal rather than a wrong answer. Atomic weight is defined on the class picked out by structure, so a position that is merely small has no atomic weight to report — not a vague one, not a wide bracket, none at all — and the measurement in the next section declines +1+_1 outright rather than measuring it badly.

So there are two nested classes. The all-small games sit inside the infinitesimals, and the containment is strict. It is worth being precise about which one a theorem needs, because the useful theorems here almost all need the inner one.

What orders the class

Inside the class, numbers are useless: every number is an upper bound on the whole of it or a lower bound on the whole of it, so comparing against numbers separates nothing at all.

Compare any of the boards above against 1/10241/1024 and the answer comes back “less than” every time, which is a true statement that distinguishes nothing. Compare two of them against each other and the answer is informative. That is what “numbers are useless here” means in practice: not that comparison fails, but that it succeeds identically on every member of the class.

What does separate them is \uparrow itself, used as a unit. It is positive, it is inside the class, and its multiples march upward through the class rather than jumping over it. Atomic weight is the count of ups a position is worth, and comparison brackets it: the largest nn with Gn ⁣ ⁣G \geq n\!\cdot\!\uparrow and the smallest with Gn ⁣ ⁣G \leq n\!\cdot\!\uparrow.

The three-stone row worth up brackets to exactly [1,1][1,1]. The two-stone row worth star brackets to [2,2][-2,2], four wide, because a star is confused with everything within two ups in each direction. And the five-stone row worth {}\{\ast \mid \downarrow\} brackets to [2,1][-2,-1], which is a genuine partial answer: Right is ahead by somewhere between one and two ups, and comparison cannot narrow it further because the position has a star in reach. Three boards, three widths — nought, four and one — and the width is a fact about the star rather than about the size of the board.

The test a rule can be given

Clobber’s guarantee comes from adjacency being symmetric, and the general form of that is worth stating, because it turns “read the rule and hope” into a question with a yes or no.

Write down the condition under which Left has a move, and the condition under which Right has one. If the two are the same condition — not merely both true here, but the same sentence — then the game is all-small everywhere, and no position needs checking.

Clobber: Left can move means some blue stone is adjacent to some red one. Right can move means some red stone is adjacent to some blue one. Adjacency is symmetric, so those are one sentence.

And the games that fail it fail visibly. Domineering: Left needs two free squares one above the other, Right needs two side by side — different sentences, and a board can satisfy one and not the other. Toads and Frogs: a toad needs room to its right and a frog needs room to its left — different again, which is exactly why the strips in the next section move in and out of the class.

A second game with the same guarantee

Clobber is described above as the cleanest example on this site, and it is no longer the only one.

End-Nim is a row of heaps in which Left may take only from the leftmost non-empty heap and Right only from the rightmost. Apply the test: Left can move means some heap is non-empty. Right can move means some heap is non-empty. One sentence again — and when there is a single heap left it is both the leftmost and the rightmost, which is the case a reader checks first and the one the test handles without special pleading.

So End-Nim is all-small by construction too, and every one of its 5,460 small positions is therefore infinitesimal. That is not an observation about the census; it is the reason the census could not have come out otherwise, and it settles for every row of every length what the census settles for rows of six.

The two guarantees are worth setting side by side, because they are achieved differently. Clobber’s comes from a symmetric relation — adjacency, which does not care which end it is read from. End-Nim’s comes from two different conditions turning out to be the same one — the leftmost non-empty heap and the rightmost non-empty heap exist together, which is a fact about non-empty lists rather than about the game.

Two routes to one guarantee, and both are readable off the rulebook rather than measured on boards.

Which is what a structural guarantee is worth

That comparison sharpens the essay’s own point about why this matters.

A per-position test tells a reader about the position in front of them and nothing about the next one. A rule-level guarantee tells them about every position of the game at once — including the ones nobody has drawn, the ones too large to evaluate, and the ones a future essay will introduce.

And it makes a negative result available too. A game whose two move-existence conditions differ is not thereby never all-small; it is a game where the property has to be checked position by position, which is exactly the situation the Toads and Frogs strips below illustrate. The test does not classify every game — it identifies the ones that need no classifying.

That is the ordinary value of reading a rule for structure rather than computing a table, and it is worth having a second instance of, because one example makes a technique look like a fact about a game.

The same game, in and out of the class

Clobber is all-small everywhere. Most games are all-small only sometimes, and Toads and Frogs is a good place to watch the condition switch on and off.

Toads and frogs. Toads move right and frogs move left, one square into a gap or hopping over exactly one opponent. A player unable to move loses. It can be played on squared paper by anybody, and its values are immediately stranger than the game looks.
Fig. 5 Four Toads and Frogs strips. The first two are worth a half and a whole move; the second two are worth zero and star. The difference is the empty squares on the right: a toad with room to shuffle into has a move that no frog can answer, and a position with a spare move in it for one player is exactly a position that is not all-small.

The first strip is worth 1/21/2 and the second is worth 11, and neither is all-small — in both, Left has a move that costs Right nothing to allow, which is what a spare move is. The third and fourth are worth 00 and \ast, and both are all-small, because every toad is blocked by a frog and every frog by a toad.

That is the shape of the general situation. All-small is a property of a position, not of a game, and a game that produces numbers in the opening can produce nothing but infinitesimals in the endgame — which is why infinitesimals decide close games rather than being a curiosity at the edge of the theory.

Sums, and why the class is closed under them

The class would be much less useful if it were not closed under addition, and it is closed for the same reason it exists.

If GG and HH are both all-small, then in G+HG + H a player has a move exactly when they have one in GG or in HH — and each of those is a condition both players satisfy together. So both players have a move in the sum, or neither does, and every option of the sum is again a sum of all-small games. The induction closes.

Which part to move in. A sum, and every move one player has in it. Each row is a component, the option taken in it, and what the whole position becomes. The values of the parts say who wins; they do not say where to play, and the winning move here is in the component worth the least.
Fig. 6 A sum of two all-small positions with every one of Left’s moves listed and evaluated. Neither component is worth anything a number can express, and the whole is still decided — which is the practical content of the class being closed. The winning move is marked, and it was found by evaluating the whole position after each option rather than by any rule about the parts.

There is a second thing that figure shows and it is easy to miss. The two components are worth {}\{\ast \mid \downarrow\} and \uparrow, and neither of those is a number, so nothing about the sum can be settled by adding numbers. It is settled all the same, exactly, by adding the games and asking who wins — and the winning move is not in the component a player would guess at. Both facts are ordinary in this subject and both would be impossible in a theory that only knew how to add sizes.

That closure is why the class is the right one to build a measurement on. A decomposition of a real endgame into all-small components stays inside the class as it is added up, so a single number per component — the atomic weight — can be carried through the addition. Numbers do not behave that way in a hot position, and the sum of two switches is not a switch.

What the solver computed, and how

The Clobber values come from the same recursion as everything else on this site. A position is a board string, its Left options are the boards produced by every legal blue move, its Right options the boards from every red move, and the value is game(L, R) reduced to canonical form. The generator refuses to draw a board whose dimensions do not match its string, which is the kind of mistake that otherwise produces a plausible picture of the wrong position.

The all-small audit is separate from the value computation, deliberately. It walks the reachable positions and compares two move counts for zero-ness; it never looks at a value. That means the claim “these values are infinitesimal because the positions are all-small” is supported by two independent computations rather than by one computation and a restatement of it.

The site’s gate then checks the two against each other over five boards and a hundred and seventy-three positions: each board’s audit must find no asymmetric position, and allSmall applied to the value must agree. It also checks the containment is strict in the direction claimed, by requiring {0}\{0 \mid \,\} to be rejected and by requiring tiny to be rejected — the second of which is the interesting one, since tiny is infinitesimal and a test that confused the two conditions would pass it.

Where the model stops

Every Clobber board here is tiny in the ordinary sense of the word, and the ceiling is the audit rather than the value.

Clobber: every value smaller than every number. Blue and red stones on a small board. A move takes one of your own stones onto an orthogonally adjacent enemy stone, which is removed. Because adjacency is symmetric, a player has a move exactly when the opponent does — so no position can ever be worth a whole move to anybody, and every value that comes out is an infinitesimal.
Fig. 7 The two largest boards on this page, with the symmetry audit run over every position each can reach: 495 for the eight-square board, 1,921 for the nine-square one. Both values are short — zero and \ast — which is the ordinary state of affairs and not a reward for the work. Adding one square multiplies the audit by roughly four, and that is the wall this essay stops at.

Clobber on a five-by-five board is unsolved; the standard opening position on larger boards is a research problem, and nothing on this page bears on it. What the two boards above show is where the checking runs out, which is a much lower ceiling than where the theory does — the one-sentence argument about adjacency covers the five-by-five board and every board above it, and no audit here comes near.

Atomic weight brackets rather than determines. Where a star is in reach, comparison against multiples of up leaves four ups of slack in each direction, and the essay on atomic weight explains why. The single number the literature calls the atomic weight comes from a separate calculus with its own correction terms, and this site computes the bracket rather than that number.

Closure under addition is proved here for two summands and asserted for many. The induction is the same, but the figures show sums of two, because a sum of four all-small components with a listing of every option is a table nobody can read.

The audit is about reachable positions, not about all positions. It walks outwards from the boards drawn, so what it certifies is that those boards and everything they lead to satisfy the condition. That is the right scope — a position nobody can reach cannot affect the value — but it means the audit is evidence for the general argument rather than a proof of it. The general argument is the one sentence about adjacency, and it needs no computer.

Who found it, and when

The all-small games are Conway’s, and the atomic weight calculus that measures them is developed in Winning Ways (1982), where it is applied to Hackenbush Hotchpotch and to the endgames of Go. The name is deliberately awkward: it describes the option lists, and it is the consequence that is small.

Clobber is much later — Albert, Grossman and Nowakowski, who devised it in 2001 and presented it as a game whose every position is all-small by construction and whose analysis therefore lives entirely in the infinitesimal world. That was the point of inventing it. It is unusual for a combinatorial game to be designed around a value class rather than found and then analysed, and it is the reason Clobber makes a better illustration here than an older game would.

Where the ladder goes next

This is the fourth rung on the infinitesimals ladder, after the class itself, the count of ups and the values that carry a subscript. What is still missing from it is the lower end: the games that are infinitesimal with respect to up in the way that up is infinitesimal with respect to the numbers, of which tiny is one and by no means the only one.

The other direction the ladder can go is computational rather than structural. Deciding whether a position is all-small is a walk over its whole game tree, and the tree is the thing that gets expensive — which is where the theory meets the machine, and where a structural condition that can be read off the rules, as it can for Clobber, is worth a great deal more than one that has to be verified.

Part 4 of 5

One argument about Infinitesimals. The parts either side of it:

What links here

Essays that reach for this one mid-argument — the half of a link its own author cannot write down, the 8 sharing most with it of 23.

What this makes readable

Essays that declare this one a prerequisite.

The objects named here

The third axis, after the field and the series: the games, values and theorems themselves, and every essay that touches each one.

All-smallAtomic weightClobberComparisonInfinitesimalInfinitesimal comparisonPartizanStar (∗)TinyToads and FrogsUp (↑)Multiples of up