double f(double x) {
double r27897881 = 1.0;
double r27897882 = 0.1049934947;
double r27897883 = x;
double r27897884 = r27897883 * r27897883;
double r27897885 = r27897882 * r27897884;
double r27897886 = r27897881 + r27897885;
double r27897887 = 0.0424060604;
double r27897888 = r27897884 * r27897884;
double r27897889 = r27897887 * r27897888;
double r27897890 = r27897886 + r27897889;
double r27897891 = 0.0072644182;
double r27897892 = r27897888 * r27897884;
double r27897893 = r27897891 * r27897892;
double r27897894 = r27897890 + r27897893;
double r27897895 = 0.0005064034;
double r27897896 = r27897892 * r27897884;
double r27897897 = r27897895 * r27897896;
double r27897898 = r27897894 + r27897897;
double r27897899 = 0.0001789971;
double r27897900 = r27897896 * r27897884;
double r27897901 = r27897899 * r27897900;
double r27897902 = r27897898 + r27897901;
double r27897903 = 0.7715471019;
double r27897904 = r27897903 * r27897884;
double r27897905 = r27897881 + r27897904;
double r27897906 = 0.2909738639;
double r27897907 = r27897906 * r27897888;
double r27897908 = r27897905 + r27897907;
double r27897909 = 0.0694555761;
double r27897910 = r27897909 * r27897892;
double r27897911 = r27897908 + r27897910;
double r27897912 = 0.0140005442;
double r27897913 = r27897912 * r27897896;
double r27897914 = r27897911 + r27897913;
double r27897915 = 0.0008327945;
double r27897916 = r27897915 * r27897900;
double r27897917 = r27897914 + r27897916;
double r27897918 = 2.0;
double r27897919 = r27897918 * r27897899;
double r27897920 = r27897900 * r27897884;
double r27897921 = r27897919 * r27897920;
double r27897922 = r27897917 + r27897921;
double r27897923 = r27897902 / r27897922;
double r27897924 = r27897923 * r27897883;
return r27897924;
}
double f(double x) {
double r27897925 = x;
double r27897926 = -997.9228239246495;
bool r27897927 = r27897925 <= r27897926;
double r27897928 = 0.5;
double r27897929 = 0.2514179000665375;
double r27897930 = r27897925 * r27897925;
double r27897931 = r27897929 / r27897930;
double r27897932 = r27897928 + r27897931;
double r27897933 = r27897932 / r27897925;
double r27897934 = 0.15298196345929327;
double r27897935 = 5.0;
double r27897936 = pow(r27897925, r27897935);
double r27897937 = r27897934 / r27897936;
double r27897938 = r27897933 + r27897937;
double r27897939 = 7230072.169723141;
bool r27897940 = r27897925 <= r27897939;
double r27897941 = 1.0;
double r27897942 = 0.1049934947;
double r27897943 = r27897942 * r27897930;
double r27897944 = r27897941 + r27897943;
double r27897945 = 0.0424060604;
double r27897946 = r27897930 * r27897930;
double r27897947 = r27897945 * r27897946;
double r27897948 = r27897944 + r27897947;
double r27897949 = 0.0072644182;
double r27897950 = r27897930 * r27897946;
double r27897951 = r27897949 * r27897950;
double r27897952 = r27897948 + r27897951;
double r27897953 = 0.0005064034;
double r27897954 = r27897946 * r27897946;
double r27897955 = r27897953 * r27897954;
double r27897956 = r27897952 + r27897955;
double r27897957 = 0.0001789971;
double r27897958 = r27897957 * r27897930;
double r27897959 = r27897954 * r27897958;
double r27897960 = r27897956 + r27897959;
double r27897961 = 0.0140005442;
double r27897962 = r27897961 * r27897946;
double r27897963 = r27897962 * r27897946;
double r27897964 = 0.0694555761;
double r27897965 = r27897964 * r27897950;
double r27897966 = r27897963 + r27897965;
double r27897967 = 0.2909738639;
double r27897968 = r27897930 * r27897967;
double r27897969 = 0.7715471019;
double r27897970 = r27897968 + r27897969;
double r27897971 = r27897930 * r27897970;
double r27897972 = r27897971 + r27897941;
double r27897973 = r27897966 + r27897972;
double r27897974 = r27897946 * r27897950;
double r27897975 = 0.0008327945;
double r27897976 = r27897974 * r27897975;
double r27897977 = r27897973 + r27897976;
double r27897978 = r27897946 * r27897954;
double r27897979 = 2.0;
double r27897980 = r27897957 * r27897979;
double r27897981 = r27897978 * r27897980;
double r27897982 = r27897977 + r27897981;
double r27897983 = r27897960 / r27897982;
double r27897984 = r27897925 * r27897983;
double r27897985 = r27897940 ? r27897984 : r27897938;
double r27897986 = r27897927 ? r27897938 : r27897985;
return r27897986;
}
\frac{\left(\left(\left(\left(1 + 0.1049934947 \cdot \left(x \cdot x\right)\right) + 0.0424060604 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.0072644182 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.0005064034 \cdot \left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.0001789971 \cdot \left(\left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)}{\left(\left(\left(\left(\left(1 + 0.7715471019 \cdot \left(x \cdot x\right)\right) + 0.2909738639 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.0694555761 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.0140005442 \cdot \left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.0008327945 \cdot \left(\left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + \left(2 \cdot 0.0001789971\right) \cdot \left(\left(\left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)} \cdot x\begin{array}{l}
\mathbf{if}\;x \le -997.9228239246495:\\
\;\;\;\;\frac{0.5 + \frac{0.2514179000665375}{x \cdot x}}{x} + \frac{0.15298196345929327}{{x}^{5}}\\
\mathbf{elif}\;x \le 7230072.169723141:\\
\;\;\;\;x \cdot \frac{\left(\left(\left(\left(1 + 0.1049934947 \cdot \left(x \cdot x\right)\right) + 0.0424060604 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.0072644182 \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) + 0.0005064034 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) + \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) \cdot \left(0.0001789971 \cdot \left(x \cdot x\right)\right)}{\left(\left(\left(\left(0.0140005442 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) + 0.0694555761 \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) + \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot 0.2909738639 + 0.7715471019\right) + 1\right)\right) + \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) \cdot 0.0008327945\right) + \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) \cdot \left(0.0001789971 \cdot 2\right)}\\
\mathbf{else}:\\
\;\;\;\;\frac{0.5 + \frac{0.2514179000665375}{x \cdot x}}{x} + \frac{0.15298196345929327}{{x}^{5}}\\
\end{array}


Bits error versus x
if x < -997.9228239246495 or 7230072.169723141 < x Initial program 58.5
Taylor expanded around -inf 0.0
Simplified0.0
if -997.9228239246495 < x < 7230072.169723141Initial program 0.0
Taylor expanded around inf 0.0
rmApplied *-un-lft-identity0.0
Applied *-un-lft-identity0.0
Applied times-frac0.0
Simplified0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019101
(FPCore (x)
:name "Jmat.Real.dawson"
(* (/ (+ (+ (+ (+ (+ 1 (* 0.1049934947 (* x x))) (* 0.0424060604 (* (* x x) (* x x)))) (* 0.0072644182 (* (* (* x x) (* x x)) (* x x)))) (* 0.0005064034 (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* 0.0001789971 (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (+ (+ (+ (+ (+ (+ 1 (* 0.7715471019 (* x x))) (* 0.2909738639 (* (* x x) (* x x)))) (* 0.0694555761 (* (* (* x x) (* x x)) (* x x)))) (* 0.0140005442 (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* 0.0008327945 (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (* (* 2 0.0001789971) (* (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)) (* x x))))) x))