An instrument · random tilings · the arctic circle

Arctic

Take the Aztec diamond of order n — a diamond-shaped board whose rows hold 2, 4, …, 2n, 2n, …, 4, 2 squares — and cover it with dominoes. There are exactly 2n(n+1)/2 ways to do it — a power of two, itself a small miracle. Now pick one of those tilings uniformly at random. You would expect a uniform mess. What appears is a circle. Outside a circle inscribed in the diamond the tiling is frozen: every domino aligned with its neighbours, no choice left. Inside, it churns. Nobody put a circle in the rules — the rules are squares, dominoes and a fair coin — and you can measure π by counting frozen dominoes.

I · Look at it first

The order-256 diamond, sampled live

Every domino below was placed by the same rule: destruction, sliding, creation, one fair coin flip per empty 2×2 block (Elkies–Kuperberg–Larsen–Propp, 1992). The result is a tiling drawn uniformly at random from all 232,896 of them (the exponent is 256·257/2 = 32,896; spelled out, that count of tilings runs to 9,903 digits). The four colours are the four types — and the type is not a choice, it is forced by where the domino sits. Horizontal dominoes are north or south, vertical ones east or west, named for the direction they slide. Look at the four corners: each is a single type, laid like brickwork, with nothing left to decide. Look at the middle: all four types, interleaved, still deciding.

Uniform random tiling, order 256seed · coin flips drawn live
north (horizontal)south (horizontal)east (vertical)west (vertical)exact arctic circle r = 1/√2
frozen fraction of this sample fitted circle radius fitted centre corner areas N/S/E/W
Every number in this box is measured on the sample you are looking at.

The same run, caught younger — and a control

order 4 — 20 dominoes. No circle yet; there is barely a middle.
order 16 — the corners have started to freeze.
order 64 — a recognisable circle, edge still ragged.
control, order 96 — the greedy tiling: horizontal dominoes laid left to right in every row, giving one north facet over one south facet. Completely frozen, no boundary curve at all.

The first three frames are the same shuffling run as the hero, captured at orders 4, 16 and 64 on the way up, so the circle you see at 256 grew out of the mess you see at 4. The fourth is not random: it is greedyTiling(96) — drawn at order 96 so its two facets are visible rather than aliased away — a perfectly legal tiling, and it is 100% frozen with no temperate region whatsoever. Randomness is what makes the circle, not the board.

II · The statistic

Measuring π with dominoes

The frozen region is four caps outside a circle of radius 1/√2 inscribed in a diamond of area 2. The caps take up everything the circle does not: a fraction 1 − π/4 = 0.2146 of the board. So count frozen dominoes, call the fraction f, and π = 4(1 − f). That is the whole idea, and done naively it is a bad estimator — at any finite order the measured fraction sits above the limit, because the boundary is fuzzy over a band about n1/3 cells wide — a sliver whose area is a fraction n−2/3 of the board — and the caps take in more of that sliver than they give up. Reading π straight off gives 2.6 at order 32 and 3.0 at order 256, the largest order this page's live instrument reaches, and still only 3.06 at order 512.

The honest instrument is the trend. The excess over the limit is a clean power law, f(n) = L + c·nb; the page fits it live over the orders below and extrapolates to L, then reports 4(1 − L). Nothing in that fit knows about π, so the answer is earned rather than assumed — and it is good to a few hundredths, seed to seed, not to five digits. The fit measures that exponent live at about −0.62, close to the −2/3 the band-width argument above predicts, without being told to expect it.

Frozen fraction against order n liveindependent samples so far 0 · sampling in a background worker
measured frozen fraction, ±1 s.e.m.fitted trend f(n) = L + c·nbextrapolated limit L1 − π/4 = 0.21460
π from the extrapolated limit π read straight off the largest order (biased) fitted exponent b extrapolated L in-sample fit residual
Give it a minute: the estimate settles as samples accumulate.

Both numbers above are computed live in this page by the frozen-region rule described in Provenance. The left one is fitFrozenTrend's extrapolation; the right is 4(1 − f) at the largest order, shown so you can see how far off the naive reading is. The horizontal axis is nb with b fitted from these same four points, so the straightness of the line is built in and is not itself evidence for the model; likewise the residual on the right is an in-sample number with one degree of freedom, not an error bar. Seed-to-seed scatter on the extrapolation is ±0.01 to ±0.04 at these sample counts stored, five seeds, kernel report §3.5, so this is a one-decimal-and-a-bit instrument, not a π machine. Do not read more digits off it than that.

