\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}{y}\left(\sqrt[3]{\frac{\left(\sqrt{e^{\left(\log z \cdot y + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \sqrt{e^{\left(\log z \cdot y + \left(t - 1.0\right) \cdot \log a\right) - b}}\right) \cdot x}{y}} \cdot \sqrt[3]{\frac{{e}^{\left(\left(\log z \cdot y + \left(t - 1.0\right) \cdot \log a\right) - b\right)} \cdot x}{y}}\right) \cdot \sqrt[3]{\frac{{e}^{\left(\left(\log z \cdot y + \left(t - 1.0\right) \cdot \log a\right) - b\right)} \cdot x}{y}}double f(double x, double y, double z, double t, double a, double b) {
double r3661129 = x;
double r3661130 = y;
double r3661131 = z;
double r3661132 = log(r3661131);
double r3661133 = r3661130 * r3661132;
double r3661134 = t;
double r3661135 = 1.0;
double r3661136 = r3661134 - r3661135;
double r3661137 = a;
double r3661138 = log(r3661137);
double r3661139 = r3661136 * r3661138;
double r3661140 = r3661133 + r3661139;
double r3661141 = b;
double r3661142 = r3661140 - r3661141;
double r3661143 = exp(r3661142);
double r3661144 = r3661129 * r3661143;
double r3661145 = r3661144 / r3661130;
return r3661145;
}
double f(double x, double y, double z, double t, double a, double b) {
double r3661146 = z;
double r3661147 = log(r3661146);
double r3661148 = y;
double r3661149 = r3661147 * r3661148;
double r3661150 = t;
double r3661151 = 1.0;
double r3661152 = r3661150 - r3661151;
double r3661153 = a;
double r3661154 = log(r3661153);
double r3661155 = r3661152 * r3661154;
double r3661156 = r3661149 + r3661155;
double r3661157 = b;
double r3661158 = r3661156 - r3661157;
double r3661159 = exp(r3661158);
double r3661160 = sqrt(r3661159);
double r3661161 = r3661160 * r3661160;
double r3661162 = x;
double r3661163 = r3661161 * r3661162;
double r3661164 = r3661163 / r3661148;
double r3661165 = cbrt(r3661164);
double r3661166 = exp(1.0);
double r3661167 = pow(r3661166, r3661158);
double r3661168 = r3661167 * r3661162;
double r3661169 = r3661168 / r3661148;
double r3661170 = cbrt(r3661169);
double r3661171 = r3661165 * r3661170;
double r3661172 = r3661171 * r3661170;
return r3661172;
}



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 *-un-lft-identity1.9
Applied *-un-lft-identity1.9
Applied distribute-lft-out--1.9
Applied exp-prod1.9
Simplified1.9
rmApplied add-cube-cbrt1.9
rmApplied e-exp-11.9
Applied pow-exp1.9
rmApplied add-sqr-sqrt1.9
Final simplification1.9
herbie shell --seed 2019135
(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))