Every method so far assumed some structure and learned the rest. SINDy assumes almost nothing and discovers the structure itself. Give it measured states and their rates of change, hand it a library of candidate terms — 1, x, y, x², xy, …, x³ — and it solves for the coefficients that reproduce the dynamics. The trick is a sparsity prior: the true physics uses only a FEW terms, so it sequentially thresholds away the small coefficients and refits. The Bench runs real SINDy on noisy data from the Duffing oscillator. The coefficient grid starts dense — twelve terms, most of them spurious noise. Turn the threshold λ up and watch the grid sparsify: the junk coefficients vanish until, in the sweet spot, exactly four survive and the discovered equations read ẋ = y, ẏ = −x − 0.3x³ − 0.1y. Push λ too far and it kills the real terms too. You have discovered an equation.
Predict first You have only noisy position data from a swinging pendulum and no equations. Can an algorithm recover the actual governing law from the data alone?
No — data can't yield the law Yes — sparse regression can pick out the true terms (SINDy) Only if you already know the answer
SINDy fits the dynamics as a sparse combination of candidate terms; the few nonzero terms ARE the discovered equation. Data becomes law — not just a black-box predictor.