x \cdot e^{y \cdot \left(\log z - t\right) + a \cdot \left(\log \left(1 - z\right) - b\right)}e^{a \cdot \left(\left(\log 1 - \left(z \cdot 1 + \frac{1}{2} \cdot \left(\frac{z}{1} \cdot \frac{z}{1}\right)\right)\right) - b\right) + \left(\log z - t\right) \cdot y} \cdot xdouble f(double x, double y, double z, double t, double a, double b) {
double r8642823 = x;
double r8642824 = y;
double r8642825 = z;
double r8642826 = log(r8642825);
double r8642827 = t;
double r8642828 = r8642826 - r8642827;
double r8642829 = r8642824 * r8642828;
double r8642830 = a;
double r8642831 = 1.0;
double r8642832 = r8642831 - r8642825;
double r8642833 = log(r8642832);
double r8642834 = b;
double r8642835 = r8642833 - r8642834;
double r8642836 = r8642830 * r8642835;
double r8642837 = r8642829 + r8642836;
double r8642838 = exp(r8642837);
double r8642839 = r8642823 * r8642838;
return r8642839;
}
double f(double x, double y, double z, double t, double a, double b) {
double r8642840 = a;
double r8642841 = 1.0;
double r8642842 = log(r8642841);
double r8642843 = z;
double r8642844 = r8642843 * r8642841;
double r8642845 = 0.5;
double r8642846 = r8642843 / r8642841;
double r8642847 = r8642846 * r8642846;
double r8642848 = r8642845 * r8642847;
double r8642849 = r8642844 + r8642848;
double r8642850 = r8642842 - r8642849;
double r8642851 = b;
double r8642852 = r8642850 - r8642851;
double r8642853 = r8642840 * r8642852;
double r8642854 = log(r8642843);
double r8642855 = t;
double r8642856 = r8642854 - r8642855;
double r8642857 = y;
double r8642858 = r8642856 * r8642857;
double r8642859 = r8642853 + r8642858;
double r8642860 = exp(r8642859);
double r8642861 = x;
double r8642862 = r8642860 * r8642861;
return r8642862;
}



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.9
Taylor expanded around 0 0.5
Simplified0.5
Final simplification0.5
herbie shell --seed 2019174
(FPCore (x y z t a b)
:name "Numeric.SpecFunctions:incompleteBetaApprox from math-functions-0.1.5.2, B"
(* x (exp (+ (* y (- (log z) t)) (* a (- (log (- 1.0 z)) b))))))