Strange Attractors and Fractal Dimension
Every dissipative system in this course has ended its transients somewhere. The damped pendulum ends at a point — dimension zero. The van der Pol oscillator ends on a limit cycle — dimension one. A quasiperiodically forced system can end on a torus — dimension two. Points, curves, surfaces: the respectable destinations of classical mechanics, all with integer dimensions, all implying eventual regularity. Then the driven pendulum's stroboscope produced a layered cloud, and the Lorenz equations produced the butterfly — objects that are attractors by every operational test (bounded, invariant, attracting a whole basin of transients) but on which the motion never settles, never repeats, and never stops amplifying errors. Ruelle and Takens, needing a name for sets that had no right to exist in the old taxonomy, called them strange attractors. The strangeness is geometric, and it is forced, not optional. A chaotic dissipative system must reconcile two exact budgets: the sum of its Lyapunov exponents is negative (volumes die — there is an attractor), while its leading exponent is positive (neighbours diverge — the attractor cannot be a point, curve, or any placid surface). The only geometry that satisfies both is one built by stretch-and-fold: sheets stretched by , squeezed by , folded back and layered, forever. Cut the result transversally and you find a Cantor set — infinitely many leaves, zero total thickness. Such an object has no integer dimension, and this article builds the tools that assign it its true, fractional one. Those tools — box-counting, information, and correlation dimensions, the Rényi family that contains them, and the Kaplan–Yorke formula that predicts them from the Lyapunov spectrum — turn "strange" from an adjective into a number: for Lorenz, for Hénon. Measured from data, that number counts the effective degrees of freedom behind a signal; predicted from the exponents, it welds the geometry of chaos to its dynamics.
- A strange attractor is a bounded attracting invariant set with fractal (non-integer) dimension, on which the dynamics is chaotic () while volumes contract ().
- The geometry is manufactured by stretch-and-fold: expansion along unstable directions, stronger contraction along stable ones, folding for boundedness — the transverse cross-section is a Cantor set.
- Dimension is measured by a family of tools: box-counting , information , correlation (the Grassberger–Procaccia workhorse for data), with ; inequality flags multifractality.
- The Kaplan–Yorke formula predicts the dimension from the Lyapunov spectrum: — dynamics determining geometry.
- Canonical values: Lorenz attractor (sheets plus Cantor thickness); Hénon attractor (a curve's worth of Cantor strands).
- Continuous-time strange attractors need at least three dimensions (Poincaré–Bendixson); dissipative maps manage in two; Hamiltonian systems have none at all.
- Key idea: a chaotic dissipative system must stretch neighbouring states apart () while contracting phase volume (); the only geometry compatible with both is a fractal — sheets folded into Cantor layers — whose dimension the Lyapunov spectrum itself predicts via Kaplan–Yorke.
A chaotic dissipative system must stretch neighbouring states apart () while contracting phase volume (); the only geometry compatible with both is a fractal — sheets folded into Cantor layers — whose dimension the Lyapunov spectrum predicts via the Kaplan–Yorke formula.
Where this lives today
Strange-attractor geometry became a working instrument wherever signals need a census of their degrees of freedom. Delay-embedding plus correlation-dimension analysis — with the modern safeguards of surrogate data and Theiler windows — runs through laser physics, chemical oscillators, physiology (cardiac and EEG dynamics), and structural monitoring; its philosophical product is the routine question "is this irregularity three variables or three thousand?", answerable from a single probe. On the theory side, Ruelle's SRB measures matured into the standard notion of "the statistics of a chaotic system," underpinning everything from numerical long-time averages (why they converge at all) to linear-response theory — the study of how a chaotic attractor's statistics shift under forcing, now a serious framework in climate research, where the object of prediction is precisely the attractor and its measure rather than any trajectory. Even the fractal fine print found applications: multifractal spectra characterize turbulence intermittency and market data, and fractal basin boundaries (the sets separating competing attractors) quantify when which attractor you reach becomes effectively unpredictable even without chaos on the attractors themselves. Within the chapter, this article completes the dissipative story: bifurcations opened the door, cascades walked through it, exponents measured the walk, and the attractor is where the walk lives. Two instruments remain to be formalized — the Poincaré section, used informally throughout, gets its own theory next; and the chapter then closes with the discrete map that made the whole subject computable.
The physical picture
Start with the object that started the field. The butterfly below is a single trajectory of the Lorenz equations — the three-mode convection caricature met twice already in this chapter — drawn for sixty time units. It loops around one wing, crosses to the other on no discernible schedule, and never intersects itself: it cannot, in three dimensions, by uniqueness. Yet it is confined forever to this filmy, two-winged object, and so is every other trajectory from the entire basin — start anywhere reasonable and after a brief transient your motion is this picture. That is what "attractor" means. What makes it strange is the texture: each wing looks like a surface, but it is actually infinitely many surfaces, layered like the pages of a book with no thickness, because the trajectory that leaves a wing must return to it without ever landing on a previous track.
The layering is easier to see in the discrete cousin. The Hénon map — a two-dimensional stretch-fold-contract cartoon with Jacobian determinant — deposits its iterates on what appears to be a bent curve. Magnify any arc of it and the "curve" splits into parallel strands; magnify a strand and it splits again, forever. A transverse cut is a Cantor set: uncountably many points, zero total length, structure at every scale. The attractor is neither a curve (too many strands) nor a surface (zero area): its box-counting dimension is , and that fraction is not a curiosity but a measurement of the dynamics — the ratio of stretching to squeezing rates, as Derivation B shows.
Why must this happen? Recall the two budgets every chaotic dissipative system carries. The Lyapunov sum rule says : blobs of phase fluid lose volume exponentially, so the attractor they settle onto has volume zero. But says the attractor supports exponential separation — impossible on a point, on a closed curve (where motion is asymptotically periodic), or on any smooth surface where Poincaré–Bendixson-type constraints bite. The resolution is the stretch-and-fold of the sensitive-dependence article, now viewed as a manufacturing process: each circuit stretches the attractor's material along the unstable direction (rate ), crushes it along the stable one (rate , with so volume dies), and folds the result back. Iterate forever and the transverse direction becomes a self-similar Cantor stack — with the number of layers per scale set by the stretch factor and the thinness per scale set by the contraction.
One more reframe before the mathematics: dimension is a measurement, not a definition. Cover the attractor with boxes of size and count how many you need; if , then is the box-counting dimension — and for the middle-thirds Cantor set the recipe gives the famously non-integer . Weight the boxes by how often the trajectory actually visits them and you get the information and correlation dimensions, which can differ from when the visits are lopsided (multifractality). All are radically robust: they survive smooth coordinate changes, they can be extracted from a single measured time series, and — the deepest fact in this article — they can be predicted, before any box is counted, from the Lyapunov exponents alone.
The dimension toolkit
The budget constraints first, as equations. Dissipation and chaos coexist as
where: the sum rule is inherited verbatim from the Lyapunov article. For Lorenz the divergence is the constant : every blob loses of its volume per few time units, which is why the attractor is razor-thin, while keeps the motion on it chaotic. The geometric instruments form a one-parameter family. Cover the attractor with boxes of side ; let be the number occupied, and the fraction of time the trajectory spends in box (the natural measure). The box-counting dimension ignores the weights:
where: — the scaling exponent of pure coverage; for a point, curve, surface it returns , and for the Cantor set . The Rényi dimensions grade the boxes by visitation:
where: — the weighting order: recovers ; gives the information dimension (the scaling of the Shannon entropy of the coarse-grained measure); gives the correlation dimension . The family is non-increasing in , so
where: equality holds only if the natural measure is uniform across the attractor; a strict spread is the signature of a multifractal, an attractor some of whose regions the dynamics haunts far more densely than others. earns its keep through data. Given points sampled from the attractor (or delay-embedded from a single signal), the correlation integral counts close pairs:
where: — the step function; — the probability that two randomly chosen points on the attractor lie within . The slope of against is the Grassberger–Procaccia estimate of — computable from a few thousand points, no boxes required, and the standard instrument for asking a time series "how many degrees of freedom made you?" (Derivation C builds it.) Finally the bridge from dynamics. Order the exponents and let be the last index at which the partial sum is still non-negative — the largest number of directions whose combined stretching has not yet been beaten by contraction. The Kaplan–Yorke (Lyapunov) dimension interpolates:
where: the integer part says "-dimensional objects still grow," and the fraction is the extra partial dimension the next contracting direction permits before volumes die. Kaplan and Yorke conjectured for typical attractors, and the identification passes every clean numerical test: for Lorenz, , matching directly measured dimensions (Derivation A); for Hénon, , likewise. Geometry, predicted by dynamics.
Which tool answers which question
| you want | use | notes |
|---|---|---|
| is this attractor strange? | AND non-integer | check both — the properties are logically independent |
| dimension from a simulation | Kaplan–Yorke (6) on the computed spectrum | cheapest; audit the spectrum with the sum rule first |
| dimension from experimental data | delay embedding + Grassberger–Procaccia (5) | watch saturation vs embedding dimension |
| pure geometry, no measure | box-counting (2) | expensive in data; rarely used raw |
| non-uniformity of visitation | spread from (3)–(4) | multifractal diagnostics |
| how many variables made this signal? | + Takens embedding | dimension as a model-building census |
The goal is the most quoted number in this subject: the fractal dimension of the Lorenz attractor, obtained without measuring any geometry — purely from the Lyapunov spectrum via the Kaplan–Yorke formula. The strategy is to reason about how -dimensional volume elements grow or die on the attractor, find where growth crosses to death, and interpolate. The step to watch is the interpolation logic — why the fractional part is the ratio it is, rather than an arbitrary patch.
Step 1. Assemble the audited spectrum. For : , , . Consistency check: the sum, , must equal the exact constant divergence — it does, so the spectrum is trustworthy.
Step 2. Track -volumes. A line element along the most-expanding direction grows like : lines grow. An area element spanned by the two leading directions grows like : areas grow too — the attractor's sheets are genuinely two-dimensional and expanding within themselves. A volume element grows like : volumes are annihilated. Why this brackets the dimension: the attractor must be "at least" the dimensions that grow (it supports expanding 2D sheets, so ) and "less than" the count where volume dies (). The dimension lives between the last growing integer and the first dying one.
Step 3. Interpolate by the exhaustion rate. Between dimension 2 and 3, imagine fattening the growing 2-sheets into slabs of small thickness: the thickness direction contracts at , while the in-sheet growth accumulates at . The fractional dimension the contraction can sustain is the ratio of accumulated growth to the rate that kills it:
Why a ratio of rates becomes a dimension: in the Cantor bookkeeping of Derivation B, the number of resolved layers scales with the accumulated expansion while their thinness scales with the contraction — the box-count exponent is precisely (growth rate)/(contraction rate). Kaplan–Yorke is that computation packaged for arbitrary spectra.
Step 4. Interpret the number. says: locally a smooth 2D sheet (the strong contraction plasters trajectories onto it almost instantly), with a transverse Cantor structure worth six hundredths of a dimension — layers so thin and so sparse that Lorenz himself could reasonably describe the object as "an infinite complex of surfaces." The tiny fractional part is why the butterfly looks like a clean pair of wings while being uncountably many.
Step 5. Note what the formula asserts beyond arithmetic: the conjecture , the information dimension. For Lorenz the directly measured (Grassberger–Procaccia) sits just below, exactly as the ordering requires — dynamics and geometry agreeing to better than one percent through entirely independent measurements.
Go deeper · Derivation B · 2 minStretch-and-fold builds a Cantor set — and its dimension is a ratio of rates
We now derive strangeness itself: why the transverse cross-section of a chaotic attractor is a Cantor set, and why its dimension equals the ratio of the expansion and contraction exponents. The strategy is to idealize one stretch-and-fold cycle as a horseshoe-style map on a square — stretch by , squeeze by , fold back — and run the box-counting definition on the invariant set. The step to watch is the appearance of self-similarity: nothing is assumed fractal; the fractal structure is generated by iteration.
Step 1. One round: a unit square of section material is stretched to length , squeezed to width (dissipation: ), and folded back into the original square. The image is a folded band — effectively sub-bands of width stacked inside the square (taking the fold bookkeeping loosely; integer keeps the counting clean).
Step 2. Iterate. Each sub-band is itself squeezed and multiplied on the next round: after rounds the invariant material lies in bands of width . In the transverse direction this is exactly a Cantor construction — keep shrinking copies per generation — while along the band the set stays smooth. Why the invariant set must have this structure: any point ON the attractor has a full history of past folds; each past round contributes one level of banding, and infinitely many rounds contribute structure at every scale. Self-similarity is not an assumption but the fixed point of the folding process — the same logic that made the Feigenbaum diagram self-similar.
Step 3. Count boxes at scale : covering the transverse Cantor dust needs boxes. The box-counting limit (2) gives
and adding the one smooth along-band direction: , strictly between 1 and 2 because forces .
Step 4. Translate to exponents. Per unit time the map stretches by and contracts by , so and per round:
— the Kaplan–Yorke formula for a 2D map, now derived rather than posited: the fraction of a dimension IS the stretch-to-squeeze ratio.
Step 5. Test on Hénon : measured ; the area contraction is exact, , so (audit passed by construction). Then — matching the box-counting measurements on Figure 2's strands. The magnified Cantor layering of that figure is Steps 1–3 made visible.
Go deeper · Derivation C · 2 minThe correlation dimension from pair counting — Grassberger–Procaccia
The goal is the workhorse of experimental chaos: why counting close pairs of points measures a dimension, and how the Grassberger–Procaccia algorithm turns a time series into . The strategy is to relate the pair-count integral to the natural measure's small-scale scaling, then walk the algorithm including its famous pitfalls. The step to watch is what the exponent actually weighs: pair counting squares the measure, so dense regions dominate — this is why the method yields , not .
Step 1. Define the correlation integral (5): is the fraction of all pairs of sampled attractor points lying within of each other. Equivalently, — the average, over the natural measure , of the measure of an -ball.
Step 2. Insert the local scaling of the measure. If around typical points , then averaged with weight — i.e. the measure-weighted ball-mass exponent, which in Rényi language is exactly the member:
Why : the pair count involves the measure twice — once for the reference point, once for the ball mass around it. Box language makes it explicit: , and comparing with (3) at gives the identification. Dense regions are counted quadratically, so leans on where the trajectory actually lives — the reason .
Step 3. The algorithm. From a measured scalar signal, build delay vectors (Takens: for embedding dimension the reconstruction is faithful); compute over a range of ; fit the slope of vs in the scaling region; repeat for increasing .
Step 4. The verdict logic. For deterministic low-dimensional dynamics the fitted slope saturates at once exceeds the attractor's needs; for stochastic noise the slope keeps climbing with (noise fills every dimension offered). The saturation plateau, not any single fit, is the evidence. Why the pitfalls list is long: temporal neighbours masquerade as geometric neighbours (exclude pairs closer in time than the correlation time — the Theiler window); the scaling region shrinks with noise from below and attractor size from above; and data volume must grow exponentially with dimension — with points one cannot honestly certify much above , so claims of high-dimensional determinism from short series are self-refuting.
Step 5. Calibrate on a known case: for the Lorenz attractor sampled at a few thousand points, the procedure returns with clean saturation for — consistent with and the ordering (4), closing the loop between data, geometry, and dynamics.
Limiting cases
| Case | Result | Meaning |
|---|---|---|
| Hamiltonian limit | no attractor of any kind; chaos is a fat-fractal sea between KAM tori | |
| strong dissipation | just above 1 | Hénon-like: a near-curve of Cantor strands |
| weak dissipation | just below phase-space dimension | thick, space-filling-looking attractors; hard to distinguish from noise |
| , autonomous | fixed point / cycle / torus | integer dimension — attractor, but not strange; under quasiperiodic forcing a non-positive still permits fractal geometry (see the SNA row) |
| planar continuous flow | Poincaré–Bendixson | strange attractors impossible; need (flows) or dissipative maps in 2D |
| uniform natural measure | monofractal; Rényi spread zero | |
| quasiperiodically forced systems | strange nonchaotic attractors possible | fractal geometry with — strangeness without chaos |
Worked examples
1 · Calibrating the ruler on the Cantor set (confidence builder)
Compute the box-counting dimension of (i) the middle-thirds Cantor set and (ii) the Koch curve, and use them to interpret the Hénon dimension.
Step 1. Cantor set: at scale the set needs boxes. So — more than a point, less than a line: dust.
Step 2. Koch curve: each generation replaces a segment by 4 copies at scale : at , so — a "curve" of infinite length and zero area.
Step 3. Interpretation transfer: the Hénon attractor's says it occupies scale-space like a Koch curve — line-like but overflowing any finite length — while its construction (smooth strand × transverse Cantor dust, ) differs. Dimension measures occupancy, not anatomy: two anatomically different sets can share , which is why the multifractal spectrum and the Lyapunov route are kept alongside the single number.
2 · Hénon by the dynamics route, with audit (exam level)
For the Hénon map at , the measured largest exponent is per iteration. (i) Find exactly. (ii) Compute . (iii) What dimension would a naive observer assign, and why is it wrong?
Step 1. The Hénon Jacobian has constant determinant , so area contracts by per iteration everywhere: exactly. Hence — no second measurement needed, and any computed pair failing this audit is buggy.
Step 2. Kaplan–Yorke: (since , ), so , agreeing with box-counting on the computed attractor.
Step 3. The naive assignment is — "the points fall on a curve." It fails at the second magnification (Figure 2): the strand count grows without bound as resolution improves, so length diverges and no finite curve contains the set. The extra is precisely the stretch-to-squeeze ratio — a measured mechanical property of the dynamics, visible as geometry.
3 · Reading a Grassberger–Procaccia experiment (applied)
A delay-embedded laser time series yields correlation integrals and in the scaling region, stable for embedding dimensions . (i) Estimate . (ii) With points, is the estimate trustworthy? (iii) What would rising slopes with have meant?
Step 1. Slope between the two scales: .
Step 2. Trust audit: the saturation across – is the key deterministic signature; and the data-volume bound comfortably accommodates . A Theiler window (excluding temporally close pairs) and a scaling region spanning at least a decade would complete due diligence. Verdict: low-dimensional chaos with roughly two active degrees of freedom — a model with a 3D phase space (e.g. a Lorenz-class flow, variables) is a reasonable target.
Step 3. Slopes climbing with without saturating would have meant the signal fills every dimension offered — stochastic (or very high-dimensional) dynamics, for which the "dimension" is an artifact of the embedding, not a property of an attractor. Saturation, not smallness, is the evidence.
Origins · 1 minDavid Ruelle and how this was discovered
Ruelle is the mathematical physicist who gave this article's object both its name and its legitimacy. In 1971, with Floris Takens, he attacked Landau's picture of turbulence — an infinite staircase of quasiperiodic frequencies — and proved that after just a few Hopf-type bifurcations, generic dissipative flow prefers something else entirely: motion on an attracting set carrying sensitive dependence, for which the paper coined the term strange attractor. The proposal, initially resisted (the journal that published it was one Ruelle edited), was vindicated within a decade by convection and Taylor–Couette experiments that found broadband chaos where Landau predicted new discrete frequencies. Ruelle then supplied the theory's measure-theoretic backbone: with Yakov Sinai and Rufus Bowen he constructed the SRB measures — the natural invariant measures on strange attractors that make time averages, Lyapunov exponents, and the dimensions of this article well-defined objects rather than numerical folklore. His thermodynamic formalism imported statistical-mechanics machinery (pressure, Gibbs states) into smooth dynamics, where it now underlies the multifractal analysis of the Rényi spectrum. Few living scientists have named a thing so strange and then spent decades proving it was, mathematically, perfectly respectable.
Going further
References. Goldstein, Poole & Safko, Classical Mechanics 3rd ed., ch. 11 · Landau & Lifshitz, Mechanics Vol. 1 · Taylor, Classical Mechanics, ch. 12 · Strogatz, Nonlinear Dynamics and Chaos, ch. 9–11 · Lorenz (1963), J. Atmos. Sci. 20, 130 · Hénon (1976), Commun. Math. Phys. 50, 69 · Grassberger & Procaccia (1983), Physica D 9, 189 Key anchor values: the Lorenz attractor has , with the sum rule holding analytically. The Hénon attractor at gives . The Feigenbaum ratio is .
Builds on: Phase Portraits and the Phase Plane · Linear Stability Analysis and the Jacobian · Limit Cycles and Self-Sustained Oscillations · Poincaré–Bendixson Theorem · Period-Doubling Cascade and the Route to Chaos Leads to: Hopf Bifurcation and Birth of Limit Cycles · Bifurcations and the Loss of Stability
Is the butterfly picture the attractor, or just one trajectory?
Both, asymptotically — and the distinction is worth keeping. What is plotted is a finite trajectory segment; the attractor is the closure of where such trajectories accumulate as . For an ergodic attractor with an SRB measure, a single generic trajectory visits every neighbourhood of the attractor with the right frequencies, so a long-enough trace fills out a faithful portrait of both the set AND its natural measure — the density of ink is literally the invariant measure. That is why one run suffices for the pictures and the statistics alike. The caveats: the trace never is the attractor (a countable curve versus an uncountable layered set — the missing leaves are at every magnification); transients must be discarded; and in multistable systems each basin's trajectory paints only its own attractor, so one run per coexisting attractor.
Where is the Cantor structure hiding in the Lorenz attractor if its dimension is only 2.06?
In the transverse direction, compressed almost to invisibility by the ferocious third exponent. The contraction rate versus expansion means each circuit of a wing squeezes the transverse spread by a factor while separating leaves by far less — so successive leaves of the "book" differ in the transverse coordinate by ratios like and below. A cross-section is a Cantor set whose gaps shrink super-exponentially down the hierarchy: total transverse thickness zero, but with the first few leaves already thinner than any plot pixel. That is exactly what the fractional dimension encodes — a Cantor factor so sparse it contributes almost nothing to box counts. Hénon, with contraction only per iterate, spreads its layers wide enough to photograph, which is why it — not Lorenz — is the textbook picture of transverse fractality (Figure 2).
What exactly is a strange nonchaotic attractor?
An attractor with fractal geometry but no exponential divergence — proof that "strange" and "chaotic" are separate axes. They arise robustly in quasiperiodically forced systems (two incommensurate drive frequencies), where the attractor develops a nowhere-differentiable, fractal graph structure while the largest Lyapunov exponent stays non-positive: nearby trajectories separate sub-exponentially, so prediction degrades only polynomially, yet no smooth surface contains the motion. They matter for three reasons. Practically, they occur in real driven systems (quasiperiodically forced pendula and circuits; certain pulsating stars show the corresponding scaling in their light curves). Diagnostically, they are the standard counterexample forcing the two-test discipline of the warning box — geometry and dynamics certified separately. Conceptually, they sit on the border where the fractal-making machinery (nonsmooth invariant graphs) decouples from the error-amplifying machinery, showing the two are cousins, not twins.
Why does the Kaplan–Yorke formula use the information dimension and not the box-counting one?
Because the exponents are averages over the natural measure, so everything built from them inherits measure-weighting. The Lyapunov spectrum is computed along typical trajectories — regions the dynamics visits often contribute proportionally to the averages — and the KY construction (volume growth of typical -elements) therefore estimates how the measure fills space, which is 's job description, not 's (pure set coverage, blind to visitation). The conjecture is proven for restricted classes (notably certain 2D maps and hyperbolic systems) and is numerically solid for the standard attractors, though not universally true — engineered counterexamples exist, which is why careful writers say "conjecture." Practical reading: expect within a few percent for generic dissipative systems, expect around it, and treat a large violation as evidence of either a broken exponent computation (audit the sum rule) or genuinely non-typical (non-SRB) sampling.
How much data does a credible dimension estimate actually need?
Exponentially much in the dimension itself — the sobering bound that killed a generation of overclaims. To resolve scaling over even one decade of , the attractor must be sampled densely at the smallest scale, and the number of -balls grows like : a standard rule of thumb (Eckmann–Ruelle) is that points cannot certify a dimension much above . Thus caps credible estimates near , and claims of, say, from a few hundred points of climate proxy data — a real 1980s episode — are arithmetic self-refutations. Compounding requirements: a Theiler window to exclude temporally correlated pairs, stationarity over the whole record, noise floors that eat the scaling region from below, and saturation checks across embedding dimensions. The honest summary: dimension analysis is decisive for clean, long, low-dimensional laboratory signals, suggestive at best for short noisy field data — and the Lyapunov route via a fitted model is often the sturdier path there.
Has the Lorenz attractor actually been proven to be a strange attractor, or is it all numerics?
Proven — but remarkably late, and the lateness is instructive. For decades the butterfly was a numerical object: simulations showed chaos, but simulations shadow rather than solve, and the possibility remained that the true dynamics hid stable periodic orbits of enormous period. Smale listed the question among his problems for the 21st century. In 2002 Warwick Tucker closed it with a computer-assisted proof (interval arithmetic with rigorous error bounds, plus normal-form analysis near the origin): the Lorenz equations at the classical parameters possess a robust strange attractor supporting an SRB measure, with a positive Lyapunov exponent — the geometric Lorenz model that theorists had studied since the 1970s is the real thing. The proof style matters as much as the result: like Lanford's Feigenbaum proof earlier in this chapter, it is rigorous mathematics whose computations happen to be executed in floating point with certified bounds — the field that discovered the limits of naive computation also pioneered making computation rigorous.