Average Error: 19.2 → 19.0
Time: 41.8s
Precision: 64
Internal Precision: 1088
\[\frac{1}{\sqrt{x}} - \frac{1}{\sqrt{x + 1}}\]
\[\begin{array}{l} \mathbf{if}\;\frac{(\left({x}^{\left(-\frac{1}{2}\right)}\right) \cdot \left({x}^{\left(-\frac{1}{2}\right)}\right) + \left(\frac{-1}{x + 1}\right))_*}{{x}^{\left(-\frac{1}{2}\right)} + \frac{1}{\sqrt{x + 1}}} \le 6.746107001627108 \cdot 10^{-82}:\\ \;\;\;\;\frac{{\left({x}^{\left(-\frac{1}{2}\right)}\right)}^{3} - {\left(\frac{1}{\sqrt{x + 1}}\right)}^{3}}{(\left({x}^{\left(-\frac{1}{2}\right)}\right) \cdot \left({x}^{\left(-\frac{1}{2}\right)}\right) + \left(\frac{1}{x + 1}\right))_* + \frac{{x}^{\left(-\frac{1}{2}\right)}}{\sqrt{x + 1}}}\\ \mathbf{else}:\\ \;\;\;\;\frac{(\left({x}^{\left(-\frac{1}{2}\right)}\right) \cdot \left({x}^{\left(-\frac{1}{2}\right)}\right) + \left(\frac{-1}{x + 1}\right))_*}{{x}^{\left(-\frac{1}{2}\right)} + \frac{1}{\sqrt{x + 1}}}\\ \end{array}\]

Error

Bits error versus x

Target

Original19.2
Target0.6
Herbie19.0
\[\frac{1}{\left(x + 1\right) \cdot \sqrt{x} + x \cdot \sqrt{x + 1}}\]

Derivation

  1. Split input into 2 regimes
  2. if (/ (fma (pow x (- 1/2)) (pow x (- 1/2)) (/ (- 1) (+ x 1))) (+ (pow x (- 1/2)) (/ 1 (sqrt (+ x 1))))) < 6.746107001627108e-82

    1. Initial program 34.8

      \[\frac{1}{\sqrt{x}} - \frac{1}{\sqrt{x + 1}}\]
    2. Using strategy rm
    3. Applied pow1/234.8

      \[\leadsto \frac{1}{\color{blue}{{x}^{\frac{1}{2}}}} - \frac{1}{\sqrt{x + 1}}\]
    4. Applied pow-flip41.8

      \[\leadsto \color{blue}{{x}^{\left(-\frac{1}{2}\right)}} - \frac{1}{\sqrt{x + 1}}\]
    5. Using strategy rm
    6. Applied flip3--35.0

      \[\leadsto \color{blue}{\frac{{\left({x}^{\left(-\frac{1}{2}\right)}\right)}^{3} - {\left(\frac{1}{\sqrt{x + 1}}\right)}^{3}}{{x}^{\left(-\frac{1}{2}\right)} \cdot {x}^{\left(-\frac{1}{2}\right)} + \left(\frac{1}{\sqrt{x + 1}} \cdot \frac{1}{\sqrt{x + 1}} + {x}^{\left(-\frac{1}{2}\right)} \cdot \frac{1}{\sqrt{x + 1}}\right)}}\]
    7. Applied simplify35.0

      \[\leadsto \frac{{\left({x}^{\left(-\frac{1}{2}\right)}\right)}^{3} - {\left(\frac{1}{\sqrt{x + 1}}\right)}^{3}}{\color{blue}{(\left({x}^{\left(-\frac{1}{2}\right)}\right) \cdot \left({x}^{\left(-\frac{1}{2}\right)}\right) + \left(\frac{1}{x + 1}\right))_* + \frac{{x}^{\left(-\frac{1}{2}\right)}}{\sqrt{x + 1}}}}\]

    if 6.746107001627108e-82 < (/ (fma (pow x (- 1/2)) (pow x (- 1/2)) (/ (- 1) (+ x 1))) (+ (pow x (- 1/2)) (/ 1 (sqrt (+ x 1)))))

    1. Initial program 9.6

      \[\frac{1}{\sqrt{x}} - \frac{1}{\sqrt{x + 1}}\]
    2. Using strategy rm
    3. Applied pow1/29.6

      \[\leadsto \frac{1}{\color{blue}{{x}^{\frac{1}{2}}}} - \frac{1}{\sqrt{x + 1}}\]
    4. Applied pow-flip9.3

      \[\leadsto \color{blue}{{x}^{\left(-\frac{1}{2}\right)}} - \frac{1}{\sqrt{x + 1}}\]
    5. Using strategy rm
    6. Applied flip--9.3

      \[\leadsto \color{blue}{\frac{{x}^{\left(-\frac{1}{2}\right)} \cdot {x}^{\left(-\frac{1}{2}\right)} - \frac{1}{\sqrt{x + 1}} \cdot \frac{1}{\sqrt{x + 1}}}{{x}^{\left(-\frac{1}{2}\right)} + \frac{1}{\sqrt{x + 1}}}}\]
    7. Applied simplify9.1

      \[\leadsto \frac{\color{blue}{(\left({x}^{\left(-\frac{1}{2}\right)}\right) \cdot \left({x}^{\left(-\frac{1}{2}\right)}\right) + \left(\frac{-1}{x + 1}\right))_*}}{{x}^{\left(-\frac{1}{2}\right)} + \frac{1}{\sqrt{x + 1}}}\]
  3. Recombined 2 regimes into one program.

Runtime

Time bar (total: 41.8s)Debug logProfile

herbie shell --seed '#(1071246582 2318319007 2683472949 3810440501 3233274817 2724848749)' +o rules:numerics
(FPCore (x)
  :name "2isqrt (example 3.6)"

  :herbie-target
  (/ 1 (+ (* (+ x 1) (sqrt x)) (* x (sqrt (+ x 1)))))

  (- (/ 1 (sqrt x)) (/ 1 (sqrt (+ x 1)))))