\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}\begin{array}{l}
\mathbf{if}\;a \le 3.2005961165294398 \cdot 10^{-5}:\\
\;\;\;\;\frac{x \cdot \frac{{\left(\frac{1}{a}\right)}^{1}}{e^{\mathsf{fma}\left(y, \log \left(\frac{1}{z}\right), \mathsf{fma}\left(\log \left(\frac{1}{a}\right), t, b\right)\right)}}}{y}\\
\mathbf{else}:\\
\;\;\;\;x \cdot \frac{\frac{{\left(\frac{1}{a}\right)}^{1}}{e^{\mathsf{fma}\left(y, \log \left(\frac{1}{z}\right), \mathsf{fma}\left(\log \left(\frac{1}{a}\right), t, b\right)\right)}}}{y}\\
\end{array}double f(double x, double y, double z, double t, double a, double b) {
double r111277 = x;
double r111278 = y;
double r111279 = z;
double r111280 = log(r111279);
double r111281 = r111278 * r111280;
double r111282 = t;
double r111283 = 1.0;
double r111284 = r111282 - r111283;
double r111285 = a;
double r111286 = log(r111285);
double r111287 = r111284 * r111286;
double r111288 = r111281 + r111287;
double r111289 = b;
double r111290 = r111288 - r111289;
double r111291 = exp(r111290);
double r111292 = r111277 * r111291;
double r111293 = r111292 / r111278;
return r111293;
}
double f(double x, double y, double z, double t, double a, double b) {
double r111294 = a;
double r111295 = 3.20059611652944e-05;
bool r111296 = r111294 <= r111295;
double r111297 = x;
double r111298 = 1.0;
double r111299 = r111298 / r111294;
double r111300 = 1.0;
double r111301 = pow(r111299, r111300);
double r111302 = y;
double r111303 = z;
double r111304 = r111298 / r111303;
double r111305 = log(r111304);
double r111306 = log(r111299);
double r111307 = t;
double r111308 = b;
double r111309 = fma(r111306, r111307, r111308);
double r111310 = fma(r111302, r111305, r111309);
double r111311 = exp(r111310);
double r111312 = r111301 / r111311;
double r111313 = r111297 * r111312;
double r111314 = r111313 / r111302;
double r111315 = r111312 / r111302;
double r111316 = r111297 * r111315;
double r111317 = r111296 ? r111314 : r111316;
return r111317;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a



Bits error versus b
if a < 3.20059611652944e-05Initial program 0.7
Taylor expanded around inf 0.7
Simplified0.1
if 3.20059611652944e-05 < a Initial program 3.1
Taylor expanded around inf 3.1
Simplified2.3
rmApplied *-un-lft-identity2.3
Applied times-frac0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2020036 +o rules:numerics
(FPCore (x y z t a b)
:name "Numeric.SpecFunctions:incompleteBetaWorker from math-functions-0.1.5.2"
:precision binary64
(/ (* x (exp (- (+ (* y (log z)) (* (- t 1) (log a))) b))) y))