\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}{y}\frac{\sqrt[3]{\left(\sqrt[3]{e^{\mathsf{fma}\left(t - 1.0, \log a, \log z \cdot y\right) - b}} \cdot \sqrt[3]{e^{\mathsf{fma}\left(t - 1.0, \log a, \log z \cdot y\right) - b}}\right) \cdot \sqrt[3]{e^{\mathsf{fma}\left(t - 1.0, \log a, \log z \cdot y\right) - b}}}}{\left(\sqrt[3]{\sqrt[3]{y}} \cdot \sqrt[3]{\sqrt[3]{y}}\right) \cdot \sqrt[3]{\sqrt[3]{y}}} \cdot \left(\frac{\sqrt[3]{e^{\mathsf{fma}\left(t - 1.0, \log a, \log z \cdot y\right) - b}} \cdot \sqrt[3]{\left(\sqrt[3]{e^{\mathsf{fma}\left(t - 1.0, \log a, \log z \cdot y\right) - b}} \cdot \sqrt[3]{e^{\mathsf{fma}\left(t - 1.0, \log a, \log z \cdot y\right) - b}}\right) \cdot \sqrt[3]{e^{\mathsf{fma}\left(t - 1.0, \log a, \log z \cdot y\right) - b}}}}{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot x\right)double f(double x, double y, double z, double t, double a, double b) {
double r3481130 = x;
double r3481131 = y;
double r3481132 = z;
double r3481133 = log(r3481132);
double r3481134 = r3481131 * r3481133;
double r3481135 = t;
double r3481136 = 1.0;
double r3481137 = r3481135 - r3481136;
double r3481138 = a;
double r3481139 = log(r3481138);
double r3481140 = r3481137 * r3481139;
double r3481141 = r3481134 + r3481140;
double r3481142 = b;
double r3481143 = r3481141 - r3481142;
double r3481144 = exp(r3481143);
double r3481145 = r3481130 * r3481144;
double r3481146 = r3481145 / r3481131;
return r3481146;
}
double f(double x, double y, double z, double t, double a, double b) {
double r3481147 = t;
double r3481148 = 1.0;
double r3481149 = r3481147 - r3481148;
double r3481150 = a;
double r3481151 = log(r3481150);
double r3481152 = z;
double r3481153 = log(r3481152);
double r3481154 = y;
double r3481155 = r3481153 * r3481154;
double r3481156 = fma(r3481149, r3481151, r3481155);
double r3481157 = b;
double r3481158 = r3481156 - r3481157;
double r3481159 = exp(r3481158);
double r3481160 = cbrt(r3481159);
double r3481161 = r3481160 * r3481160;
double r3481162 = r3481161 * r3481160;
double r3481163 = cbrt(r3481162);
double r3481164 = cbrt(r3481154);
double r3481165 = cbrt(r3481164);
double r3481166 = r3481165 * r3481165;
double r3481167 = r3481166 * r3481165;
double r3481168 = r3481163 / r3481167;
double r3481169 = r3481160 * r3481163;
double r3481170 = r3481164 * r3481164;
double r3481171 = r3481169 / r3481170;
double r3481172 = x;
double r3481173 = r3481171 * r3481172;
double r3481174 = r3481168 * r3481173;
return r3481174;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a



Bits error versus b
Initial program 1.9
Simplified2.0
rmApplied add-cube-cbrt2.0
Applied add-cube-cbrt2.0
Applied times-frac2.0
Applied associate-*r*1.1
rmApplied add-cube-cbrt1.1
rmApplied add-cube-cbrt1.1
rmApplied add-cube-cbrt1.1
Final simplification1.1
herbie shell --seed 2019152 +o rules:numerics
(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))