x \cdot \frac{\frac{y}{z} \cdot t}{t}\left(\left(x \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{z}}\right) \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{z}}\right) \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{z}}double f(double x, double y, double z, double t) {
double r170284 = x;
double r170285 = y;
double r170286 = z;
double r170287 = r170285 / r170286;
double r170288 = t;
double r170289 = r170287 * r170288;
double r170290 = r170289 / r170288;
double r170291 = r170284 * r170290;
return r170291;
}
double f(double x, double y, double z, double __attribute__((unused)) t) {
double r170292 = x;
double r170293 = y;
double r170294 = cbrt(r170293);
double r170295 = z;
double r170296 = cbrt(r170295);
double r170297 = r170294 / r170296;
double r170298 = r170292 * r170297;
double r170299 = r170298 * r170297;
double r170300 = r170299 * r170297;
return r170300;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Results
Initial program 14.6
Simplified6.1
rmApplied add-cube-cbrt6.9
Applied add-cube-cbrt7.1
Applied times-frac7.1
Applied associate-*r*2.1
rmApplied times-frac2.2
Applied associate-*r*1.4
Final simplification1.4
herbie shell --seed 2019352
(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)))