x \cdot \left(1 - x \cdot y\right)
\left(1 - x \cdot y\right) \cdot x
double f(double x, double y) {
double r64461 = x;
double r64462 = 1.0;
double r64463 = y;
double r64464 = r64461 * r64463;
double r64465 = r64462 - r64464;
double r64466 = r64461 * r64465;
return r64466;
}
double f(double x, double y) {
double r64467 = 1.0;
double r64468 = x;
double r64469 = y;
double r64470 = r64468 * r64469;
double r64471 = r64467 - r64470;
double r64472 = r64471 * r64468;
return r64472;
}



Bits error versus x



Bits error versus y
Results
Initial program 0.1
rmApplied sub-neg0.1
Applied distribute-lft-in0.1
Final simplification0.1
herbie shell --seed 2019298
(FPCore (x y)
:name "Numeric.SpecFunctions:log1p from math-functions-0.1.5.2, A"
:precision binary64
(* x (- 1 (* x y))))