\frac{\left(\left(\left(\left(1 + 0.1049934946999999951788851149103720672429 \cdot \left(x \cdot x\right)\right) + 0.04240606040000000076517494562722276896238 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.007264418199999999985194687468492702464573 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 5.064034000000000243502107366566633572802 \cdot 10^{-4} \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) + 1.789971000000000009994005623070734145585 \cdot 10^{-4} \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.7715471018999999763821051601553335785866 \cdot \left(x \cdot x\right)\right) + 0.2909738639000000182122107617033179849386 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.06945557609999999937322456844412954524159 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.01400054419999999938406531896362139377743 \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) + 8.327945000000000442749725770852364803432 \cdot 10^{-4} \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 1.789971000000000009994005623070734145585 \cdot 10^{-4}\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 -2189916760047.75830078125 \lor \neg \left(x \le 759.2756960152701140032149851322174072266\right):\\
\;\;\;\;\left(\frac{0.5}{x} + \frac{0.1529819634592932686700805788859724998474}{{x}^{5}}\right) + \frac{0.2514179000665375252054900556686334311962}{{x}^{3}}\\
\mathbf{else}:\\
\;\;\;\;\left(\mathsf{fma}\left({\left(x \cdot x\right)}^{4}, \mathsf{fma}\left(1.789971000000000009994005623070734145585 \cdot 10^{-4}, x \cdot x, 5.064034000000000243502107366566633572802 \cdot 10^{-4}\right), {x}^{4} \cdot 0.04240606040000000076517494562722276896238\right) + \mathsf{fma}\left({x}^{6}, 0.007264418199999999985194687468492702464573, \mathsf{fma}\left(x \cdot x, 0.1049934946999999951788851149103720672429, 1\right)\right)\right) \cdot \frac{x}{\mathsf{fma}\left(2 \cdot 1.789971000000000009994005623070734145585 \cdot 10^{-4}, {\left(x \cdot x\right)}^{6}, \mathsf{fma}\left({\left(x \cdot x\right)}^{4}, \mathsf{fma}\left(x \cdot x, 8.327945000000000442749725770852364803432 \cdot 10^{-4}, 0.01400054419999999938406531896362139377743\right), \mathsf{fma}\left(0.06945557609999999937322456844412954524159, {x}^{6}, \mathsf{fma}\left(0.2909738639000000182122107617033179849386, {x}^{4}, \mathsf{fma}\left(x \cdot x, 0.7715471018999999763821051601553335785866, 1\right)\right)\right)\right)\right)}\\
\end{array}double f(double x) {
double r134079 = 1.0;
double r134080 = 0.1049934947;
double r134081 = x;
double r134082 = r134081 * r134081;
double r134083 = r134080 * r134082;
double r134084 = r134079 + r134083;
double r134085 = 0.0424060604;
double r134086 = r134082 * r134082;
double r134087 = r134085 * r134086;
double r134088 = r134084 + r134087;
double r134089 = 0.0072644182;
double r134090 = r134086 * r134082;
double r134091 = r134089 * r134090;
double r134092 = r134088 + r134091;
double r134093 = 0.0005064034;
double r134094 = r134090 * r134082;
double r134095 = r134093 * r134094;
double r134096 = r134092 + r134095;
double r134097 = 0.0001789971;
double r134098 = r134094 * r134082;
double r134099 = r134097 * r134098;
double r134100 = r134096 + r134099;
double r134101 = 0.7715471019;
double r134102 = r134101 * r134082;
double r134103 = r134079 + r134102;
double r134104 = 0.2909738639;
double r134105 = r134104 * r134086;
double r134106 = r134103 + r134105;
double r134107 = 0.0694555761;
double r134108 = r134107 * r134090;
double r134109 = r134106 + r134108;
double r134110 = 0.0140005442;
double r134111 = r134110 * r134094;
double r134112 = r134109 + r134111;
double r134113 = 0.0008327945;
double r134114 = r134113 * r134098;
double r134115 = r134112 + r134114;
double r134116 = 2.0;
double r134117 = r134116 * r134097;
double r134118 = r134098 * r134082;
double r134119 = r134117 * r134118;
double r134120 = r134115 + r134119;
double r134121 = r134100 / r134120;
double r134122 = r134121 * r134081;
return r134122;
}
double f(double x) {
double r134123 = x;
double r134124 = -2189916760047.7583;
bool r134125 = r134123 <= r134124;
double r134126 = 759.2756960152701;
bool r134127 = r134123 <= r134126;
double r134128 = !r134127;
bool r134129 = r134125 || r134128;
double r134130 = 0.5;
double r134131 = r134130 / r134123;
double r134132 = 0.15298196345929327;
double r134133 = 5.0;
double r134134 = pow(r134123, r134133);
double r134135 = r134132 / r134134;
double r134136 = r134131 + r134135;
double r134137 = 0.2514179000665375;
double r134138 = 3.0;
double r134139 = pow(r134123, r134138);
double r134140 = r134137 / r134139;
double r134141 = r134136 + r134140;
double r134142 = r134123 * r134123;
double r134143 = 4.0;
double r134144 = pow(r134142, r134143);
double r134145 = 0.0001789971;
double r134146 = 0.0005064034;
double r134147 = fma(r134145, r134142, r134146);
double r134148 = pow(r134123, r134143);
double r134149 = 0.0424060604;
double r134150 = r134148 * r134149;
double r134151 = fma(r134144, r134147, r134150);
double r134152 = 6.0;
double r134153 = pow(r134123, r134152);
double r134154 = 0.0072644182;
double r134155 = 0.1049934947;
double r134156 = 1.0;
double r134157 = fma(r134142, r134155, r134156);
double r134158 = fma(r134153, r134154, r134157);
double r134159 = r134151 + r134158;
double r134160 = 2.0;
double r134161 = r134160 * r134145;
double r134162 = pow(r134142, r134152);
double r134163 = 0.0008327945;
double r134164 = 0.0140005442;
double r134165 = fma(r134142, r134163, r134164);
double r134166 = 0.0694555761;
double r134167 = 0.2909738639;
double r134168 = 0.7715471019;
double r134169 = fma(r134142, r134168, r134156);
double r134170 = fma(r134167, r134148, r134169);
double r134171 = fma(r134166, r134153, r134170);
double r134172 = fma(r134144, r134165, r134171);
double r134173 = fma(r134161, r134162, r134172);
double r134174 = r134123 / r134173;
double r134175 = r134159 * r134174;
double r134176 = r134129 ? r134141 : r134175;
return r134176;
}



Bits error versus x
if x < -2189916760047.7583 or 759.2756960152701 < x Initial program 60.0
Simplified60.0
Taylor expanded around inf 0.0
Simplified0.0
if -2189916760047.7583 < x < 759.2756960152701Initial program 0.0
Simplified0.0
rmApplied div-inv0.0
Applied associate-*l*0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019347 +o rules:numerics
(FPCore (x)
:name "Jmat.Real.dawson"
:precision binary64
(* (/ (+ (+ (+ (+ (+ 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))