\frac{x \cdot \left(\frac{x}{y} + 1\right)}{x + 1}\frac{x}{x + 1} \cdot \frac{x}{y} + \frac{x}{x + 1} \cdot 1double f(double x, double y) {
double r818840 = x;
double r818841 = y;
double r818842 = r818840 / r818841;
double r818843 = 1.0;
double r818844 = r818842 + r818843;
double r818845 = r818840 * r818844;
double r818846 = r818840 + r818843;
double r818847 = r818845 / r818846;
return r818847;
}
double f(double x, double y) {
double r818848 = x;
double r818849 = 1.0;
double r818850 = r818848 + r818849;
double r818851 = r818848 / r818850;
double r818852 = y;
double r818853 = r818848 / r818852;
double r818854 = r818851 * r818853;
double r818855 = r818851 * r818849;
double r818856 = r818854 + r818855;
return r818856;
}




Bits error versus x




Bits error versus y
Results
| Original | 9.0 |
|---|---|
| Target | 0.1 |
| Herbie | 0.1 |
Initial program 9.0
rmApplied associate-/l*0.1
rmApplied associate-/r/0.1
rmApplied distribute-lft-in0.1
Final simplification0.1
herbie shell --seed 2020062
(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)))