The operator that puts the star back
Assumes: Cooling by exactly one · The operator chosen for one game
Cooling by exactly one ends by naming its own next rung: the inverse this essay could not build — the warming operator, its star convention, and the theorem that makes the pair exact rather than merely nearly exact. This is that rung, and the shape of the answer is not the one the sentence promises.
There is no inverse. There cannot be one, and the reason is the first thing to measure.
Chilling freezes, and freezing is not reversible
Cooling by charges a tax of on every move, all the way down. Once the tax exceeds a position’s temperature the position is frozen to its mean value: both players stop wanting to move, the two walls of the thermograph have met, and the result is the number at the mast.
Every position with temperature below the tax therefore ends up at its mean. Several positions have the same mean. They come out equal.
That is not a defect of the operator; it is what the operator is for. Chilling is applied to a Go endgame precisely in order to throw away the part of a position that is only worth fighting over locally, so that what is left can be added up. Throwing away is the job.
But it means the question “what was this before it was chilled?” has many answers, and the two operators in this essay are two different ways of choosing one.
Both are exact right inverses
The check that matters first is whether each operator, applied and then chilled, lands back where it started. Both do.
on all 400 values tested, with no exceptions in either column. So each is a genuine right inverse: each picks, for every value, some position that chills back to it.
They pick different ones. On 396 of the 400 the two preimages differ, and on 335 of those the whole difference is one star.
The clause
Heating by is defined by
and the first line is the one everything turns on. A number is a position with nothing at stake, and paying a bonus for moving in a position with nothing to move in would be paying for nothing, so heating exempts numbers.
Norton’s warming operator, written , differs in one line:
An integer comes back with a star on it. Nothing else changes.
The reason is a fact about what chilling destroys. Take a hot position whose two options are a unit apart — the commonest shape there is — and chill it. The walls meet, the position freezes to its mean, and if that mean is an integer the result is an integer. What has been lost is not just the heat: it is the tie the position contained. A fight that ends level leaves a star behind it, and an integer has no star.
So an integer arriving at a chilled endgame is nearly always a fight that has been frozen, and warming puts back the thing a frozen fight leaves.
The clean way to see it is to run the two operators on the smallest possible input. Chill and get ; chill and get . Both keep their star, because the site’s plain cooling keeps it. Chill a position whose mean is an integer and whose temperature is below one, though, and the tax freezes it outright to that integer with nothing left over — and there is now no way to tell it from an integer that was always one. Warming’s clause is a decision about that ambiguous case, made in favour of the fight.
The catalogue it was built for
The operator is not general and does not claim to be. It is Norton’s, it is used by Berlekamp and Wolfe throughout Mathematical Go, and the theorem attached to it is about Go positions: for a position in the class the theory covers, warming the chilled value recovers the position exactly.
Run it outside that class and it is worse than plain heating, and the numbers say so plainly. Over the 400 day-three values, chilling and then undoing it recovers 16 values by heating and 6 by warming. Over the site’s fifteen Domineering boards, 13 by heating and 2 by warming.
Those are not failures of the operator. They are the operator being asked a question it does not answer. The theorem is chilled Go value in, Go value out, and a day-three value born of nothing is not a chilled Go value; a Domineering board evaluated by this site’s plain recursion is not one either, because chilling as the literature uses it carries its own star convention on the way down as well as on the way back.
That is worth stating in the blunt form, because the temptation to read the count as a comparison is strong:
Warming is not a better inverse than heating. It is the right inverse for one class of positions and the wrong one everywhere else.
The two directions are not the same question
The reason the round trip fails in one direction and not the other is worth separating out, because it is the whole structure of the situation.
Warm then chill — always works. Warming produces some position; chilling it removes exactly what warming added; the original comes back. That is what a right inverse is, and it holds for all 400.
Chill then warm — usually fails. Chilling has already thrown information away, so no operator can put the specific thing back. What warming does is put back a thing, chosen by a rule, and the rule is right when the position came from the class the rule was written for.
The asymmetry is not a subtlety of these two operators. It is the general shape of a non-injective map with a section, and it is why the literature states the theorem in the direction it does. Berlekamp and Wolfe’s chilling is applied to a Go position, the answer is manipulated as a number or a star or an atomic weight, and warming is applied at the end to read the answer back out. The information that would have been lost was never needed.
The fibres, looked at directly
The 29 classes are worth one more look, because their sizes say what kind of information the tax destroys.
The largest holds 114 of the 400 values and every one of them chills to . Those are the positions whose mean is zero and whose temperature is at most one: a fight that ends level, a fight that ends level with an infinitesimal attached, a fight that ends level after a follow-up, and so on. After the tax they are indistinguishable, and there are 114 of them.
Eight of the 29 classes hold a single value. Those are the positions chilling leaves alone — hot enough that a tax of one does not reach the mast, so the walls are still apart afterwards and nothing has been frozen. A value in a singleton class can be recovered exactly by either operator, and both do.
What the class sizes cannot say is what was destroyed, and that is a separate count over the same day.
That gradient is the practical content of the whole operator. Chilling is safe to apply and impossible to undo in proportion to how cold the position already was, and a Go endgame is chilled precisely because it is a board full of nearly-cold regions. The method is throwing away the most information exactly where it has the least to lose.
What the picture cannot show
A chilled value looks like a value. There is nothing in “” recording that it used to be , or , or a number in the first place, and the fibre census is the only way to see how much company it is keeping.
The second thing the drawings cannot show is that chilling as this site computes it and chilling as the Go literature computes it are not quite the same operator. This site cools by one, plainly, straight from the definition of cooling and with nothing added. The literature’s chilling carries a star clause on the way down for the same reason warming carries one on the way up, and the pair is exact because both halves carry it. Half the convention is not the convention.
That is the sense in which the earlier essay’s promise — “the theorem that makes the pair exact rather than merely nearly exact” — is answered here and not delivered. The theorem exists, it is Norton’s, and what this site can show is the half of it that its own machinery reaches: the operator, the clause, the fibres it is choosing among, and the exactness in the direction that does not need the class restriction.
What cooling adds, and warming does not
One more property separates the two directions, and it is the one cooling adds and heating does not measured.
Cooling distributed over every pair the sweep could build — 1,768 of them — and heating failed on 263. That asymmetry is inherited by warming, which is heating with a clause, and it is the reason the Go method chills each region separately and then adds, rather than adding and then chilling. The first order is safe because cooling behaves; the second is not.
Undoing it at the end is therefore a single application to a single total, and never a distribution over parts. The method uses the well-behaved operator many times and the badly-behaved one once, which is not an accident of exposition.
Why an integer and not every number
The clause exempts integers and not halves or quarters, which looks arbitrary and is not.
A non-integer number is never the mean of a fight between day-old integers in the way an integer is. More precisely: in the games the operator is designed for, the values that arise are integers and integers-plus-infinitesimals, because chilled Domineering and chilled Go are all-small or nearly so — the tax is set at the temperature the game actually runs at, so what survives is the part below that temperature.
A half arriving in a chilled endgame is a genuine half: a position whose two stops really were half a unit apart before the tax, and which had no tie in it. An integer arriving in a chilled endgame is almost always a frozen fight. The clause is a bet about which kind of thing the operator is going to be handed, and in the setting it was written for the bet is right.
The bet can be inspected one position at a time, by the same manoeuvre the census above uses: charge each position its own temperature rather than a flat one, and read off what is left over its mean. What that residue is decides nothing about the clause; where the flat tax falls relative to the temperature decides everything.
That is what makes the clause a bet about integers rather than a fact about them. The star was in too; what distinguishes the integers is not that they had a tie and the halves did not, but that a chilled integer is the shape a frozen fight most often takes — and the operator has to guess, from the answer alone, whether the tie it is looking at was destroyed or was never there.
The whole point of an inverse
It is worth saying what the operator is used for, because a right inverse is a strange thing to want on its own.
The Go endgame method has three steps. Chill every region of the board. Add the chilled values, which is now an addition rather than a search, because chilling has taken the fights out and left numbers and infinitesimals. Then read the answer back.
The third step is the one that needs an inverse. The sum of the chilled values is a chilled value, and what a player wants to know is a fact about the real board: who wins, and by how many points. Warming the total is how the answer comes back into the currency the game is played in.
The account that reaches the same answer without the operator makes the shape of that method clear by contrast. A board’s regions are valued separately, the values are added, and the total is converted back into points. Every step but the last is arithmetic; the last one needs an operator that undoes the tax, and needs it to be right for the class of values the arithmetic produced.
And that explains why “usually fails on a day-three value” is not a criticism. The total in step two is never a day-three value: it is a sum of chilled Go values, which is a number plus an all-small part, which is exactly the class the theorem covers. The operator is used where its hypothesis holds, and the census above is what happens when it is used where it does not.
An operator with an inverse is a different kind of tool
Most of the transformations in this subject are one-way. Canonicalisation throws information away; taking a stop throws a great deal more away; a temperature is a single number standing in for a diagram. Each is useful and none can be undone.
An operator with an inverse is not in that family, and the difference decides what it can be used for. A lossy transformation is a summary: it answers a question and cannot be reversed, so anything it discarded is gone and every later step has to be careful not to need it. An invertible one is a change of coordinates: nothing is lost, the answer computed in the new coordinates can be carried back, and the only question is whether the new coordinates are easier to work in.
That is the whole reason chilling and its inverse are worth having as a pair rather than separately. Chilling alone would be a summary — take a hot position, get a cold one, and hope the cold one answers the question. With the inverse in hand it becomes a method: chill, work in the cold world where positions are numbers and the arithmetic is trivial, and heat the answer back. Nothing has been approximated at any point.
It also says what a reader should check before trusting such a pair, and it is not that the two operators are defined. It is that they compose to the identity on the class being worked in, which is a statement about a class rather than about an operator, and is why the domain matters so much here. An inverse that is an inverse on some positions and a summary on others is the worst of both, because the loss is invisible in the arithmetic and appears only in the answer.
Who Norton was, and what the integral sign is doing
The operator is Simon Norton’s and it appears in On Numbers and Games under the name that has stuck, written . The symbol is not decoration: the operator really is an integral in the sense that matters, because heating by and then by is heating by , so the family composes additively and applying it over a range of taxes is a sum over that range.
The version with the star clause is the one Berlekamp and Wolfe needed for Go and it is written in their notation — the subscript records exactly the clause this essay is about. Their book’s whole method is stated in terms of the pair, and the reason the clause is in the subscript rather than in the prose is that several variants are in use and the endgame being analysed decides which.
The general form, overheating, takes two parameters and does to a number what heating declines to do: it multiplies. That is the operator that maps integers to multiples of an infinitesimal and therefore carries the cold world into the hot one, and it is what makes an atomic weight computed on a chilled board convertible back into points.
Norton’s name is attached to that too — the Norton product — and the three operators are one family with different clauses about what happens at the bottom of the recursion. Every one of them is a decision about numbers, and numbers are the class the whole temperature scale rests on.
Where the ladder goes next
chilling reaches three rungs to here: cooling by exactly one, what it does to a game with a star in it, and now the operator that restores what the first one takes.
There is no rung above this yet, and what a fourth would have to establish is worth naming. Every operator on this anchor is defined by what it does to a value, and each is checked by running it over a pool of them. What none of them has is a statement about what it does to a position — which shapes on a board are carried to which, and whether the operator has a reading in the game rather than in the arithmetic.
That gap is what makes chilling useful in Go and Domineering and hard to explain. The literature’s justification is that chilling turns a class of endgame positions into numbers and back, so a player can count instead of fighting; but the operator is stated as arithmetic on values, and the class it works on is described by its values rather than by its shapes. A description of the class in terms of the board is the piece nobody has, and it is what would make the operator a technique rather than a transformation.
Two neighbours are worth the trip. Cooling by exactly one is where the operator is defined and where the choice of one is shown to be a convention chosen to make numbers land where they should. And below zero is where the floor of the temperature scale is set, which is what makes cooling by one take a whole class all the way down and is the reason this anchor’s arithmetic works out as tidily as it does.
Part 3 of 3
One argument about Chilling. 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 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-smallCanonical formCoolingDomineeringExhaustive searchFixed pointGo endgameHeatingInfinitesimalNumbersOrthodox accountingStar (∗)Tax on movingTemperatureUniqueness
- A number and a fight all-small, cooling, exhaustive search, infinitesimal, star (∗), temperature
- The values nobody's game produces canonical form, domineering, exhaustive search, infinitesimal, numbers, star (∗)
- A board that is a sum of its regions all-small, canonical form, domineering, exhaustive search, infinitesimal
- A game where nobody can be ahead in moves all-small, canonical form, domineering, exhaustive search, star (∗)
- Cooling canonical form, cooling, heating, tax on moving, temperature
- How hot a day gets exhaustive search, infinitesimal, star (∗), tax on moving, temperature