cert-machine · the registry · every event re-decided at this build · the paper read 2026-09-17

Sixteen thousand breaking waves, decided against the laboratory — and against the paper.

What a breaking wave looks like — how long the whitecap is, how much area it covers, how steep its face, how fast it travels — has been measured mostly in tanks. In January Guimarães, Stringari, Leckler and Ardhuin published the geometry of 16,369 breaking waves filmed in stereo on the Black Sea over eleven days in 2013, with two sentences and no paper; this page read the table against the laboratory references the authors' own scripts draw. On 16 September 2026 the paper appeared in Geophysical Research Letters (Guimarães, Stringari, Filipot, Leckler, Benetazzo, Chapron). Every number it prints is now read against the same table, and the analysis it says is beyond its scope — the geometry stratified by sea state — is done, record by record.

tl;dr
  • The finding. The paper, read against its own table: of 25 numbers printed in the text, 13 are the rounding of the exact value, 2 the truncation or the integer parts, 2 are coefficients of a randomised fitter that nothing exact can reproduce, and 8 are not the table's under the definitions the scripts use. Of 140 cells in Table 1, 128 are the rounding, 10 a truncation or a tie, 2 neither. The three fitted laws hold to the printed digit — Lb = 0.83 cb²/g, L_D81 = 0.66 cb²/g, Δz = 0.20 cb²/g are the roundings of 0.8268, 0.6602, 0.2032 — and so does the 4 ± 2 % self-similar tail: 4.429 % · 4.141 % · 4.013 % of events lie at or beyond mean + 2 sd on the three ratios, and on that tail g·Lb/cb² is 0.295 (printed 0.30) with r = 0.9. Three printed numbers are not the table's: the range of θ, "3° to 71°", is not the θ column (which runs 1.38° to 42.97°) but the integer parts of a different angle, tan⁻¹(Δz/eB); the printed Hs of Table 1 is, in every one of the 20 records, the column the pickle names sv_fp2 and never the column it names Hs; and "Ab/L²_D81 = 0.22" is the slope for the area at the frame of maximum length, not the maximum area the aspect-ratio histogram uses. The stratified analysis: fitted per record, g·Lb/cb² runs from 0.66 to 1.11 — a factor of 1.66 across twenty sea states around the pooled 0.83 — and it ranks with the record's wave height at ρ = -0.49 (the four roughest seas, Hs above 1.5 m, carry the four lowest coefficients), with wind speed at -0.37, and with wave age at -0.03: the sea-state dependence the abstract asserts is there, as a number, and it is the wave height, not the wave age.
  • The mechanism. The record's table is a pandas pickle; it was written out once as a CSV in which every number is the shortest decimal that round-trips to the double the pickle holds, verified column by column, and pinned. Every literal is read as the rational its digits denote. A comparison with a laboratory constant is an exact sign; a quantile is the k-th smallest value; a rank correlation is Pearson's r on doubled average ranks, so ρ² is an exact rational. The paper's numbers are computed with the definitions its scripts use: a fit "y = a·cb²/g" is least squares through the origin, an exact rational; a mean or a standard deviation of a ratio is an ENCLOSURE (each ratio floored and ceiled at 10⁻³⁰, the sums integer, the square root by integer square roots); the self-similar tail is every event at or above mean + 2 sd, decided against the enclosed threshold with an UNDECIDED count for anything inside it (it is zero); the histogram peak is numpy's Freedman–Diaconis rule with n^(1/3) enclosed by integer cube roots. A printed literal is REPRODUCED when it is the rounding of the exact value, a TRUNCATION when it is the truncation, NOT THE TABLE'S when it is neither.
  • Check it. node instruments/breaking/battery.js — 74 checks, 12 red controls that must fire (a NaN, a comma decimal, a reversed line's sign, a root's lower end, one literal moved by 10⁻¹⁷, a printed 3 against 1.376, a Table 1 count moved by one, a 0.84 against 0.8268, a bin count that straddles an integer), then the whole table and the whole paper re-decided live against the ledger. node tools/run-breaking-ledger.js re-hashes the ten pinned files and rebuilds every number in about three seconds.
breaking events decided
16,369
20 stereo-video records, winds 6–18 m/s, Hs 0.35–1.88 m (Table 1)
printed numbers read
13 of 25
are the rounding of the exact value; 2 truncations, 8 not the table's, 2 RANSAC
Table 1 cells
128 of 140
the rounding; 7 truncations, 3 ties, 2 neither; every event count exact
in Duncan's inclination band
34.5%
5,648 events between 10° and 14.7°; 4,280 flatter, 6,441 steeper
self-similar tail
4.4 · 4.1 · 4.0 %
events at or beyond mean + 2 sd on cb²/(g·Lb), Ab/Lb², Ab/L²_D81 — the paper's 4 ± 2 %
g·Lb/cb² per record
0.66–1.11
twenty sea states around the pooled 0.83; ranks with Hs at ρ = -0.49, with wave age at -0.03
§1 · the paper

