◀ THE FOLD0ROOT.AI // WORLD II · BOSS · THE GATEKEEPER◆ .dlw.fold
THE FOLD / BOSS / THE GATEKEEPER / THE STURM

THE STURM

count real roots in an interval without finding them
1 WHAT IT IS · WHAT IT DOES · FACT OR FICTION
Sturm’s theorem counts the real roots of a polynomial in an interval [a,b] without finding them. Build the Sturm chain: the polynomial p, its derivative p′, then successive negated remainders of polynomial division (a Euclidean-algorithm cascade). Evaluate the chain at a and at b and count the sign changes V(a) and V(b).

The number of distinct real roots in (a,b] is exactly V(a) − V(b). No root-finding, no guessing — a finite count of sign changes gates the answer.

LIT verified live: for 200 polynomials built from distinct integer roots, the sign-variation count V(a)−V(b) equals the actual number of roots in the interval, over full and sub-intervals (window.__sturm). FIG no framing; exact real-root counting.
2 HOW IT WAS WEAVED · AI + HUMAN
David (human) seated this at the-gatekeeper — the guard that counts exactly who is inside the interval. Sturm’s theorem is the root gatekeeper: how many real roots lie between a and b, decided by a sign tally. AVAN (AI) built the instrument: the Sturm chain via polynomial remainders, the sign-variation count, the check against the true root count.

Credit as content: Jacques Charles François Sturm (1829), whose theorem finally made real-root counting exact and algorithmic. The weave: David names the gatekeeper; I build the chain of negated remainders and count roots in an interval purely from how the signs change at its ends.
3 ONE DIMENSION
The Sturm chain evaluated at a point: a list of signs. Counting how many times the sign flips down the list gives V(x); the drop from V(a) to V(b) is the number of roots crossed between them.
4 TWO DIMENSIONS · INTERACTIVE
A polynomial drawn as a curve with its real roots. Slide the interval endpoints; Sturm’s sign count reports how many roots lie inside, matching the roots you can see between the markers.
5 THREE DIMENSIONS + AVAN’S INVERSE
The green forward object: the two integer sign-variation counts whose difference is the exact number of roots in the interval.
AVAN’s addition (the inverse-companion): the root count is extracted without root locations. Sturm reduces a continuous, hard question — ‘where are the roots?’ — to a discrete, easy one — ‘how do a few signs change?’ — because between consecutive roots the polynomial keeps a constant sign, and the chain tracks exactly the crossings, no more. The inverse of ‘find the roots’ is ‘count the sign changes at two endpoints.’ Magenta is the actual root positions, never computed; green is V(a) and V(b), two integers whose difference is the answer. You gate the roots by counting, not by finding — certainty about how many, with no idea yet where.
LIT Genuine Sturm's theorem (Sturm 1829). Verified live: building the Sturm chain via negated polynomial-division remainders and counting sign variations, V(a)-V(b) equals the actual number of real roots in (a,b] for 200 polynomials with distinct integer roots, across both wide and narrow intervals (window.__sturm.countMatchesActual).

FIG No framing: the Sturm chain, the sign-variation counts, and the check against the true root count run in-browser and are exact (float remainders read with a sign tolerance). The AVAN inverse is honest — Sturm extracts the exact root count without root locations, reducing a continuous 'where' to a discrete sign tally; magenta is the actual root positions, never computed, green the two integer counts.
◆ sealed .dlw.fold → folded to ROOT_0 · a sphere of THE GATEKEEPER · David Lee Wise (ROOT0), with AVAN