x \cdot e^{y \cdot \left(\log z - t\right) + a \cdot \left(\log \left(1 - z\right) - b\right)}x \cdot \left(\left(\sqrt[3]{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}} \cdot \sqrt[3]{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}}\right) \cdot \sqrt[3]{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}}\right)double f(double x, double y, double z, double t, double a, double b) {
double r101416 = x;
double r101417 = y;
double r101418 = z;
double r101419 = log(r101418);
double r101420 = t;
double r101421 = r101419 - r101420;
double r101422 = r101417 * r101421;
double r101423 = a;
double r101424 = 1.0;
double r101425 = r101424 - r101418;
double r101426 = log(r101425);
double r101427 = b;
double r101428 = r101426 - r101427;
double r101429 = r101423 * r101428;
double r101430 = r101422 + r101429;
double r101431 = exp(r101430);
double r101432 = r101416 * r101431;
return r101432;
}
double f(double x, double y, double z, double t, double a, double b) {
double r101433 = x;
double r101434 = y;
double r101435 = z;
double r101436 = log(r101435);
double r101437 = t;
double r101438 = r101436 - r101437;
double r101439 = r101434 * r101438;
double r101440 = a;
double r101441 = 1.0;
double r101442 = log(r101441);
double r101443 = 0.5;
double r101444 = 2.0;
double r101445 = pow(r101435, r101444);
double r101446 = pow(r101441, r101444);
double r101447 = r101445 / r101446;
double r101448 = r101443 * r101447;
double r101449 = r101441 * r101435;
double r101450 = r101448 + r101449;
double r101451 = r101442 - r101450;
double r101452 = b;
double r101453 = r101451 - r101452;
double r101454 = r101440 * r101453;
double r101455 = r101439 + r101454;
double r101456 = exp(r101455);
double r101457 = cbrt(r101456);
double r101458 = r101457 * r101457;
double r101459 = r101458 * r101457;
double r101460 = r101433 * r101459;
return r101460;
}



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 2.0
Taylor expanded around 0 0.4
rmApplied add-cube-cbrt0.4
Final simplification0.4
herbie shell --seed 2019198
(FPCore (x y z t a b)
:name "Numeric.SpecFunctions:incompleteBetaApprox from math-functions-0.1.5.2, B"
(* x (exp (+ (* y (- (log z) t)) (* a (- (log (- 1.0 z)) b))))))