x \cdot \left(1 - x \cdot y\right)
x \cdot \left(1 - x \cdot y\right)
double f(double x, double y) {
double r92509 = x;
double r92510 = 1.0;
double r92511 = y;
double r92512 = r92509 * r92511;
double r92513 = r92510 - r92512;
double r92514 = r92509 * r92513;
return r92514;
}
double f(double x, double y) {
double r92515 = x;
double r92516 = 1.0;
double r92517 = y;
double r92518 = r92515 * r92517;
double r92519 = r92516 - r92518;
double r92520 = r92515 * r92519;
return r92520;
}



Bits error versus x



Bits error versus y
Results
Initial program 0.1
Final simplification0.1
herbie shell --seed 2020047
(FPCore (x y)
:name "Numeric.SpecFunctions:log1p from math-functions-0.1.5.2, A"
:precision binary64
(* x (- 1 (* x y))))