Values

Infinitesimals

Some positions are positive — Left wins them whoever moves first — and smaller than every positive number, including a millionth and a millionth of that. They are the values that decide close games, and the smallest of them is a single move's worth of nothing.

\uparrow is the position {0}\{0 \mid \ast\}. Left can move to zero; Right can move to star.

It is greater than zero — Left wins it whoever moves first. It is also less than 11000000\tfrac{1}{1000000}, and less than every positive number there is. Both statements are provable and neither is a figure of speech.

Smaller than every positive number, and not zeroValues that sit between zero and every positive number. Up is genuinely greater than zero — Left wins it whoever moves — and genuinely less than a thousandth. Star is not comparable with zero at all. None of them is a number, and in a close game they are the entire margin.{0 | {0 | 0}}> 0< 1/1024outcome L{0 | {{0 | 0}, 0 | 0}}> 0< 1/1024outcome L↑∗{{0 | 0}, 0 | 0}‖ 0< 1/1024outcome N{0 | 0}‖ 0< 1/1024outcome N{{0 | 0} | 0}< 0< 1/1024outcome Rvaluecanonical formagainst 0against a thousandth↑ is positive and smaller than every positive number — which no real number is∗ is none of greater, smaller or equal — the order is partial, and that is the point
Fig. 1 The smallest values that are not zero. Up is positive, down is negative, star is confused with zero, and all three are smaller in magnitude than every positive number on the line.

Why up is positive

Show that Left wins \uparrow moving second, and that Left wins it moving first.

Left moves first. Left moves to 00. Right now has no move, and loses.

Right moves first. Right moves to \ast. Left then moves in \ast to 00, and Right has no move, and loses.

Both branches are Left wins, so \uparrow is in outcome class L, which is greater than zero. Nothing subtle happened; it is two lines of play.

Why up is smaller than every positive number

Take any positive number xx and show x<0\uparrow - x < 0, that is, Right wins x\uparrow - x whoever moves first.

Right’s strategy: move in x-x, repeatedly. Since xx is a positive number, x-x is negative, and Right has moves in it that keep it negative or take it to zero. Meanwhile Left’s moves in \uparrow run out after two plies, and Left’s moves in x-x only make it more negative.

The essential point is that xx is a number, so moving in it is never urgent and its value is a fixed reserve. Right spends that reserve one move at a time; Left, having exhausted \uparrow, has nothing left to spend. Right makes the last move.

So 0<<x0 < \uparrow < x for every positive number xx, however small. That is the definition of an infinitesimal, and it is a plain consequence of the two-move structure of \uparrow set against the arbitrarily long reserve of a number.

The corresponding negative is ={0}\downarrow = \{\ast \mid 0\}, which is -\uparrow, and is negative and larger than every negative number.

Star, which is neither

={00}\ast = \{0 \mid 0\} is not positive, not negative and not zero. Whoever moves first wins it, so it is confused with zero.

That makes \ast a different kind of small from \uparrow. Up has a sign; star does not. Star is an infinitesimal in the sense that it is smaller in magnitude than every number, but it cannot be placed on the line at all.

The relation between them is worth holding onto:

0,>0,,+>\ast \parallel 0, \qquad \uparrow > 0, \qquad \uparrow \parallel \ast, \qquad \uparrow + \uparrow > \ast

The last one is the useful fact and the one that surprises. A single up is confused with star, so a player holding \uparrow against \ast is in a first-player-wins situation. Two ups beat star outright. So \uparrow is a unit of something, and it takes two of them to overcome a star.

A green edge is not a numberGreen edges may be cut by either player, which makes the position impartial in that part. A single green edge is worth ∗ — a value that is neither positive, negative nor zero, and which no number can equal.not a numberoutcome N∗2not a numberoutcome N∗3not a numberoutcome N∗4not a numberoutcome Ngreen may be cut by either playerand that is enough to leave the number line
Fig. 2 Stars in Hackenbush. A stalk of green edges — each cuttable by either player — is worth the nimber of its length, and every nimber is confused with zero rather than placed beside it.

Where they come from

Infinitesimals are not exotic constructions. They are what ordinary positions are worth when both players are nearly out of useful moves.

Consider a Hackenbush position of a blue edge on a red edge, next to a red edge on a blue edge. Each part is worth a fraction, and the parts nearly cancel — the remainder is an infinitesimal, and which infinitesimal decides the game.

More strikingly, there is an entire class of games in which every position is infinitesimal. These are the all-small games: games in which, at every position, either both players have a move or neither does. Since neither player can ever be the only one with moves, no position can accumulate a numerical advantage, and every value is smaller than every positive number.

Clobber is all-small, and so is Cutthroat. In those games numbers never appear at all, the whole of the numeric machinery is idle, and infinitesimals are not a refinement — they are the only values there are.

Toads and Frogs is not all-small, which makes it the more instructive example. A strip of toads with empty space ahead of them gives Left moves and Right none, so its value is a plain integer. But arrange the pieces so that both sides are equally cramped and the infinitesimals appear immediately: the six-cell strip T.TFF is worth exactly uparrow\\uparrow, and TTF.F is worth downarrow\\downarrow. Both were found by enumerating every strip up to seven cells and evaluating it.