Where the boundary actually is

Radius of the temperate region by direction, order 256 livesamples 0 · 64 rays each
one ray of one samplemean over samplesexact r = 1/√2 = 0.70711
mean fitted circle radius fitted centre offset fit rms residual gap to 1/√2

The scatter is real: at order 256 the edge of the frozen region wanders by a few percent of the radius from ray to ray, which is the right size for the n−2/3 relative fluctuation Johansson's result predicts — the page measures the scatter, not its distribution, so that is a match of scale and nothing more. The mean sits inside the exact circle by about 2% — the same finite-size effect as the frozen fraction sitting above 1 − π/4, with the sign flipped. Both close as n grows. One caveat on the fit rms residual above: unlike the per-ray scatter, it does not shrink as samples accumulate, because most of it is not noise. The four corner flood-fills meet along the diamond's diagonals, and cells in that seam belonging to none of them read as unfrozen, pushing those rays outward by about 1% — a fixed four-fold bias of the measuring rule, not a wobble of the boundary.

III · The deeper theory

The height of the tiling

Thurston's trick: a domino tiling is the graph of a function. Walk the lattice edges keeping a black square on your left; the height goes up by 1 along the edge of a domino and down by 3 across the middle of one. Every tiling of this board has the same heights on the boundary and a different surface inside, and the surface below is the one belonging to the sample in section I, lit from the north-west. The four frozen caps are the four flat facets, each tilted at one of the four extreme slopes. The temperate region is the curved part in the middle.

Drawn over it are the level lines of the limit shape — the surface that the height function converges to when n → ∞, obtained here by integrating the exact local-density field from the south corner. The slope field being integrated is a closed form, not a fit; the surface itself is that field put through a numerical quadrature, and it is drawn as exact.

Height function of the hero sample, shaded relief liveorder 256 · light from the north-west
exact limit-shape contours, every 0.2 exactarctic circle: where the surface stops being curved
height range on this sample south corner (by definition)0 east and west corners limit shape vs measured heights

The relief is measured — it is height() applied to the sample above. The contour lines are theory.limitShape, verified against mean measured height surfaces to an rms of 0.0025·n at order 256 stored, kernel report §4.3; the last figure to its right is that comparison recomputed live on this page against this sample's own height surface, which is noisier because it is one sample rather than eight.

Local statistics: the odds on a domino, position by position

Measured minus predicted, all four types live8×8-cell windows at order 256 · samples 0 · windows 0
northsoutheastwestexact formula (zero residual)±1 σ and ±2 σ sampling noise
rms deviation, this page's run sampling-noise floor at this count largest single deviation kernel's noise-floor value, 16×16 windows0.0030

The formula is the harmonic measure of one of four arcs of a disc, after the arctic ellipse is mapped to that disc — an arcsine-type expression, theory.localDensity. It is verified against fresh simulations at an rms of 0.0042 over 180 windows at order 256 with 40 samples, and 0.0030 on 16×16-cell windows well inside the curve at the same order and sample count stored, kernel report §4.2. The number on the left is this page's own running comparison, over this panel's smaller 8×8 windows — a different measurement configuration, so it is not expected to land on either stored figure, and it falls as samples accumulate. The grey bands are a lower bound on the scatter a perfect formula would still produce here: they treat the cells of a window as independent coin flips, which they are not — a domino covers two cells and neighbouring dominoes are correlated — so the honest noise is somewhat wider than the bands. That is why the running rms sits above the floor rather than on it: at a fixed order both numbers keep falling as samples accumulate, and it is the ratio between them that stays put. What matters is the shape of the cloud: it is centred on zero at every predicted frequency, with no tilt and no bow. The residuals are noise, not a formula error.

IV · The dial

Load the coin

The coin in the creation step does not have to be fair. Let p be the probability of filling an empty block with a horizontal pair. Nothing else changes — the same destruction, the same sliding, the same board. The circle becomes an ellipse, inscribed in the same diamond, with semi-axes a = √p and b = √(1−p): more horizontal pairs, wider north and south caps, a flatter temperate region. As p → 0 or 1 the ellipse collapses to a segment and the board freezes solid. The dial stops well short of that: at 0.1 and 0.9 the exact limit still leaves 47% of the board temperate.

0.1 tallest ellipse0.3 tall ellipse0.5 circle0.7 wide ellipse0.9 widest ellipse
p = 0.50
exact arctic ellipse a = √p, b = √(1−p) exactellipse fitted to this sample's boundary
fitted semi-axes a, b exact semi-axes linear scale of fit vs exact frozen fraction at this p

