Average Error: 5.2 → 1.5
Time: 3.2m
Precision: 64
Internal precision: 128
\[\left(\left(\left(\sqrt{x + 1.0} - \sqrt{x}\right) + \left(\sqrt{y + 1.0} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1.0} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1.0} - \sqrt{t}\right)\]
\[\left(\left(\frac{1.0}{\sqrt{x + 1.0} + \sqrt{x}} + \frac{1.0}{\sqrt{y + 1.0} + \sqrt{y}}\right) + \left(\sqrt{z + 1.0} - \sqrt{z}\right)\right) + \frac{1.0}{\sqrt{t + 1.0} + \sqrt{t}}\]

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Target

Original5.2
Comparison1.5
Herbie1.5
\[ \left(\left(\frac{1.0}{\sqrt{x + 1.0} + \sqrt{x}} + \frac{1.0}{\sqrt{y + 1.0} + \sqrt{y}}\right) + \frac{1.0}{\sqrt{z + 1.0} + \sqrt{z}}\right) + \left(\sqrt{t + 1.0} - \sqrt{t}\right) \]

Derivation

  1. Initial program 5.2

    \[\left(\left(\left(\sqrt{x + 1.0} - \sqrt{x}\right) + \left(\sqrt{y + 1.0} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1.0} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1.0} - \sqrt{t}\right)\]
  2. Using strategy rm
  3. Applied flip-- 5.1

    \[\leadsto \left(\left(\color{blue}{\frac{{\left(\sqrt{x + 1.0}\right)}^2 - {\left(\sqrt{x}\right)}^2}{\sqrt{x + 1.0} + \sqrt{x}}} + \left(\sqrt{y + 1.0} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1.0} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1.0} - \sqrt{t}\right)\]
  4. Applied simplify 4.0

    \[\leadsto \left(\left(\frac{\color{blue}{1.0}}{\sqrt{x + 1.0} + \sqrt{x}} + \left(\sqrt{y + 1.0} - \sqrt{y}\right)\right) + \left(\sqrt{z + 1.0} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1.0} - \sqrt{t}\right)\]
  5. Using strategy rm
  6. Applied flip-- 4.0

    \[\leadsto \left(\left(\frac{1.0}{\sqrt{x + 1.0} + \sqrt{x}} + \color{blue}{\frac{{\left(\sqrt{y + 1.0}\right)}^2 - {\left(\sqrt{y}\right)}^2}{\sqrt{y + 1.0} + \sqrt{y}}}\right) + \left(\sqrt{z + 1.0} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1.0} - \sqrt{t}\right)\]
  7. Applied simplify 2.8

    \[\leadsto \left(\left(\frac{1.0}{\sqrt{x + 1.0} + \sqrt{x}} + \frac{\color{blue}{1.0}}{\sqrt{y + 1.0} + \sqrt{y}}\right) + \left(\sqrt{z + 1.0} - \sqrt{z}\right)\right) + \left(\sqrt{t + 1.0} - \sqrt{t}\right)\]
  8. Using strategy rm
  9. Applied flip-- 2.7

    \[\leadsto \left(\left(\frac{1.0}{\sqrt{x + 1.0} + \sqrt{x}} + \frac{1.0}{\sqrt{y + 1.0} + \sqrt{y}}\right) + \left(\sqrt{z + 1.0} - \sqrt{z}\right)\right) + \color{blue}{\frac{{\left(\sqrt{t + 1.0}\right)}^2 - {\left(\sqrt{t}\right)}^2}{\sqrt{t + 1.0} + \sqrt{t}}}\]
  10. Applied simplify 1.5

    \[\leadsto \left(\left(\frac{1.0}{\sqrt{x + 1.0} + \sqrt{x}} + \frac{1.0}{\sqrt{y + 1.0} + \sqrt{y}}\right) + \left(\sqrt{z + 1.0} - \sqrt{z}\right)\right) + \frac{\color{blue}{1.0}}{\sqrt{t + 1.0} + \sqrt{t}}\]
  11. Removed slow pow expressions

Runtime

Time bar (total: 3.2m) Debug log

Please include this information when filing a bug report:

herbie --seed '#(1764836081 286171689 1724673573 2385445389 1447801415 1884416772)'
(FPCore (x y z t)
  :name "Main:z from "

  :target
  (+ (+ (+ (/ 1.0 (+ (sqrt (+ x 1.0)) (sqrt x))) (/ 1.0 (+ (sqrt (+ y 1.0)) (sqrt y)))) (/ 1.0 (+ (sqrt (+ z 1.0)) (sqrt z)))) (- (sqrt (+ t 1.0)) (sqrt t)))

  (+ (+ (+ (- (sqrt (+ x 1.0)) (sqrt x)) (- (sqrt (+ y 1.0)) (sqrt y))) (- (sqrt (+ z 1.0)) (sqrt z))) (- (sqrt (+ t 1.0)) (sqrt t))))