Every printed number, read against the table

141 are the rounding of the exact value 12 are a truncation, a rounding tie, or the integer parts 10 are not the table's 2 are RANSAC coefficients, not decidable
One cell per printed number: the 25 in the text first, then the 140 cells of Table 1 record by record (frame rate, duration, area, events, Hs, Tp, U10). Hover a cell for the printed and the exact value.
printedvalueexactverdict
N1636916,369REPRODUCED
θ min31.3763NOT THE TABLE'S
θ max7142.9694NOT THE TABLE'S
θ range as tan⁻¹(Δz/eB)3°..71°tan 0.0614…3.0331INTEGER PARTS
mean Ab/L²0.560.5656TRUNCATION
sd of Ab/L²0.260.2610REPRODUCED
CV of Ab/L²4646.1500REPRODUCED
peak of Ab/L²0.460.5113NOT THE TABLE'S
Lb = a·cb²/g0.830.8268REPRODUCED
L_D81 = a·cb²/g0.660.6602REPRODUCED
Δz = a·cb²/g0.200.2032REPRODUCED
r(speed, geometry) < 0.45< 0.450.4536NOT THE TABLE'S
r(Ab, Lb)0.90.8982REPRODUCED
r(Ab, L_D81)0.80.8079REPRODUCED
r(Δz, eB)0.70.6793REPRODUCED
r(Ab, Δt)0.60.4435NOT THE TABLE'S
r(Lb, Δt)0.50.4752REPRODUCED
r(Δz, Δt)0.40.3676REPRODUCED
self-similar 4 ± 2 %4 ± 2 %4.429% · 4.141% · 4.013%REPRODUCED
tail: g·Lb/cb² = 0.30, r = 0.90.300.2955REPRODUCED
rest: g·Lb/cb² = 0.83, r = 0.40.830.8885NOT THE TABLE'S
Ab = k·L²_D810.220.2696NOT THE TABLE'S
Ab = k·Lb²0.270.1726NOT THE TABLE'S
eA = k·eB2.372.3330NOT DECIDABLE
Ae = k·Ab2.53.5935NOT DECIDABLE

The paper's central numbers survive exact re-derivation. The three quadratic laws of Figure 3 are least squares through the origin on cb²/g, and each printed coefficient is the rounding of the exact rational — 0.8268, 0.6602, 0.2032. The standard deviation and the coefficient of variation of the aspect ratio (0.26, 46 %) are the roundings of enclosures 0.261030 and 46.150 %; the mean, 0.5656, is printed as 0.56, its truncation. The self-similar fraction — every event at or beyond mean + 2 sd on a ratio, sample sd as pandas computes it — is 4.429 % · 4.141 % · 4.013 % across the three ratios, inside the printed 4 ± 2 %, and on the 725 tail events of cb²/(g·Lb) the fit is 0.2955 with r(cb², Lb) = 0.858 — the paper's 0.30 and 0.9.

Three are not the table's. "The range of θ observed here (3° to 71°)" is not the range of the column named theta, which the histogram script plots and which runs 1.38° to 42.97° with no event beyond 45°; it is the integer parts of a different angle, tan⁻¹(Δz_max / eB), whose tangent runs from 0.0614 (3.51°) to 3.0331 (71.75°), decided through enclosed tangents. The Hs column of Table 1 is, to two decimals, the pickle's column sv_fp2 in 19 of 20 records and the pickle's column named Hs in none: the record carries a column called Hs (0.20–0.75, every value a multiple of 1/256) that is not the significant wave height the paper reports, and the earlier version of this page, which read that column, said "Hs 0.20–0.75 m" — the stats row above now reads the printed Hs. And "Ab/L²_D81 = 0.22" is the slope through the origin of the area at the frame of maximum length on the squared Duncan length (0.2243), whereas the histogram, the mean and the tail use the maximum area, whose slope is 0.2696; "Ab/Lb² = 0.27" matches no subset under either definition.

Two printed coefficients cannot be decided at all: "eA/eB = 2.37" and "Ae = 2.5 Ab" are read off RANSAC fits — a randomised robust regressor whose coefficient depends on the seed — and the scripts print them beside a Pearson r from linregress. The r beside the first (0.8) is the rounding of 0.760; the r beside the second (0.9) is not the rounding of 0.793 on the columns the script sets, though the summed columns give 0.862. "r(Ab, Δt) = 0.6" is 0.444 on the maximum area and 0.613 on the summed area. "Pearson r < 0.45 in all cases" holds for 31 of the 32 speed–geometry pairs; speed against vertical extent is 0.4536. In Table 1, 7 cells are truncations rather than roundings (Tp 4.066 printed 4.0, Hs 1.7254 printed 1.72), 3 are ties (U10 9.95 printed 9.9), and two are neither: Hs 0.6759 printed 0.65 and Tp 6.585 printed 6.7.

