Thought Toys · Chaos & fractals · Exhibit 20

The Mandelbrot set

Take any point on the plane, call it c. Start at zero and repeat one move — square the number, add c — over and over. For some points the result stays calm forever; for others it blows up to infinity. Colour the calm ones black and you get this shape. Hover anywhere to pick a c and watch its little orbit decide its fate.

A black inkblot-like shape — round body, budding circles, lightning filaments — on a dark field that glows amber near the edge.

Inside the black = the orbit stays bounded forever. Outside = it escapes.

Dive into the coastline — the same shape repeats, forever

Tip: double-click the picture to zoom into that spot.

What you're seeing

Every dot on the picture is a number c (a point on the plane — its left-right position is the ordinary part, its up-down position the "imaginary" part). The rule is the same everywhere: start with z = 0, then replace z with z² + c, and keep going. That's it — one squaring and one addition, repeated.

Two things can happen. The orbit can settle down — circling a point, or hopping around a small loop — and stay bounded forever. Or it can grow without limit and shoot off to infinity. The black region is every c whose orbit stays calm; everything else escapes, and we tint it by how fast — deep blue for the points that bolt immediately, brightening to amber for the ones that linger near the edge before they go.

Hover and you draw that orbit yourself: the chain of dots is z, z², … hopping across the plane. Inside the black it coils up and stays put; just outside, it spirals wider and wider and then flings past the escape line. The astonishing part is the border. Nudge the pointer a hair across it and a calm orbit becomes a runaway. That border isn't a smooth curve — zoom in (try the dives, or double-click) and it keeps unfolding into more buds, spirals and lightning, and somewhere deep inside you'll even find a tiny copy of the whole set. One squaring, repeated, builds an edge of literally infinite detail.

The rule, exactly. Iterate the complex map from zero — z0 = 0,   zn+1 = zn² + c and c is in the set if the orbit stays bounded for all n. The shortcut the picture uses: the instant the distance from the origin passes 2, escape is guaranteed, so we stop and colour by the step it happened. Verified in node (improve/verify/20-mandelbrot.js): known members (0, −1, −2, the Douady rabbit) stay bounded and known outsiders (1, ½, −2.5) escape; crossing radius 2 is exactly the escape test (an independent orbit recompute agrees); and raising the step count only ever removes false members, sharpening the edge — never adds one. Two counter-examples. Drop the squaring — iterate z → z + c instead — and every point but the origin escapes: there is no set without the nonlinearity. And stop too early (20 steps) and a slow escaper like c = 0.26 is wrongly called "inside" — it actually needs 30 steps to reveal itself, which is why the detail slider matters.

← the cabinet · Thought Toys — a cabinet of explorable explanations. Exhibit 20.