Sampled live at order 128, one fresh tiling per move of the dial, in a background worker. The exact curve is theory.arcticEllipse(p), verified at p = 0.3, 0.5 and 0.7 to within 0.025 on every semi-axis stored, kernel report §4.1. The fitted ellipse sits about 3% inside the exact one at order 128 near the middle of the dial, widening to about 5–6% at the dial's own ends — the same finite-size shrinkage as in section II. In the middle it closes to roughly 2% at order 256 and 1.5% at 512; near the ends only to about 3% and 2%. The shape error — the error in the ratio a/b — is smaller still near p = ½, under 1% by order 256, but runs 8–10% at order 128 at the ends of the dial and is still a few percent there at 512. Both the size and the shape arrive late and both arrive; they simply take longest exactly where the ellipse is least round.

And the frozen fraction against order, on demand

8163264128256512
n = 128
samples taken with this dialmean at each orderexact limit 1 − π√(p(1−p))/2 exact
order frozen fraction, mean of this dial's samples samples at this order exact limit at this p

Move the dial and it draws a fresh tiling at that order, at the bias p set above, and adds the measured point; the chart starts with one sample at each order up to 128, and changing p clears it, because those points belong to the old coin. Order 512 takes about a second in the worker and the main thread stays free. The line the points are walking down towards is the frozen area left over by the arctic ellipse, 1 − π√(p(1−p))/2, which is 1 − π/4 at p = ½ — and section II's fit is that walk taken to its end.

V · The game

Draw the ice line

Two rounds. First: a fresh tiling, colours off, and you say where the boundary between frozen and free is. Then: one cell, most of the board hidden, and you say whether that single domino had a choice. The second round is the harder one, because the cell is always drawn from the fuzzy band where even the exact limit answer is wrong about one time in ten.

Round A — place the circleDrag on the board to set centre and radius. Or use the keyboard: arrows move, + and − resize.
your circleexact circle r = 1/√2this sample’s measured boundary (96 rays, shown after you commit)
your centre0.000, 0.000 your radius0.500 overlap with the exact disc (IoU) this sample's own fitted radius
Commit to reveal the exact answer, this sample's own boundary, and your overlap.
Place your circle, then commit to see the tiling's colours and the exact curve.

Round B — frozen or free?

One cell, near the edge of the iceMost of the board is blanked out; only a small window around the marked cell shows its true colours.
Frozen means the domino is locked into a brickwork patch reaching the corner. Free means it is in the churning middle.
Round A boards 0 Best IoU Mean IoU Cells asked 0 Correct 0 Your accuracy Exact-limit rule on these cells

