Skip to the interactive
ExplainerTools Watch the 36-second film

Mathematics · interactive

Keep squaring and adding. Does it escape?

Model · finite steps, floating point

One c, held fixed. Each dot is z after one more step: square it, then add c. The view stays put while you change the steps; it fits every point this c reaches in 500 steps.

1 See

Start at 0. Square the point, add the same number c, and repeat. Does it stay near 0, or fly away?

2 Change

3 Understand

Watch the 36-second film
Model notes and sources

Model: the critical orbit of the quadratic family. Hold one complex number c fixed, start at z0 = 0, and apply zn+1 = zn2 + c. In parts, xn+1 = xn2 − yn2 + cre and yn+1 = 2xnyn + cim. Squaring doubles z’s angle from the positive real axis and squares its distance from 0. Adding c then shifts it by the same arrow every step. The Steps knob sets the budget N, from 0 to 500. Only the budget changes; c stays fixed until you pick another preset. New steps are drawn in order, and the readouts and explanation describe only the steps already drawn, so an escape is reported when the run reaches it.

Escape test: the run stops at the first step where |z| > 2, and that point is shown. Exactly 2 is not escape. Once |z| is past 2 it is also at least |c|, so |zn+1| ≥ |zn|2 − |c| > |zn|: every later step is farther out, and z never comes back. That is why one escaped point settles the question. If z stays within radius 2 through N steps, the result is only “not escaped through N steps.” It is not proof that c belongs to the Mandelbrot set, which asks the orbit to stay bounded forever.

Arithmetic: ordinary double-precision floating point, so long runs can carry tiny rounding errors. Values on screen are rounded to 3 decimal places. Each preset’s short description is computed in your browser from a 500-step run. For c = 0, −1, −2 and i the values are exact, and their repeats also follow by hand. A label such as “Computed 3-step repeat” means the last stored values of that run are exactly equal every 3 steps after rounding. That is a fact about this rounded computation. It is not proof that the exact orbit cycles, and not proof that c belongs to the Mandelbrot set. “Near a repeat” would mean the last points match to within 10−9: also an observation, not a proof.

The view fits every point, and every squared point, that the chosen c reaches within 500 steps, so it does not move while you change the steps. The dashed circle is |z| = 1, where squaring neither shrinks nor grows a point. The straight faint lines join each point to the next; the real step is the turn-and-stretch and the arrow drawn for the newest step. Not shown: the Mandelbrot set itself, other values of c, deep zooms, and the Julia set of each c.

History: Benoit Mandelbrot’s 1980 paper iterated z → λz(1 − z) for complex λ and z. The z2 + c form used here is the standard modern way to write that family; a change of variables links them, with c = λ/2 − λ2/4.

Sources: Curtis T. McMullen, Complex Dynamics and Renormalization (Harvard PDF), its section on the Mandelbrot set, for the quadratic family, the critical starting point and the bounded-orbit definition. Benoit B. Mandelbrot, “Fractal aspects of the iteration of z → λz(1 − z) for complex λ and z”, Annals of the New York Academy of Sciences 357 (1980), for the history.

An ExplainerTools Original. The set is named for Benoit Mandelbrot; the bounded-orbit definition follows the Mandelbrot-set section of Curtis T. McMullen’s Complex Dynamics and Renormalization.

Keep exploring

Up next

  1. Interactive · MathHow much can compound interest really grow?
  2. Interactive · MathWhy do sunflower seeds form spirals?
  3. Interactive · MathWhy is paper so hard to fold more than seven times?