Toads and frogsToads 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.NN0Pblue toads move right · red frogs move leftevery value came out of the moves; none was chosen
Fig. 3 Toads and Frogs strips and their computed values. The values here are infinitesimal because both players run out of moves together, which is exactly the all-small condition.

Counting ups

Once infinitesimals dominate, the practical question becomes how to compare them, and the answer is a rough count.

\uparrow is the unit. A position worth \uparrow\uparrow (two ups) beats one worth \uparrow, which beats 00. Star sits confusedly among them: \uparrow \parallel \ast but >\uparrow\uparrow > \ast, so a star is worth somewhat less than two ups and not comparable with one.

The rough count is called atomic weight — approximately, how many ups a position is worth, ignoring differences of less than a star. A position of atomic weight two or more is a win for Left regardless of any stars floating around; a position of atomic weight zero is close and needs exact analysis.

That approximation is what makes all-small games playable. Exact infinitesimal values are unwieldy, and a single integer that says “about three ups, so comfortably winning” is what a player can actually use. It is the same move that temperature makes for hot games: replace an exact value with a number that answers the question at hand.

The other scale: tiny and miny

There is a second family of infinitesimals, and it is smaller than the first by as much as the first is smaller than the numbers.

Tiny-xx, written x\Uparrow_x in some notations and +x+_x in others, is {0{0x}}\{0 \mid \{0 \mid -x\}\}. It is positive, and for positive xx it is smaller than \uparrow — very much smaller. Tiny-two is smaller than tiny-one, and tiny-a-million is smaller than anything anybody would write down.

So the infinitesimals are not a single scale. They stratify, and the stratification is infinite: below every infinitesimal there is a smaller positive value, and the ordering of the tinies mirrors the ordering of the numbers upside down.

The practical consequence is that “infinitesimal” is not a synonym for “negligible”. A position worth tiny-one and a position worth \uparrow are both infinitesimal, and one of them beats the other decisively. In a close game the difference is the game.

The ordering, drawn

The relations between the smallest values are easy to state and hard to hold, so here they are laid out.

Zero sits at the origin. Every positive number sits above it, however small, and every negative number below. Between zero and all the positive numbers is an infinite region, and \uparrow lives there; symmetrically for \downarrow.

Star does not live anywhere. It is off the line, confused with zero, and also confused with \uparrow and with \downarrow — but not confused with \uparrow\uparrow, which strictly exceeds it, nor with \downarrow\downarrow, which it strictly exceeds.

So the picture is a line with a gap above and below zero, a cloud of nimbers off to one side of the origin, and the two clouds interpenetrating in a way that no diagram can quite show. Every figure of the small values on this site is therefore an approximation, and the approximation it makes is to draw confusion as a sideways offset — which is a convention, not a fact about the values.

<<,,0\downarrow\downarrow < \ast < \uparrow\uparrow, \qquad \ast \parallel \uparrow, \qquad \ast \parallel 0

The middle relation is the one worth remembering. A star and an up together are a first-player win, which means a player holding exactly that much is not safe and not lost, and needs the move.

Four things a position can beEvery position falls into one of four outcome classes, and only three of them correspond to a comparison with zero. The fourth — first player wins — is a position confused with zero, neither greater, smaller nor equal, and it is where the subject departs from arithmetic.0outcome P= 0whoever must move, loses10outcome L> 0Left wins, whoever starts-10outcome R< 0Right wins, whoever starts00outcome N‖ 0whoever moves first, winsblue edges are Left's moves, red are Right'sthree of the four are comparisons with zero; the fourth is not
Fig. 4 The outcome classes again, with the infinitesimals in them. Up is an L position, down is R, star is N, and zero is P — four values, four classes, one of each.

The switch that is not hot

A small aside that catches people out.

{00}\{0 \mid 0\} looks like a switch: both players have a move, and the moves go to the same place. Under the simplicity rule’s hypotheses it fails the test, since Left’s option is not strictly below Right’s — they are equal.

But it is not hot either. A hot position is one both players are eager to move in because moving there gains something, and here neither gains anything: both moves lead to zero. What \ast is, instead, is a position where having the move is worth exactly the move itself and nothing more — the minimal unit of tempo.

That is why \ast has temperature zero while being confused with zero. Temperature measures how much is at stake, and in \ast nothing is at stake except who is left standing. Positions like this are why temperature and outcome are separate questions.

A word on notation

The arrows are unusually good notation and it is worth saying why, because notation is the standing hazard in this subject.

\uparrow is a single character that names a specific two-node game, and \uparrow\uparrow means +\uparrow + \uparrow rather than anything iterated. n\ast n names the nimber, \ast alone means 1\ast 1. A position worth three ups and a star is written \uparrow\uparrow\uparrow\ast, which is compact and unambiguous once the conventions are in hand.

What the notation hides is the position. \uparrow\uparrow\ast is four characters and the Toads and Frogs strip worth it is a row of pieces that takes a picture to convey. This site’s rule is that where brace or arrow notation appears, the position appears beside it — the compression is convenient and the position is the thing being talked about.

