\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 r113257 = x;
double r113258 = y;
double r113259 = z;
double r113260 = log(r113259);
double r113261 = r113258 * r113260;
double r113262 = t;
double r113263 = 1.0;
double r113264 = r113262 - r113263;
double r113265 = a;
double r113266 = log(r113265);
double r113267 = r113264 * r113266;
double r113268 = r113261 + r113267;
double r113269 = b;
double r113270 = r113268 - r113269;
double r113271 = exp(r113270);
double r113272 = r113257 * r113271;
double r113273 = r113272 / r113258;
return r113273;
}
double f(double x, double y, double z, double t, double a, double b) {
double r113274 = a;
double r113275 = 3.20059611652944e-05;
bool r113276 = r113274 <= r113275;
double r113277 = x;
double r113278 = 1.0;
double r113279 = r113278 / r113274;
double r113280 = 1.0;
double r113281 = pow(r113279, r113280);
double r113282 = y;
double r113283 = z;
double r113284 = r113278 / r113283;
double r113285 = log(r113284);
double r113286 = log(r113279);
double r113287 = t;
double r113288 = b;
double r113289 = fma(r113286, r113287, r113288);
double r113290 = fma(r113282, r113285, r113289);
double r113291 = exp(r113290);
double r113292 = r113281 / r113291;
double r113293 = r113277 * r113292;
double r113294 = r113293 / r113282;
double r113295 = r113292 / r113282;
double r113296 = r113277 * r113295;
double r113297 = r113276 ? r113294 : r113296;
return r113297;
}



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))