\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}{y}\frac{\frac{\sqrt[3]{x}}{\frac{\sqrt[3]{y}}{\sqrt[3]{e^{\left(\log z \cdot y + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \left(\sqrt[3]{e^{\left(\log z \cdot y + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(\log z \cdot y + \left(t - 1.0\right) \cdot \log a\right) - b}}\right)}} \cdot \frac{\sqrt[3]{x}}{\frac{\sqrt[3]{y}}{\sqrt[3]{x}}}}{\sqrt[3]{y}}double f(double x, double y, double z, double t, double a, double b) {
double r7999289 = x;
double r7999290 = y;
double r7999291 = z;
double r7999292 = log(r7999291);
double r7999293 = r7999290 * r7999292;
double r7999294 = t;
double r7999295 = 1.0;
double r7999296 = r7999294 - r7999295;
double r7999297 = a;
double r7999298 = log(r7999297);
double r7999299 = r7999296 * r7999298;
double r7999300 = r7999293 + r7999299;
double r7999301 = b;
double r7999302 = r7999300 - r7999301;
double r7999303 = exp(r7999302);
double r7999304 = r7999289 * r7999303;
double r7999305 = r7999304 / r7999290;
return r7999305;
}
double f(double x, double y, double z, double t, double a, double b) {
double r7999306 = x;
double r7999307 = cbrt(r7999306);
double r7999308 = y;
double r7999309 = cbrt(r7999308);
double r7999310 = z;
double r7999311 = log(r7999310);
double r7999312 = r7999311 * r7999308;
double r7999313 = t;
double r7999314 = 1.0;
double r7999315 = r7999313 - r7999314;
double r7999316 = a;
double r7999317 = log(r7999316);
double r7999318 = r7999315 * r7999317;
double r7999319 = r7999312 + r7999318;
double r7999320 = b;
double r7999321 = r7999319 - r7999320;
double r7999322 = exp(r7999321);
double r7999323 = cbrt(r7999322);
double r7999324 = r7999323 * r7999323;
double r7999325 = r7999323 * r7999324;
double r7999326 = r7999309 / r7999325;
double r7999327 = r7999307 / r7999326;
double r7999328 = r7999309 / r7999307;
double r7999329 = r7999307 / r7999328;
double r7999330 = r7999327 * r7999329;
double r7999331 = r7999330 / r7999309;
return r7999331;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a



Bits error versus b
Results
Initial program 1.9
rmApplied add-cube-cbrt1.9
Applied associate-/r*1.9
rmApplied associate-/l*1.6
rmApplied *-un-lft-identity1.6
Applied times-frac1.6
Applied add-cube-cbrt1.6
Applied times-frac1.3
Simplified1.3
rmApplied add-cube-cbrt1.3
Final simplification1.3
herbie shell --seed 2019124
(FPCore (x y z t a b)
:name "Numeric.SpecFunctions:incompleteBetaWorker from math-functions-0.1.5.2"
(/ (* x (exp (- (+ (* y (log z)) (* (- t 1.0) (log a))) b))) y))