Round A scores the intersection over union of your disc against the exact disc of radius 1/√2 centred on the board — a pure geometry score, computed live. Round B resolves against that sample's own frozenMask. Cells are drawn only from the band within 0.15 (in board units, where the board's half-diagonal is 1) of the exact curve, because away from it the question is trivial. The exact-limit rule score is the accuracy that the exact limit rule — frozen if and only if outside the exact curve — itself achieves on the cells you were shown, measured live against the same samples. It is not 100%, and it is not even the best a position-only rule can manage: at order 128 the boundary is fuzzy, and the exact limit rule gets about 90% of these cells right. Shrink that same circle to the radius the boundary is actually running at this order — about 0.684, the finite-size shrinkage of section II — and a rule that still knows nothing but where the cell sits reaches about 94%. That number is calibrated to order 128, not read off the limit shape, and the gap between the two is itself the lesson: the arctic circle is the n → ∞ limit, not the finite-n boundary. Either way, the peephole is how you beat it: the limit rule sees only where the cell is, you can also see what the tiling is doing around it. (The limit theory's own per-cell certainty, max(q, 1−q) from theory.localDensity, is exactly 1 everywhere — the formula returns a frozen indicator, not a probability — which is precisely why this score has to be measured rather than quoted.)

Provenance

What is measured, what is exact, and what is neither

Conventions

Cells carry the code of the domino covering them: 0 outside, 1 north, 2 south, 3 east, 4 west, both cells of a domino carrying the same code. North and south are horizontal, east and west vertical; the name is the direction the domino slides. The type is forced by position, not chosen: write the domino's lower-left cell as (a, b), put s = (a + b + n) mod 2, and horizontal with s = 0 is north, s = 1 is south; vertical with s = 0 is east, s = 1 is west. The height function is Thurston's (1990), defined on lattice vertices, +1 along a domino's edge and −3 across its interior edge when a black square is kept on the left, normalised to 0 at the south corner. The board is scaled so that it is |x| + |y| ≤ 1, which puts the arctic circle at r = 1/√2.

The frozen rule

Every frozen number on this page comes from one rule and one rule only: seed the north cap with the north cells at maximum y, the south cap at minimum y, east at maximum x, west at minimum x; take the 4-connected component of each seed inside the cells of that type; the frozen set is the union of the four. No smoothing, no gating, no post-processing. An independent second rule — the average height slope over a window of side 1.6·n1/3, frozen where the slope reaches an extreme point of the domino slope polygon — agrees with it on 96.6% of cells at order 256, with the disagreements sitting a median of 4.7 cells from the curve and 99% of them within 24 stored, kernel report §2.2. Two independent rules disagreeing only about exactly where a fuzzy edge is, is the honest answer. A third, eroded mask exists for rendering; it is never used for a number on this page.

Randomness

The generator is sfc32 keyed by xmur3, seeded from a string shown next to the hero. Uniformity of the sampler was checked by exhaustive enumeration: 2, 8, 64, 1024 tilings at orders 1 to 4 (= 2n(n+1)/2), a χ² of 13.13 on 7 degrees of freedom over 40,000 samples at order 2 (p = 0.069) and 57.84 on 63 over 128,000 samples at order 3 (p = 0.660) stored, kernel report §3.2. You can run a smaller version of that test in this page, right here, on live samples:

Enumerates every tiling for n ≤ 4 and runs a χ² over 2,000 fresh samples at n = 2. A second or two.
Not run yet.

Exact, measured, unverified

QuantityStatusEvidence
Arctic circle r = 1/√2, frozen limit 1 − π/4exactclassical (Jockusch–Propp–Shor 1995); independently confirmed here by the trend fit and the boundary fit
theory.arcticEllipse(p): a = √p, b = √(1−p)exact, verifiedfitted semi-axes within 0.025 at p = 0.3/0.5/0.7, order 256; deviation is a uniform ~2% finite-n shrinkage, not a shape error
theory.localDensity(x, y, p)exact, verifiedrms 0.0042 over 180 windows at order 256, 40 samples (verification table); 0.0030 on 16×16 windows within r² < 0.40 at the same order and sample count (n-trend table); residual falls with n
theory.limitShape(x, y, p)exact, verifiedrms 0.0025·n against mean measured heights at order 256; 0.0020·n at 512
theory.centreHorizontalFraction(p) = (2/π)·arctan√(p/(1−p))exact, verified0.6311 measured against 0.63099 at p = 0.7
Frozen fraction at finite n, and π from itmeasured0.2479 at order 256 and 0.2360 at 512, both above the limit; extrapolation needed
Finite-n exponent b ≈ −0.62empiricalfitted over n = 8…512 here and −0.6307 in an independent reference implementation; consistent with the n−2/3 area fraction implied by the n1/3 boundary band in section II, but treat as a fit in that range, not a theorem
Airy / Tracy–Widom boundary fluctuationsnot implementedJohansson (2005) is cited, not measured; the scatter in section II is shown raw and no distribution is claimed for it

The three theory formulas above were reconstructed in this project from its own simulations — proposed as closed forms, then tested against independent runs — because this build environment has no network access and nothing could be transcribed from the literature. They agree in shape with the results those papers are known for, and each is reported with its measured agreement rather than a claim of textual fidelity.

References

Elkies, Kuperberg, Larsen & Propp, Alternating-sign matrices and domino tilings, J. Algebraic Combin. 1 (1992) — shuffling, and |AD(n)| = 2n(n+1)/2. Jockusch, Propp & Shor, Random domino tilings and the arctic circle theorem (1995; arXiv math/9801068) — the circle. Cohn, Elkies & Propp, Local statistics for random domino tilings of the Aztec diamond, Duke Math. J. 85 (1996) — limit shape and local statistics. Propp, Generalized domino-shuffling, Theoret. Comput. Sci. 303 (2003) — the cleanest statement of destruction, sliding and creation, and of the biased version. Thurston, Conway's tiling groups, Amer. Math. Monthly 97 (1990) — the height function. Johansson, The arctic circle boundary and the Airy process, Ann. Probab. 33 (2005) — boundary fluctuations.

Contact the author: np56123@icloud.com