Average Error: 0.0 → 0.0
Time: 1.5s
Precision: 64
\[x - \frac{y}{1 + \frac{x \cdot y}{2}}\]
\[x - \frac{y}{1 + \frac{x \cdot y}{2}}\]
x - \frac{y}{1 + \frac{x \cdot y}{2}}
x - \frac{y}{1 + \frac{x \cdot y}{2}}
double f(double x, double y) {
        double r264223 = x;
        double r264224 = y;
        double r264225 = 1.0;
        double r264226 = r264223 * r264224;
        double r264227 = 2.0;
        double r264228 = r264226 / r264227;
        double r264229 = r264225 + r264228;
        double r264230 = r264224 / r264229;
        double r264231 = r264223 - r264230;
        return r264231;
}

double f(double x, double y) {
        double r264232 = x;
        double r264233 = y;
        double r264234 = 1.0;
        double r264235 = r264232 * r264233;
        double r264236 = 2.0;
        double r264237 = r264235 / r264236;
        double r264238 = r264234 + r264237;
        double r264239 = r264233 / r264238;
        double r264240 = r264232 - r264239;
        return r264240;
}

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

    \[x - \frac{y}{1 + \frac{x \cdot y}{2}}\]
  2. Final simplification0.0

    \[\leadsto x - \frac{y}{1 + \frac{x \cdot y}{2}}\]

Reproduce

herbie shell --seed 2020036 
(FPCore (x y)
  :name "Data.Number.Erf:$cinvnormcdf from erf-2.0.0.0, B"
  :precision binary64
  (- x (/ y (+ 1 (/ (* x y) 2)))))