Let "V"("a") be the number of changes of signs in the sequence, when evaluated at a point "a". Sturm's theorem asserts that "V"("a") − "V"("b") is the number of real roots of the polynomial in the interval ["a", "b"]. Thus the Sturm sequence allows computing the number of real roots in a given interval. By subdividing the interval until every subinterval contains at most one root, this provides an algorithm that locates the real roots in intervals of arbitrary small length.