6 Worms
Given \(s \ge 0\) and \(\epsilon {\gt} 0\), the Newton iteration \(x_{n+1} = (x_n + s/x_n)/2\) produces a rational \(r\) with \(|r - \sqrt{s}| {\lt} \epsilon \). Applied componentwise, this yields a rational approximation distanceApprox of the Euclidean distance between two rational points.
A worm is a polygonal path with at least two rational vertices. Its approximate total length is the sum of distance approximations along consecutive vertices, with per-segment error budget divided equally so the total error remains below a given \(\epsilon \).
A worm can be scaled by any rational factor; scaling by \(1/\ell \) where \(\ell \) is the approximate length brings the worm to approximately unit length. A unit worm bundles a worm together with a uniform bound ensuring the approximate length tends to \(1\) as \(\epsilon \to 0\).
The convex hull of a worm is a convex polygon (when the worm has at least three non-collinear vertices); it summarises all rigid motions of the worm that embed it into a convex target.