\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\frac{x}{\mathsf{fma}\left(y, e^{2 \cdot \mathsf{fma}\left(c - b, \frac{5}{6} + \left(a - \frac{\frac{2}{t}}{3}\right), \left(\sqrt[3]{\sqrt{t + a}} \cdot \sqrt[3]{\sqrt{t + a}}\right) \cdot \frac{z \cdot \sqrt[3]{\sqrt{t + a}}}{t}\right)}, x\right)}double f(double x, double y, double z, double t, double a, double b, double c) {
double r67778 = x;
double r67779 = y;
double r67780 = 2.0;
double r67781 = z;
double r67782 = t;
double r67783 = a;
double r67784 = r67782 + r67783;
double r67785 = sqrt(r67784);
double r67786 = r67781 * r67785;
double r67787 = r67786 / r67782;
double r67788 = b;
double r67789 = c;
double r67790 = r67788 - r67789;
double r67791 = 5.0;
double r67792 = 6.0;
double r67793 = r67791 / r67792;
double r67794 = r67783 + r67793;
double r67795 = 3.0;
double r67796 = r67782 * r67795;
double r67797 = r67780 / r67796;
double r67798 = r67794 - r67797;
double r67799 = r67790 * r67798;
double r67800 = r67787 - r67799;
double r67801 = r67780 * r67800;
double r67802 = exp(r67801);
double r67803 = r67779 * r67802;
double r67804 = r67778 + r67803;
double r67805 = r67778 / r67804;
return r67805;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r67806 = x;
double r67807 = y;
double r67808 = 2.0;
double r67809 = c;
double r67810 = b;
double r67811 = r67809 - r67810;
double r67812 = 5.0;
double r67813 = 6.0;
double r67814 = r67812 / r67813;
double r67815 = a;
double r67816 = t;
double r67817 = r67808 / r67816;
double r67818 = 3.0;
double r67819 = r67817 / r67818;
double r67820 = r67815 - r67819;
double r67821 = r67814 + r67820;
double r67822 = r67816 + r67815;
double r67823 = sqrt(r67822);
double r67824 = cbrt(r67823);
double r67825 = r67824 * r67824;
double r67826 = z;
double r67827 = r67826 * r67824;
double r67828 = r67827 / r67816;
double r67829 = r67825 * r67828;
double r67830 = fma(r67811, r67821, r67829);
double r67831 = r67808 * r67830;
double r67832 = exp(r67831);
double r67833 = fma(r67807, r67832, r67806);
double r67834 = r67806 / r67833;
return r67834;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a



Bits error versus b



Bits error versus c
Initial program 3.8
Simplified1.9
rmApplied add-cube-cbrt1.9
Applied associate-*l*1.9
Simplified2.0
Final simplification2.0
herbie shell --seed 2019194 +o rules:numerics
(FPCore (x y z t a b c)
:name "Numeric.SpecFunctions:invIncompleteBetaWorker from math-functions-0.1.5.2"
(/ x (+ x (* y (exp (* 2.0 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0)))))))))))