x \cdot \frac{\frac{y}{z} \cdot t}{t}\frac{x \cdot y}{z}double f(double x, double y, double z, double t) {
double r119943 = x;
double r119944 = y;
double r119945 = z;
double r119946 = r119944 / r119945;
double r119947 = t;
double r119948 = r119946 * r119947;
double r119949 = r119948 / r119947;
double r119950 = r119943 * r119949;
return r119950;
}
double f(double x, double y, double z, double __attribute__((unused)) t) {
double r119951 = x;
double r119952 = y;
double r119953 = r119951 * r119952;
double r119954 = z;
double r119955 = r119953 / r119954;
return r119955;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Results
Initial program 15.1
Simplified6.4
rmApplied add-cube-cbrt7.1
Applied add-cube-cbrt7.3
Applied times-frac7.3
Applied associate-*r*1.9
Final simplification6.0
herbie shell --seed 2019294
(FPCore (x y z t)
:name "Graphics.Rendering.Chart.Backend.Diagrams:calcFontMetrics from Chart-diagrams-1.5.1"
:precision binary64
(* x (/ (* (/ y z) t) t)))