What the solver computed

Every claim above is checked rather than asserted. lib/cgt.js constructs \uparrow as game([ZERO], [STAR]), canonicalises it, and assertValue confirms it names as \uparrow.

The comparisons are computed by the definition — build the difference, ask who wins moving second — not by a table of known relations. So >0\uparrow > 0 is verified by playing out 0\uparrow - 0; \uparrow \parallel \ast by playing out \uparrow - \ast and finding the first player wins; +>\uparrow + \uparrow > \ast by playing out +\uparrow + \uparrow - \ast and finding Left wins moving second.

The claim that \uparrow is smaller than every positive number cannot be checked exhaustively, since there are infinitely many. What the build checks is the finite family that appears in the figures — <1\uparrow < 1, <12\uparrow < \tfrac12, <11024\uparrow < \tfrac{1}{1024} — each by the same difference computation. The general statement is the proof above; the figures show instances.

For the Toads and Frogs strips, values come from the position recursion and are cross-checked against outcome: a strip whose value canonicalises to a positive infinitesimal must be in outcome class L, and the build asserts it.

Why they decide close games

A game that ends with a large numerical advantage is over before it is over — the arithmetic settles it and the last moves are formality.

A close game is one where the numbers cancel. What remains is the infinitesimal part, and that is where the outcome lives. So the practical role of \uparrow, \downarrow and \ast is that they are the residue after the visible advantages have annihilated, and they decide games that look drawn.

This is the reverse of the usual intuition, in which small quantities are safely ignored. Here small quantities are ignorable exactly when something larger is present, and when nothing larger is present they are everything. A Go endgame in which both sides have equal territory is decided by infinitesimals, and professional players have a vocabulary for these positions that predates the theory by centuries.

A position is the sum of its partsFour separate Hackenbush sprigs. A move is a move in one of them, so the position is their disjunctive sum, and its value is the sum of their values. Which part to play in is the entire decision, and the values are what makes it decidable.1/2+−1/2+=outcome Neach sprig is a separate game; a move is a move in one of themthe total was computed by adding the games, not the labels
Fig. 5 A sum whose numeric parts cancel. What is left over is not zero, and the leftover is what determines who wins the whole thing.

Infinitesimals in Hackenbush

Hackenbush gives the cleanest picture of where these values come from, because the position can be read directly.

A stalk of one blue edge is worth 11. A stalk of one green edge is worth \ast. A blue edge with a green edge on top is worth {0,??}\{0, ? \mid ?\} once the options are worked out, and reduces to 1+1 + \ast — the integer part and the star part simply add.

The interesting case is a green edge with a blue edge on top. Left can cut either edge; Right can only cut the green one, which takes the whole stalk. The value is \uparrow — the position where Left has slightly more than nothing, and slightly less than any amount worth writing as a fraction.

That is the point at which the picture explains the value better than the algebra does. The blue edge is Left’s, and it is worth something; but it is standing on a green edge that Right can cut out from under it, so it is not worth a whole move, or half a move, or any fraction of one. It is worth an up.

The value of EL is computed, not readOne string with every option drawn. Left's moves are the blue edges she may cut, Right's the red ones; each leaves the part of the string still standing. The value follows from those options by the same recursion that defines every game in the subject.↑∗the positionLeft cuts blue, leaving0Right cuts red, leaving0{{0 | 0}, 0 | 0}
Fig. 6 A green edge with a blue one above it, and every position reachable from it. Left’s advantage is real and is contingent on an edge Right can remove, which is what an infinitesimal value describes.

Who found it, and when

Up, down and star are Conway’s, and the notation is from Winning Ways — the arrows are Berlekamp, Conway and Guy’s, and they have been standard since 1982.

Atomic weight is developed in Winning Ways as the “uppitiness” of a game, a name that has not entirely survived into the literature but that captures what it measures. The theory of all-small games and their infinitesimal values is largely from that book, and the analysis of Toads and Frogs in it is one of the earliest worked cases.

The tinies came later in the exposition and are the part most often skipped, which is a shame, because the discovery that the infinitesimals stratify infinitely is a better illustration of what the recursion produces than any single value is.

Where the model stops

Normal play. Under misère play none of this holds. The infinitesimals are creatures of the normal-play ordering.

Atomic weight is approximate. It ignores differences of less than a star, so two positions with the same atomic weight can differ in outcome when everything else is exactly balanced. It is a tool for deciding comfortable positions, not close ones.

Infinitesimal is not negligible. The tinies make this vivid. The word describes a comparison with numbers, not a claim of unimportance.

These values are small and the positions are not. \uparrow has a two-node canonical form; the Toads and Frogs strip worth \uparrow has a much larger tree, and reducing it is the expensive part. The figures use strips short enough to reduce exactly.

The ladder from here

Nearby: atomic weight properly defined and computed; the tinies and minies with their ordering; all-small games as a class and the theorem that characterises them; and the specific analysis of Clobber, which is all-small and unsolved.

Then outwards to temperature, which is the opposite regime — positions so hot that infinitesimals are invisible — and the observation that a real game passes from one regime to the other as it ends, with the infinitesimals taking over exactly when the last hot move has been played.