\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}{y}\begin{array}{l}
\mathbf{if}\;\log a \cdot \left(t - 1.0\right) \le -674.4137833543721:\\
\;\;\;\;\frac{x \cdot {e}^{\left(\left(\log z \cdot y + \log a \cdot \left(t - 1.0\right)\right) - b\right)}}{y}\\
\mathbf{elif}\;\log a \cdot \left(t - 1.0\right) \le -122.10184297103054:\\
\;\;\;\;\left(x \cdot \frac{e^{\log a \cdot \left(t - 1.0\right)}}{\sqrt[3]{y} \cdot \sqrt[3]{y}}\right) \cdot \frac{e^{\log z \cdot y - b}}{\sqrt[3]{y}}\\
\mathbf{else}:\\
\;\;\;\;\sqrt[3]{\frac{e^{\left(\log z \cdot y + \log a \cdot \left(t - 1.0\right)\right) - b} \cdot x}{y}} \cdot \left(\sqrt[3]{\frac{e^{\left(\log z \cdot y + \log a \cdot \left(t - 1.0\right)\right) - b} \cdot x}{y}} \cdot \sqrt[3]{\frac{e^{\left(\log z \cdot y + \log a \cdot \left(t - 1.0\right)\right) - b} \cdot x}{y}}\right)\\
\end{array}double f(double x, double y, double z, double t, double a, double b) {
double r1679864 = x;
double r1679865 = y;
double r1679866 = z;
double r1679867 = log(r1679866);
double r1679868 = r1679865 * r1679867;
double r1679869 = t;
double r1679870 = 1.0;
double r1679871 = r1679869 - r1679870;
double r1679872 = a;
double r1679873 = log(r1679872);
double r1679874 = r1679871 * r1679873;
double r1679875 = r1679868 + r1679874;
double r1679876 = b;
double r1679877 = r1679875 - r1679876;
double r1679878 = exp(r1679877);
double r1679879 = r1679864 * r1679878;
double r1679880 = r1679879 / r1679865;
return r1679880;
}
double f(double x, double y, double z, double t, double a, double b) {
double r1679881 = a;
double r1679882 = log(r1679881);
double r1679883 = t;
double r1679884 = 1.0;
double r1679885 = r1679883 - r1679884;
double r1679886 = r1679882 * r1679885;
double r1679887 = -674.4137833543721;
bool r1679888 = r1679886 <= r1679887;
double r1679889 = x;
double r1679890 = exp(1.0);
double r1679891 = z;
double r1679892 = log(r1679891);
double r1679893 = y;
double r1679894 = r1679892 * r1679893;
double r1679895 = r1679894 + r1679886;
double r1679896 = b;
double r1679897 = r1679895 - r1679896;
double r1679898 = pow(r1679890, r1679897);
double r1679899 = r1679889 * r1679898;
double r1679900 = r1679899 / r1679893;
double r1679901 = -122.10184297103054;
bool r1679902 = r1679886 <= r1679901;
double r1679903 = exp(r1679886);
double r1679904 = cbrt(r1679893);
double r1679905 = r1679904 * r1679904;
double r1679906 = r1679903 / r1679905;
double r1679907 = r1679889 * r1679906;
double r1679908 = r1679894 - r1679896;
double r1679909 = exp(r1679908);
double r1679910 = r1679909 / r1679904;
double r1679911 = r1679907 * r1679910;
double r1679912 = exp(r1679897);
double r1679913 = r1679912 * r1679889;
double r1679914 = r1679913 / r1679893;
double r1679915 = cbrt(r1679914);
double r1679916 = r1679915 * r1679915;
double r1679917 = r1679915 * r1679916;
double r1679918 = r1679902 ? r1679911 : r1679917;
double r1679919 = r1679888 ? r1679900 : r1679918;
return r1679919;
}



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
if (* (- t 1.0) (log a)) < -674.4137833543721Initial program 0.3
rmApplied *-un-lft-identity0.3
Applied *-un-lft-identity0.3
Applied distribute-lft-out--0.3
Applied exp-prod0.3
Simplified0.3
if -674.4137833543721 < (* (- t 1.0) (log a)) < -122.10184297103054Initial program 6.0
rmApplied *-un-lft-identity6.0
Applied times-frac2.1
Simplified2.1
Simplified2.1
rmApplied add-cube-cbrt2.1
Applied fma-udef2.1
Applied associate--l+2.1
Applied exp-sum2.1
Applied times-frac2.1
Applied associate-*r*3.1
if -122.10184297103054 < (* (- t 1.0) (log a)) Initial program 1.2
rmApplied add-cube-cbrt1.2
Final simplification1.3
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))