This post is a rewrite of my earlier blog post from Nov 2023 with new insights and updates. A paper based on this blog post has been published in the journal Entropy at MDPI . ┬─┬ ┬─┬────────── ┬─┬─┬ ┬─┬──────────── └─┤ │ │ ──┬────── └─┤ │ │ │ ──┬──────── │ │ │ ┬─┼────── └─┤ │ │ ──┼─┬────── │ │ │ └─┤ ┬─┬── │ │ │ ┬─┼─┼────── │ │ │ │ ┼─┼─┬ │ │ │ └─┤ │ ┬─┬── │ │ │ │ │ ├─┘ │ │ │ └─┤ ┼─┼─┬ │ │ │ │ ├─┘…
Nesting interpreters A friend of mine enquired about my experience with Lévy-optimal evaluation of lambda calculus, to which I replied: I've tried various others and found them horribly slow on actual benchmarks despite their optimality. So I prefer simple (and hence non-opimal) runtimes that are pretty quick in practice, namely combinator graph reduction such as…
Sensei’s library [1] lists several coordinate systems for the standard 19x19 size Go board. The system shown above must rank as one of the more unusual ones. It was inspired by a recent email from fellow games researcher Ryan Hayward [2], in which he noticed that a triangle shaped board on just 3 points, has precisely 19 legal positions, as well as 3439 legal games (under the Logical rules [3]).…
A rewrite of this blog post with many new insights and updates appeared in Jan 2026 ┬─┬─────────┬─┬─┬ ┬─┬── └─┤ ──┬──── │ │ │ ┼─┼─┬ │ ──┼─┬── │ │ │ │ ├─┘ │ ┬─┼─┼─┬ │ │ │ ├─┘ │ └─┤ │ │ │ │ │ │ │ └─┤ │ │ │ │ │ │ ├─┘ │ │ │ │ └─────┤ │ │ │ │ └───┤ │ │ │ └─┤ │ │ └─┤ │ └─┘ Most people believe 2 64 -1 = 18446744073709551615, or 0xFFFFFFFFFFFFFFFF in hexadecimal, to be the largest number representable in…
This post discusses how to solve flip puzzles like Simon Tatham’s “Flip” [1] or David Johnson-Davies’s 16 LEDs puzzle [2], where each cell in a rectangular grid represents a light that can be either on or off, and the goal is to have all lights turned on. The challenge is that, while each light can be flipped by clicking on its cell (or pressing a button directly below the LED), this action also…
Church Numerals Church numerals are the standard way of representing natural numbers in the lambda calculus. Cn, the Church numeral for n, iterates a given function n times on a given argument. So we have C0 f x = f⁰ x = x C1 f x = f¹ x = f x C2 f x = f² x = f (f x) etcetera. We can define a successor function “Csucc” which iterates a given function one more time than a given numeral does: Csucc =…
The cryptocurrency space features endless debates about the pros and cons of various possible emission curves. Prime among them is question of whether supply should be capped (finite) or uncapped (infinite). But is this really an essential difference? It doesn’t take much to change a finite supply into an infinite one. Bitcoin’s block reward drops from 1 satoshi to 0 satoshi somewhere in the year…
Many people equate Proof of Work (PoW) with one particular instance of it. It’s not hard to understand why. The Hashcash PoW is used not only in Bitcoin but in the vast majority of altcoins as well. In Hashcash, miners all compete to look for a so called `nonce’ which, if provided as input (together with other parts of a block header) to a hash function, yields an output that’s numerically small…
Which scores are finishes? One can throw 36, 40, or 50 plus any triple up to 120, and these numbers are 0, 1, and 2 modulo 3 respectively. In a picture: ... 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 triple+36 * * * triple+40 * * * * triple+50 * * * * * * * finishes: ... 150 151 152 153 154 155 156 157 158 160 161 164 167 170 How many possible 9-darter…