\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}\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) \cdot \frac{1}{y}double f(double x, double y, double z, double t, double a, double b) {
double r89788 = x;
double r89789 = y;
double r89790 = z;
double r89791 = log(r89790);
double r89792 = r89789 * r89791;
double r89793 = t;
double r89794 = 1.0;
double r89795 = r89793 - r89794;
double r89796 = a;
double r89797 = log(r89796);
double r89798 = r89795 * r89797;
double r89799 = r89792 + r89798;
double r89800 = b;
double r89801 = r89799 - r89800;
double r89802 = exp(r89801);
double r89803 = r89788 * r89802;
double r89804 = r89803 / r89789;
return r89804;
}
double f(double x, double y, double z, double t, double a, double b) {
double r89805 = x;
double r89806 = 1.0;
double r89807 = a;
double r89808 = r89806 / r89807;
double r89809 = 1.0;
double r89810 = pow(r89808, r89809);
double r89811 = y;
double r89812 = z;
double r89813 = r89806 / r89812;
double r89814 = log(r89813);
double r89815 = log(r89808);
double r89816 = t;
double r89817 = b;
double r89818 = fma(r89815, r89816, r89817);
double r89819 = fma(r89811, r89814, r89818);
double r89820 = exp(r89819);
double r89821 = r89810 / r89820;
double r89822 = r89805 * r89821;
double r89823 = r89806 / r89811;
double r89824 = r89822 * r89823;
return r89824;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a



Bits error versus b
Initial program 1.8
Taylor expanded around inf 1.9
Simplified1.1
rmApplied div-inv1.2
Final simplification1.2
herbie shell --seed 2020100 +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))