\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}\frac{x \cdot \frac{{\left(\frac{1}{a}\right)}^{1}}{e^{1 \cdot \left(y \cdot \log \left(\frac{1}{z}\right)\right) + \left(\log \left(\frac{1}{a}\right) \cdot t + b\right)}}}{y}double f(double x, double y, double z, double t, double a, double b) {
double r75727 = x;
double r75728 = y;
double r75729 = z;
double r75730 = log(r75729);
double r75731 = r75728 * r75730;
double r75732 = t;
double r75733 = 1.0;
double r75734 = r75732 - r75733;
double r75735 = a;
double r75736 = log(r75735);
double r75737 = r75734 * r75736;
double r75738 = r75731 + r75737;
double r75739 = b;
double r75740 = r75738 - r75739;
double r75741 = exp(r75740);
double r75742 = r75727 * r75741;
double r75743 = r75742 / r75728;
return r75743;
}
double f(double x, double y, double z, double t, double a, double b) {
double r75744 = x;
double r75745 = 1.0;
double r75746 = a;
double r75747 = r75745 / r75746;
double r75748 = 1.0;
double r75749 = pow(r75747, r75748);
double r75750 = y;
double r75751 = z;
double r75752 = r75745 / r75751;
double r75753 = log(r75752);
double r75754 = r75750 * r75753;
double r75755 = r75745 * r75754;
double r75756 = log(r75747);
double r75757 = t;
double r75758 = r75756 * r75757;
double r75759 = b;
double r75760 = r75758 + r75759;
double r75761 = r75755 + r75760;
double r75762 = exp(r75761);
double r75763 = r75749 / r75762;
double r75764 = r75744 * r75763;
double r75765 = r75764 / r75750;
return r75765;
}



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
Initial program 1.8
Taylor expanded around inf 1.8
Simplified1.1
rmApplied *-un-lft-identity1.1
Final simplification1.1
herbie shell --seed 2020034
(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))