x \cdot \frac{\frac{y}{z} \cdot t}{t}\left(\left(x \cdot \left|\frac{\sqrt[3]{y}}{\sqrt[3]{z}}\right|\right) \cdot \sqrt{\frac{\sqrt[3]{y} \cdot \sqrt[3]{y}}{\sqrt[3]{z} \cdot \sqrt[3]{z}}}\right) \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{z}}double f(double x, double y, double z, double t) {
double r148437 = x;
double r148438 = y;
double r148439 = z;
double r148440 = r148438 / r148439;
double r148441 = t;
double r148442 = r148440 * r148441;
double r148443 = r148442 / r148441;
double r148444 = r148437 * r148443;
return r148444;
}
double f(double x, double y, double z, double __attribute__((unused)) t) {
double r148445 = x;
double r148446 = y;
double r148447 = cbrt(r148446);
double r148448 = z;
double r148449 = cbrt(r148448);
double r148450 = r148447 / r148449;
double r148451 = fabs(r148450);
double r148452 = r148445 * r148451;
double r148453 = r148447 * r148447;
double r148454 = r148449 * r148449;
double r148455 = r148453 / r148454;
double r148456 = sqrt(r148455);
double r148457 = r148452 * r148456;
double r148458 = r148457 * r148450;
return r148458;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Results
Initial program 14.4
Simplified6.2
rmApplied add-cube-cbrt7.0
Applied add-cube-cbrt7.2
Applied times-frac7.2
Applied associate-*r*1.9
rmApplied add-sqr-sqrt1.9
Applied associate-*r*1.9
Simplified1.9
Final simplification1.9
herbie shell --seed 2019362 +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)))