\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)}}\begin{array}{l}
\mathbf{if}\;t \le -4.33536139562560236 \cdot 10^{-281} \lor \neg \left(t \le 2.7731803138233924 \cdot 10^{-105}\right):\\
\;\;\;\;\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) - \sqrt[3]{{\left(\frac{2}{t \cdot 3}\right)}^{3}}\right)\right)}}\\
\mathbf{else}:\\
\;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \frac{\left(z \cdot \sqrt{t + a}\right) \cdot \left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right) - t \cdot \left(\left(b - c\right) \cdot \left(\left(a \cdot a - \frac{5}{6} \cdot \frac{5}{6}\right) \cdot \left(t \cdot 3\right) - \left(a - \frac{5}{6}\right) \cdot 2\right)\right)}{t \cdot \left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right)}}}\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c) {
double r110837 = x;
double r110838 = y;
double r110839 = 2.0;
double r110840 = z;
double r110841 = t;
double r110842 = a;
double r110843 = r110841 + r110842;
double r110844 = sqrt(r110843);
double r110845 = r110840 * r110844;
double r110846 = r110845 / r110841;
double r110847 = b;
double r110848 = c;
double r110849 = r110847 - r110848;
double r110850 = 5.0;
double r110851 = 6.0;
double r110852 = r110850 / r110851;
double r110853 = r110842 + r110852;
double r110854 = 3.0;
double r110855 = r110841 * r110854;
double r110856 = r110839 / r110855;
double r110857 = r110853 - r110856;
double r110858 = r110849 * r110857;
double r110859 = r110846 - r110858;
double r110860 = r110839 * r110859;
double r110861 = exp(r110860);
double r110862 = r110838 * r110861;
double r110863 = r110837 + r110862;
double r110864 = r110837 / r110863;
return r110864;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r110865 = t;
double r110866 = -4.3353613956256024e-281;
bool r110867 = r110865 <= r110866;
double r110868 = 2.7731803138233924e-105;
bool r110869 = r110865 <= r110868;
double r110870 = !r110869;
bool r110871 = r110867 || r110870;
double r110872 = x;
double r110873 = y;
double r110874 = 2.0;
double r110875 = z;
double r110876 = a;
double r110877 = r110865 + r110876;
double r110878 = sqrt(r110877);
double r110879 = r110875 * r110878;
double r110880 = r110879 / r110865;
double r110881 = b;
double r110882 = c;
double r110883 = r110881 - r110882;
double r110884 = 5.0;
double r110885 = 6.0;
double r110886 = r110884 / r110885;
double r110887 = r110876 + r110886;
double r110888 = 3.0;
double r110889 = r110865 * r110888;
double r110890 = r110874 / r110889;
double r110891 = 3.0;
double r110892 = pow(r110890, r110891);
double r110893 = cbrt(r110892);
double r110894 = r110887 - r110893;
double r110895 = r110883 * r110894;
double r110896 = r110880 - r110895;
double r110897 = r110874 * r110896;
double r110898 = exp(r110897);
double r110899 = r110873 * r110898;
double r110900 = r110872 + r110899;
double r110901 = r110872 / r110900;
double r110902 = r110876 - r110886;
double r110903 = r110902 * r110889;
double r110904 = r110879 * r110903;
double r110905 = r110876 * r110876;
double r110906 = r110886 * r110886;
double r110907 = r110905 - r110906;
double r110908 = r110907 * r110889;
double r110909 = r110902 * r110874;
double r110910 = r110908 - r110909;
double r110911 = r110883 * r110910;
double r110912 = r110865 * r110911;
double r110913 = r110904 - r110912;
double r110914 = r110865 * r110903;
double r110915 = r110913 / r110914;
double r110916 = r110874 * r110915;
double r110917 = exp(r110916);
double r110918 = r110873 * r110917;
double r110919 = r110872 + r110918;
double r110920 = r110872 / r110919;
double r110921 = r110871 ? r110901 : r110920;
return r110921;
}



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
Results
if t < -4.3353613956256024e-281 or 2.7731803138233924e-105 < t Initial program 3.3
rmApplied add-cbrt-cube3.3
Applied add-cbrt-cube4.4
Applied cbrt-unprod4.4
Applied add-cbrt-cube4.4
Applied cbrt-undiv4.5
Simplified4.5
if -4.3353613956256024e-281 < t < 2.7731803138233924e-105Initial program 6.4
rmApplied flip-+10.2
Applied frac-sub10.2
Applied associate-*r/10.2
Applied frac-sub8.4
Final simplification5.3
herbie shell --seed 2020062
(FPCore (x y z t a b c)
:name "Numeric.SpecFunctions:invIncompleteBetaWorker from math-functions-0.1.5.2"
:precision binary64
(/ x (+ x (* y (exp (* 2 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5 6)) (/ 2 (* t 3)))))))))))