Average Error: 0.0 → 0.0
Time: 2.0s
Precision: 64
\[\left(x \cdot \left(y - 1\right) - y \cdot 0.5\right) + 0.918938533204673003\]
\[\left(\left(x \cdot y + x \cdot \left(-1\right)\right) - y \cdot 0.5\right) + 0.918938533204673003\]
\left(x \cdot \left(y - 1\right) - y \cdot 0.5\right) + 0.918938533204673003
\left(\left(x \cdot y + x \cdot \left(-1\right)\right) - y \cdot 0.5\right) + 0.918938533204673003
double f(double x, double y) {
        double r38388 = x;
        double r38389 = y;
        double r38390 = 1.0;
        double r38391 = r38389 - r38390;
        double r38392 = r38388 * r38391;
        double r38393 = 0.5;
        double r38394 = r38389 * r38393;
        double r38395 = r38392 - r38394;
        double r38396 = 0.918938533204673;
        double r38397 = r38395 + r38396;
        return r38397;
}

double f(double x, double y) {
        double r38398 = x;
        double r38399 = y;
        double r38400 = r38398 * r38399;
        double r38401 = 1.0;
        double r38402 = -r38401;
        double r38403 = r38398 * r38402;
        double r38404 = r38400 + r38403;
        double r38405 = 0.5;
        double r38406 = r38399 * r38405;
        double r38407 = r38404 - r38406;
        double r38408 = 0.918938533204673;
        double r38409 = r38407 + r38408;
        return r38409;
}

Error

Bits error versus x

Bits error versus y

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[\left(x \cdot \left(y - 1\right) - y \cdot 0.5\right) + 0.918938533204673003\]
  2. Using strategy rm
  3. Applied sub-neg0.0

    \[\leadsto \left(x \cdot \color{blue}{\left(y + \left(-1\right)\right)} - y \cdot 0.5\right) + 0.918938533204673003\]
  4. Applied distribute-lft-in0.0

    \[\leadsto \left(\color{blue}{\left(x \cdot y + x \cdot \left(-1\right)\right)} - y \cdot 0.5\right) + 0.918938533204673003\]
  5. Final simplification0.0

    \[\leadsto \left(\left(x \cdot y + x \cdot \left(-1\right)\right) - y \cdot 0.5\right) + 0.918938533204673003\]

Reproduce

herbie shell --seed 2020021 
(FPCore (x y)
  :name "Numeric.SpecFunctions:logGamma from math-functions-0.1.5.2, A"
  :precision binary64
  (+ (- (* x (- y 1)) (* y 0.5)) 0.918938533204673))