\frac{x \cdot \left(\frac{x}{y} + 1\right)}{x + 1}\frac{x}{\frac{x + 1}{\frac{x}{y} + 1}}double f(double x, double y) {
double r495380 = x;
double r495381 = y;
double r495382 = r495380 / r495381;
double r495383 = 1.0;
double r495384 = r495382 + r495383;
double r495385 = r495380 * r495384;
double r495386 = r495380 + r495383;
double r495387 = r495385 / r495386;
return r495387;
}
double f(double x, double y) {
double r495388 = x;
double r495389 = 1.0;
double r495390 = r495388 + r495389;
double r495391 = y;
double r495392 = r495388 / r495391;
double r495393 = r495392 + r495389;
double r495394 = r495390 / r495393;
double r495395 = r495388 / r495394;
return r495395;
}




Bits error versus x




Bits error versus y
Results
| Original | 9.6 |
|---|---|
| Target | 0.1 |
| Herbie | 0.1 |
Initial program 9.6
rmApplied associate-/l*0.1
Final simplification0.1
herbie shell --seed 2019304
(FPCore (x y)
:name "Codec.Picture.Types:toneMapping from JuicyPixels-3.2.6.1"
:precision binary64
:herbie-target
(* (/ x 1) (/ (+ (/ x y) 1) (+ x 1)))
(/ (* x (+ (/ x y) 1)) (+ x 1)))