Iterative Square-Root Extraction on √720 (Metrica I.8)

Exact Rational Convergents & Quadratic Error Squaring on Hero’s (7, 8, 9) Triangle — Codex Reference: Metrica Book I (Preface & Props. 1–9): Triangles, Heron’s Formula & √720

Mathematical Derivation

On his opening scalene benchmark \((a, b, c) = (7, 8, 9)\) (Schöne 1903, pp. 18–20), Hero obtains \(s = 12\) and \(\Delta^2 = 12 \times 5 \times 4 \times 3 = 720\). Because \(720 = 144 \times 5\) is non-square (\(\sqrt{720} = 12\sqrt{5}\)), Hero introduces the iterative averaging recurrence:

\[x_0 = 27 \quad (27^2 = 729), \qquad x_{k+1} = \frac{1}{2}\!\left(x_k + \frac{N}{x_k}\right).\]

Subtracting \(\sqrt{N}\) and squaring reveals why convergence doubles the number of exact digits at every step:

\[x_{k+1}^2 - N = \frac{(x_k^2 - N)^2}{4 x_k^2}.\]

Exact sympy.Rational Convergent Table

Exact Rational Stream heron_sqrt_convergents(720, steps=4, x0=27)

\(k\)

Exact Rational \(x_k \in \mathbb{Q}\)

Exact Quadratic Excess \(x_k^2 - 720\)

Accurate Digits

\(0\)

\(27\)

\(+9\)

\(2.8\)

\(1\)

\(\frac{161}{6} = 26\frac{5}{6}\) (Hero’s first value)

\(\frac{1}{36}\) (Hero’s \(\lambda\varsigma'\) )

\(4.3\)

\(2\)

\(\frac{51{,}841}{1932}\) (Hero’s second step)

\(\frac{1}{3{,}732{,}624} \approx 2.68 \times 10^{-7}\)

\(8.3\)

\(3\)

\(\frac{5{,}374{,}978{,}561}{200{,}313{,}624}\)

\(\frac{1}{40{,}125{,}547{,}959{,}889{,}976} \approx 2.49 \times 10^{-17}\)

\(18.3\)

\(4\)

\(79\text{-digit} / 77\text{-digit}\) fraction

\(\approx 2.16 \times 10^{-37}\)

\(38.4\)

Executable Python API

import sympy as sp
        from geometor.heron import heron_area, heron_sqrt_convergents

        conv = heron_sqrt_convergents(720, steps=3, x0=27)
        assert conv[1].approx == sp.Rational(161, 6)
        assert conv[1].residual == sp.Rational(1, 36)
        assert conv[2].approx == sp.Rational(51841, 1932)
        assert heron_area(7, 8, 9) == 12 * sp.sqrt(5)