\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}{y}\frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{\frac{\sqrt[3]{y} \cdot \sqrt[3]{y}}{\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}}} \cdot \frac{\sqrt[3]{x}}{\frac{\sqrt[3]{\sqrt[3]{y}} \cdot \sqrt[3]{\sqrt[3]{y} \cdot \sqrt[3]{y}}}{\sqrt[3]{{e}^{\left(\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b\right)}}}}double f(double x, double y, double z, double t, double a, double b) {
double r1567541 = x;
double r1567542 = y;
double r1567543 = z;
double r1567544 = log(r1567543);
double r1567545 = r1567542 * r1567544;
double r1567546 = t;
double r1567547 = 1.0;
double r1567548 = r1567546 - r1567547;
double r1567549 = a;
double r1567550 = log(r1567549);
double r1567551 = r1567548 * r1567550;
double r1567552 = r1567545 + r1567551;
double r1567553 = b;
double r1567554 = r1567552 - r1567553;
double r1567555 = exp(r1567554);
double r1567556 = r1567541 * r1567555;
double r1567557 = r1567556 / r1567542;
return r1567557;
}
double f(double x, double y, double z, double t, double a, double b) {
double r1567558 = x;
double r1567559 = cbrt(r1567558);
double r1567560 = r1567559 * r1567559;
double r1567561 = y;
double r1567562 = cbrt(r1567561);
double r1567563 = r1567562 * r1567562;
double r1567564 = z;
double r1567565 = log(r1567564);
double r1567566 = r1567561 * r1567565;
double r1567567 = t;
double r1567568 = 1.0;
double r1567569 = r1567567 - r1567568;
double r1567570 = a;
double r1567571 = log(r1567570);
double r1567572 = r1567569 * r1567571;
double r1567573 = r1567566 + r1567572;
double r1567574 = b;
double r1567575 = r1567573 - r1567574;
double r1567576 = exp(r1567575);
double r1567577 = cbrt(r1567576);
double r1567578 = r1567577 * r1567577;
double r1567579 = r1567563 / r1567578;
double r1567580 = r1567560 / r1567579;
double r1567581 = cbrt(r1567562);
double r1567582 = cbrt(r1567563);
double r1567583 = r1567581 * r1567582;
double r1567584 = exp(1.0);
double r1567585 = pow(r1567584, r1567575);
double r1567586 = cbrt(r1567585);
double r1567587 = r1567583 / r1567586;
double r1567588 = r1567559 / r1567587;
double r1567589 = r1567580 * r1567588;
return r1567589;
}



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.8
rmApplied associate-/l*1.9
rmApplied add-cube-cbrt1.9
Applied add-cube-cbrt1.9
Applied times-frac1.9
Applied add-cube-cbrt1.9
Applied times-frac1.0
rmApplied *-un-lft-identity1.0
Applied exp-prod1.0
Simplified1.0
rmApplied add-cube-cbrt1.0
Applied cbrt-prod1.0
Final simplification1.0
herbie shell --seed 2019156
(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))