Average Error: 0.4 → 0.4
Time: 15.1s
Precision: 64
\[\left(3 \cdot \sqrt{x}\right) \cdot \left(\left(y + \frac{1}{x \cdot 9}\right) - 1\right)\]
\[\left(\sqrt{x} \cdot \left(\frac{\frac{1}{x}}{9} - 1\right) + \sqrt{x} \cdot y\right) \cdot 3\]
\left(3 \cdot \sqrt{x}\right) \cdot \left(\left(y + \frac{1}{x \cdot 9}\right) - 1\right)
\left(\sqrt{x} \cdot \left(\frac{\frac{1}{x}}{9} - 1\right) + \sqrt{x} \cdot y\right) \cdot 3
double f(double x, double y) {
        double r25086461 = 3.0;
        double r25086462 = x;
        double r25086463 = sqrt(r25086462);
        double r25086464 = r25086461 * r25086463;
        double r25086465 = y;
        double r25086466 = 1.0;
        double r25086467 = 9.0;
        double r25086468 = r25086462 * r25086467;
        double r25086469 = r25086466 / r25086468;
        double r25086470 = r25086465 + r25086469;
        double r25086471 = r25086470 - r25086466;
        double r25086472 = r25086464 * r25086471;
        return r25086472;
}

double f(double x, double y) {
        double r25086473 = x;
        double r25086474 = sqrt(r25086473);
        double r25086475 = 1.0;
        double r25086476 = r25086475 / r25086473;
        double r25086477 = 9.0;
        double r25086478 = r25086476 / r25086477;
        double r25086479 = r25086478 - r25086475;
        double r25086480 = r25086474 * r25086479;
        double r25086481 = y;
        double r25086482 = r25086474 * r25086481;
        double r25086483 = r25086480 + r25086482;
        double r25086484 = 3.0;
        double r25086485 = r25086483 * r25086484;
        return r25086485;
}

Error

Bits error versus x

Bits error versus y

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

Original0.4
Target0.4
Herbie0.4
\[3 \cdot \left(y \cdot \sqrt{x} + \left(\frac{1}{x \cdot 9} - 1\right) \cdot \sqrt{x}\right)\]

Derivation

  1. Initial program 0.4

    \[\left(3 \cdot \sqrt{x}\right) \cdot \left(\left(y + \frac{1}{x \cdot 9}\right) - 1\right)\]
  2. Using strategy rm
  3. Applied associate-*l*0.4

    \[\leadsto \color{blue}{3 \cdot \left(\sqrt{x} \cdot \left(\left(y + \frac{1}{x \cdot 9}\right) - 1\right)\right)}\]
  4. Using strategy rm
  5. Applied associate--l+0.4

    \[\leadsto 3 \cdot \left(\sqrt{x} \cdot \color{blue}{\left(y + \left(\frac{1}{x \cdot 9} - 1\right)\right)}\right)\]
  6. Applied distribute-rgt-in0.4

    \[\leadsto 3 \cdot \color{blue}{\left(y \cdot \sqrt{x} + \left(\frac{1}{x \cdot 9} - 1\right) \cdot \sqrt{x}\right)}\]
  7. Using strategy rm
  8. Applied associate-/r*0.4

    \[\leadsto 3 \cdot \left(y \cdot \sqrt{x} + \left(\color{blue}{\frac{\frac{1}{x}}{9}} - 1\right) \cdot \sqrt{x}\right)\]
  9. Final simplification0.4

    \[\leadsto \left(\sqrt{x} \cdot \left(\frac{\frac{1}{x}}{9} - 1\right) + \sqrt{x} \cdot y\right) \cdot 3\]

Reproduce

herbie shell --seed 2019179 
(FPCore (x y)
  :name "Numeric.SpecFunctions:incompleteGamma from math-functions-0.1.5.2, B"

  :herbie-target
  (* 3.0 (+ (* y (sqrt x)) (* (- (/ 1.0 (* x 9.0)) 1.0) (sqrt x))))

  (* (* 3.0 (sqrt x)) (- (+ y (/ 1.0 (* x 9.0))) 1.0)))