§2 · the laboratory

Duncan's tank, against the Black Sea

0° 10° 14.7° 20° 30° 40° inclination θ of the aerated region, degrees (1° bins; 0 events beyond 45°) Duncan (1981): 10° 14.7°
The inclination of the aerated region at the frame of its greatest extent, one-degree bins, membership decided exactly from the literal in the table. Duncan's band is the one the authors' histogram script draws; the band holds 34.5% of the events, the flatter side 26.1%, the steeper side 39.3%.
0 0.11 0.5 1 1.5 2 aspect ratio Ab / L²_D81 (bins of 0.05; 1 event beyond 2) Duncan (1981): 0.11 median 0.534 mean + 2 sd: the self-similar tail
The aspect ratio of the aerated region — its plan-view area over the square of its slanted length — in bins of 0.05. Duncan's 0.11 is marked where the script marks it; the dashed mark is the paper's tail threshold, mean + 2 sd. The hump sits well to the right: 16,194 events are above the laboratory value and the median is 4.857 times it.

Duncan (1981) towed a hydrofoil through a tank and measured the breaking region it made: a wedge inclined at 10–14.7° whose cross-sectional area was 0.11 of the square of its length. The authors' scripts draw both numbers over their histograms, and this page decides both event by event with no tolerance: an inclination is INSIDE, ON or OUTSIDE the band by an exact comparison of the literal with 10 and 14.7; an aspect ratio is above or below 0.11 by an exact sign. One caveat belongs to the comparison itself and is the authors' as much as ours: Duncan's 0.11 relates a vertical cross-section to a length, whereas the area measured from above a real sea is the whitecap's plan view. The script draws the line on that histogram; the page decides it as drawn, and says so. The paper prints the same comparison as 0.56 ± 0.26 against 0.11 ± 0.01.

§3 · self-similarity

Three ratios a self-similar breaker would hold constant

ratioq05q25medianq75q95q75 / q25tail ≥ mean + 2 sd
cb² / (g·Lb)0.4520.7801.1331.6072.6062.062×725 ≥ 2.69
Ab / Lb²0.1560.2450.3380.4590.6641.874×678 ≥ 0.68
Ab / L²_D810.1910.3810.5340.7141.0401.875×657 ≥ 1.09

If breaking waves were geometrically similar to one another, a length made from the speed (cb²/g) would be a fixed multiple of the measured length, and the area a fixed multiple of the length squared: each ratio would be a constant up to measurement noise. Here each quantile is an order statistic of the exact ratios — the k-th smallest value, so a number that some event actually has — and the spread factors are exact ratios of two of them. The middle half of the events spans a factor of two in every ratio (q75/q25 = 2.062, 1.874, 1.875); the central ninety per cent, a factor of four to six (q95/q05 = 5.771, 4.263, 5.435). The paper's test marks the tail beyond the mean plus two standard deviations and calls the events in it self-similar: that threshold is enclosed here (the standard deviation needs a square root) and the count at or beyond it is exact — 725, 678 and 657 events, 4.429 % · 4.141 % · 4.013 %, with no event close enough to the threshold to be undecided. The spread factors are the same finding in a form that does not depend on a distribution.

§4 · speed and geometry

What the speed of a breaker tells you about its shape

