Average Error: 0.0 → 0.0
Time: 10.3s
Precision: 64
\[\left(x \cdot \left(y - 1\right) - y \cdot 0.5\right) + 0.9189385332046730026078762421093415468931\]
\[\left(0.9189385332046730026078762421093415468931 - y \cdot 0.5\right) + \left(y - 1\right) \cdot x\]
\left(x \cdot \left(y - 1\right) - y \cdot 0.5\right) + 0.9189385332046730026078762421093415468931
\left(0.9189385332046730026078762421093415468931 - y \cdot 0.5\right) + \left(y - 1\right) \cdot x
double f(double x, double y) {
        double r47129 = x;
        double r47130 = y;
        double r47131 = 1.0;
        double r47132 = r47130 - r47131;
        double r47133 = r47129 * r47132;
        double r47134 = 0.5;
        double r47135 = r47130 * r47134;
        double r47136 = r47133 - r47135;
        double r47137 = 0.918938533204673;
        double r47138 = r47136 + r47137;
        return r47138;
}

double f(double x, double y) {
        double r47139 = 0.918938533204673;
        double r47140 = y;
        double r47141 = 0.5;
        double r47142 = r47140 * r47141;
        double r47143 = r47139 - r47142;
        double r47144 = 1.0;
        double r47145 = r47140 - r47144;
        double r47146 = x;
        double r47147 = r47145 * r47146;
        double r47148 = r47143 + r47147;
        return r47148;
}

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.9189385332046730026078762421093415468931\]
  2. Simplified0.0

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

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

Reproduce

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