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 r91599 = x;
double r91600 = y;
double r91601 = z;
double r91602 = r91600 / r91601;
double r91603 = t;
double r91604 = r91602 * r91603;
double r91605 = r91604 / r91603;
double r91606 = r91599 * r91605;
return r91606;
}
double f(double x, double y, double z, double __attribute__((unused)) t) {
double r91607 = x;
double r91608 = y;
double r91609 = cbrt(r91608);
double r91610 = z;
double r91611 = cbrt(r91610);
double r91612 = r91609 / r91611;
double r91613 = r91607 * r91612;
double r91614 = r91613 * r91612;
double r91615 = r91614 * r91612;
return r91615;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Results
Initial program 14.8
Simplified6.4
rmApplied add-cube-cbrt7.2
Applied add-cube-cbrt7.4
Applied times-frac7.4
Applied associate-*r*2.0
rmApplied times-frac2.0
Applied associate-*r*1.4
Final simplification1.4
herbie shell --seed 2020081 +o rules:numerics
(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)))