0 0.25 0.5 0.75 1 speed cb ~ length Lb 0.360 speed cb ~ area Ab 0.375 speed cb ~ height Dz 0.410 speed cb ~ duration Δt 0.150 speed cb ~ Duncan L 0.361 speed cb ~ angle θ 0.097 area Ab ~ length Lb 0.902 height Dz ~ length Lb 0.649 length Lb ~ duration Δt 0.397 Spearman rank correlation ρ, an exact rational read to three decimals breaking speed against a geometric property one geometric property against another
Spearman rank correlations, each an exact rational read to three decimals (hover for ρ² and for Pearson's r on the raw values). cb is the mean breaking speed, Lb the breaking length (half the perimeter), Ab the whitecap area, Dz its vertical extent, Δt its duration, L the Duncan length and θ the inclination. Six pair breaking speed with a geometric property; three pair geometric properties with each other, as the control.

"No predictable relationship" is a sentence about correlation, and a rank correlation is a rational number: average ranks, doubled, are integers, and Pearson's formula on integers is a ratio of two integers. The speed of a breaker ranks with its length at ρ = 0.360, with its area at 0.375, with its vertical extent at 0.410, with its duration at 0.150 and with its inclination at 0.097. Length ranks with area at 0.902. The paper prints Pearson's r for the same pairs — r(Ab, Lb) = 0.9, r(Ab, L_D81) = 0.8, r(Δz, eB) = 0.7 are the roundings of 0.898, 0.808 and 0.679 — and a breaker's speed explains at most ρ² = 0.168 of the rank variation in any property measured.

§5 · the sea state

The analysis the paper calls for: twenty records, twenty coefficients

0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 0.25 0.50 0.75 1.00 1.25 1.50 1.75 2.00 significant wave height of the record, m (Table 1) g·Lb / cb², fitted per record all 16,369 events: 0.827 (the paper's 0.83) one stereo record: least squares through the origin on its own events the pooled coefficient the paper prints
The coefficient of Lb = a·cb²/g fitted separately on each record's events — the same least squares through the origin the paper uses on all 16,369 — against the record's significant wave height as Table 1 prints it. Hover a point for the record, its Tp and U10, its r(cb², Lb) and its share of events in Duncan's band; the table below carries the same numbers.
recordeventsHs, mTp, sU10, m/sg·Lb/cb²in tail
2013/09/22 12:001270.544.76.11.1063.9%
2013/09/22 13:001750.414.16.10.8141.7%
2013/09/23 10:401,0740.464.19.61.0920.5%
2013/09/23 13:183680.354.39.30.8701.9%
2013/09/23 13:554380.404.59.90.8552.7%
2013/09/24 09:451,0550.766.911.60.8426.5%
2013/09/25 10:001,8820.914.514.90.9751.9%
2013/09/25 11:101,5570.674.816.61.0200.7%
2013/09/25 12:153,3200.655.715.31.0061.1%
2013/09/26 12:321290.495.77.40.9491.6%
2013/09/27 07:354611.167.614.00.9272.8%
2013/09/30 08:00400.683.98.80.9840.0%
2013/09/30 10:203860.664.38.70.8863.4%
2013/09/30 13:221690.664.38.20.8464.1%
2013/10/01 06:001,1611.577.015.70.7369.8%
2013/10/01 08:051,1461.886.617.60.7409.2%
2013/10/01 08:501,1881.737.118.00.70411.6%
2013/10/01 11:451,2251.856.616.60.66510.5%
2013/10/02 05:451950.976.17.60.8773.6%
2013/10/02 06:302730.906.19.50.7754.0%

The paper's abstract says the scaling "varies with the sea state"; its conclusions say that showing it "would require a dedicated stratified analysis by Hs, Tp, or wave age, which is beyond the scope of this study". The table above is that analysis, on the paper's own data with the paper's own fit. Each record is one stereo-video run from the Katsiveli platform, its Hs, Tp and U10 constant within it (verified: no record carries two values). The fitted coefficient runs from 0.665 to 1.106 — a factor of 1.66 — around the pooled 0.827, and the four records with Hs above 1.5 m (1 October 2013, winds 15.7–18.0 m/s) carry the four lowest values, 0.66, 0.70, 0.74, 0.74: in the roughest seas a breaker of a given speed is shorter. Across the twenty records the coefficient ranks with Hs at ρ = -0.493 and with Tp at -0.492, with U10 at -0.365, and with wave age cp/U10 at -0.026 — every ρ² an exact rational on twenty ranks (the wave age needs no π: its rank is the rank of 1/(fp·U10)). Twenty points do not make a law, and the records are neither independent nor equal in size (3,320 events in the largest, 40 in the smallest); what they do make is the sentence the abstract asserts, with a number under it and the variable named. The share of events in Duncan's band, by contrast, barely moves with anything (ρ with Hs -0.29, with U10 0.02), and the self-similar tail is concentrated in the rough records: 10%, 9%, 12%, 11% of their events against 4.4% overall.

what this page does NOT claim

Nothing about the ocean is decided here — only about the table and about the paper's arithmetic on it: whether each of its numbers falls inside a stated band, how spread its ratios are, how its columns rank together, whether a printed number is the rounding of the exact one under the definition the scripts use. The table itself is the authors' measurement, with whatever error the stereo reconstruction and the whitecap detection carry; the record describes neither, and the companion instrument on this site (/instruments/stereo-reach) shows what a rig's geometry alone can do to a length. Duncan's band and ratio are taken as the authors' scripts state them; the 1981 paper is not held here, and the plan-view caveat in §2 is real. The 22,116 events the paper says were detected before manual inspection are not in the table and cannot be checked. The Kolmogorov–Smirnov p-values, the AIC ranking of scipy's distributions, the Pareto and lognormal fits, the kernel densities and the bootstrap confidence intervals are float procedures about a distribution and are not reproduced; a RANSAC coefficient is a random variable and is not reproducible by anything. The paper is CC-BY-NC-4.0 and is pinned as the publisher's full-text XML; the data are CC-BY-4.0, and the seven files used were extracted from the 8.9 GB archive by byte range against its published digest.