\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 4.53731180448953874 \cdot 10^{-185}:\\
\;\;\;\;\frac{\sqrt[3]{{\left(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)}}\right)}^{3}}}{y}\\
\mathbf{else}:\\
\;\;\;\;x \cdot \frac{1}{\frac{y}{\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)}}}}\\
\end{array}double f(double x, double y, double z, double t, double a, double b) {
double r132613 = x;
double r132614 = y;
double r132615 = z;
double r132616 = log(r132615);
double r132617 = r132614 * r132616;
double r132618 = t;
double r132619 = 1.0;
double r132620 = r132618 - r132619;
double r132621 = a;
double r132622 = log(r132621);
double r132623 = r132620 * r132622;
double r132624 = r132617 + r132623;
double r132625 = b;
double r132626 = r132624 - r132625;
double r132627 = exp(r132626);
double r132628 = r132613 * r132627;
double r132629 = r132628 / r132614;
return r132629;
}
double f(double x, double y, double z, double t, double a, double b) {
double r132630 = a;
double r132631 = 4.537311804489539e-185;
bool r132632 = r132630 <= r132631;
double r132633 = x;
double r132634 = 1.0;
double r132635 = r132634 / r132630;
double r132636 = 1.0;
double r132637 = pow(r132635, r132636);
double r132638 = y;
double r132639 = z;
double r132640 = r132634 / r132639;
double r132641 = log(r132640);
double r132642 = log(r132635);
double r132643 = t;
double r132644 = b;
double r132645 = fma(r132642, r132643, r132644);
double r132646 = fma(r132638, r132641, r132645);
double r132647 = exp(r132646);
double r132648 = r132637 / r132647;
double r132649 = r132633 * r132648;
double r132650 = 3.0;
double r132651 = pow(r132649, r132650);
double r132652 = cbrt(r132651);
double r132653 = r132652 / r132638;
double r132654 = r132638 / r132648;
double r132655 = r132634 / r132654;
double r132656 = r132633 * r132655;
double r132657 = r132632 ? r132653 : r132656;
return r132657;
}



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 < 4.537311804489539e-185Initial program 0.7
Taylor expanded around inf 0.7
Simplified0.1
rmApplied add-cbrt-cube0.1
Applied add-cbrt-cube64.0
Applied cbrt-undiv64.0
Applied add-cbrt-cube64.0
Applied cbrt-unprod64.0
Simplified2.2
if 4.537311804489539e-185 < a Initial program 2.2
Taylor expanded around inf 2.2
Simplified1.5
rmApplied associate-/l*0.6
rmApplied div-inv0.7
Final simplification1.0
herbie shell --seed 2020056 +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))