\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 -494979.722386283916421234607696533203125:\\
\;\;\;\;\frac{0.5}{x} + \left(\frac{0.2514179000665375252054900556686334311962}{x \cdot \left(x \cdot x\right)} + \frac{0.1529819634592932686700805788859724998474}{{x}^{5}}\right)\\
\mathbf{elif}\;x \le 269399.4827619772986508905887603759765625:\\
\;\;\;\;\left(\left(\left(\left(\left(x \cdot x\right) \cdot \left(0.7715471018999999763821051601553335785866 + \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot 0.06945557609999999937322456844412954524159 + \left(x \cdot x\right) \cdot 0.2909738639000000182122107617033179849386\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(\left(x \cdot x\right) \cdot \left(1.789971000000000009994005623070734145585 \cdot 10^{-4} \cdot \left(2 \cdot \left(x \cdot x\right)\right) + 8.327945000000000442749725770852364803432 \cdot 10^{-4}\right) + 0.01400054419999999938406531896362139377743\right)\right) \cdot \left(\left(x \cdot x\right) \cdot \left(0.7715471018999999763821051601553335785866 + \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot 0.06945557609999999937322456844412954524159 + \left(x \cdot x\right) \cdot 0.2909738639000000182122107617033179849386\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(\left(x \cdot x\right) \cdot \left(1.789971000000000009994005623070734145585 \cdot 10^{-4} \cdot \left(2 \cdot \left(x \cdot x\right)\right) + 8.327945000000000442749725770852364803432 \cdot 10^{-4}\right) + 0.01400054419999999938406531896362139377743\right)\right) - 1 \cdot \left(\left(x \cdot x\right) \cdot \left(0.7715471018999999763821051601553335785866 + \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot 0.06945557609999999937322456844412954524159 + \left(x \cdot x\right) \cdot 0.2909738639000000182122107617033179849386\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(\left(x \cdot x\right) \cdot \left(1.789971000000000009994005623070734145585 \cdot 10^{-4} \cdot \left(2 \cdot \left(x \cdot x\right)\right) + 8.327945000000000442749725770852364803432 \cdot 10^{-4}\right) + 0.01400054419999999938406531896362139377743\right)\right)\right) + 1 \cdot 1\right) \cdot \frac{\left(0.04240606040000000076517494562722276896238 + \left(\left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) \cdot 1.789971000000000009994005623070734145585 \cdot 10^{-4} + \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot 5.064034000000000243502107366566633572802 \cdot 10^{-4}\right)\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) + \left(\left(0.007264418199999999985194687468492702464573 \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 1\right) + \left(x \cdot x\right) \cdot 0.1049934946999999951788851149103720672429\right)}{{1}^{3} + {\left(\left(x \cdot x\right) \cdot \left(0.7715471018999999763821051601553335785866 + \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot 0.06945557609999999937322456844412954524159 + \left(x \cdot x\right) \cdot 0.2909738639000000182122107617033179849386\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(\left(x \cdot x\right) \cdot \left(1.789971000000000009994005623070734145585 \cdot 10^{-4} \cdot \left(2 \cdot \left(x \cdot x\right)\right) + 8.327945000000000442749725770852364803432 \cdot 10^{-4}\right) + 0.01400054419999999938406531896362139377743\right)\right)}^{3}}\right) \cdot x\\
\mathbf{else}:\\
\;\;\;\;\frac{0.5}{x} + \left(\frac{0.2514179000665375252054900556686334311962}{x \cdot \left(x \cdot x\right)} + \frac{0.1529819634592932686700805788859724998474}{{x}^{5}}\right)\\
\end{array}double f(double x) {
double r8009226 = 1.0;
double r8009227 = 0.1049934947;
double r8009228 = x;
double r8009229 = r8009228 * r8009228;
double r8009230 = r8009227 * r8009229;
double r8009231 = r8009226 + r8009230;
double r8009232 = 0.0424060604;
double r8009233 = r8009229 * r8009229;
double r8009234 = r8009232 * r8009233;
double r8009235 = r8009231 + r8009234;
double r8009236 = 0.0072644182;
double r8009237 = r8009233 * r8009229;
double r8009238 = r8009236 * r8009237;
double r8009239 = r8009235 + r8009238;
double r8009240 = 0.0005064034;
double r8009241 = r8009237 * r8009229;
double r8009242 = r8009240 * r8009241;
double r8009243 = r8009239 + r8009242;
double r8009244 = 0.0001789971;
double r8009245 = r8009241 * r8009229;
double r8009246 = r8009244 * r8009245;
double r8009247 = r8009243 + r8009246;
double r8009248 = 0.7715471019;
double r8009249 = r8009248 * r8009229;
double r8009250 = r8009226 + r8009249;
double r8009251 = 0.2909738639;
double r8009252 = r8009251 * r8009233;
double r8009253 = r8009250 + r8009252;
double r8009254 = 0.0694555761;
double r8009255 = r8009254 * r8009237;
double r8009256 = r8009253 + r8009255;
double r8009257 = 0.0140005442;
double r8009258 = r8009257 * r8009241;
double r8009259 = r8009256 + r8009258;
double r8009260 = 0.0008327945;
double r8009261 = r8009260 * r8009245;
double r8009262 = r8009259 + r8009261;
double r8009263 = 2.0;
double r8009264 = r8009263 * r8009244;
double r8009265 = r8009245 * r8009229;
double r8009266 = r8009264 * r8009265;
double r8009267 = r8009262 + r8009266;
double r8009268 = r8009247 / r8009267;
double r8009269 = r8009268 * r8009228;
return r8009269;
}
double f(double x) {
double r8009270 = x;
double r8009271 = -494979.7223862839;
bool r8009272 = r8009270 <= r8009271;
double r8009273 = 0.5;
double r8009274 = r8009273 / r8009270;
double r8009275 = 0.2514179000665375;
double r8009276 = r8009270 * r8009270;
double r8009277 = r8009270 * r8009276;
double r8009278 = r8009275 / r8009277;
double r8009279 = 0.15298196345929327;
double r8009280 = 5.0;
double r8009281 = pow(r8009270, r8009280);
double r8009282 = r8009279 / r8009281;
double r8009283 = r8009278 + r8009282;
double r8009284 = r8009274 + r8009283;
double r8009285 = 269399.4827619773;
bool r8009286 = r8009270 <= r8009285;
double r8009287 = 0.7715471019;
double r8009288 = r8009276 * r8009276;
double r8009289 = 0.0694555761;
double r8009290 = r8009288 * r8009289;
double r8009291 = 0.2909738639;
double r8009292 = r8009276 * r8009291;
double r8009293 = r8009290 + r8009292;
double r8009294 = r8009287 + r8009293;
double r8009295 = r8009276 * r8009294;
double r8009296 = r8009288 * r8009288;
double r8009297 = 0.0001789971;
double r8009298 = 2.0;
double r8009299 = r8009298 * r8009276;
double r8009300 = r8009297 * r8009299;
double r8009301 = 0.0008327945;
double r8009302 = r8009300 + r8009301;
double r8009303 = r8009276 * r8009302;
double r8009304 = 0.0140005442;
double r8009305 = r8009303 + r8009304;
double r8009306 = r8009296 * r8009305;
double r8009307 = r8009295 + r8009306;
double r8009308 = r8009307 * r8009307;
double r8009309 = 1.0;
double r8009310 = r8009309 * r8009307;
double r8009311 = r8009308 - r8009310;
double r8009312 = r8009309 * r8009309;
double r8009313 = r8009311 + r8009312;
double r8009314 = 0.0424060604;
double r8009315 = r8009276 * r8009288;
double r8009316 = r8009315 * r8009297;
double r8009317 = 0.0005064034;
double r8009318 = r8009288 * r8009317;
double r8009319 = r8009316 + r8009318;
double r8009320 = r8009314 + r8009319;
double r8009321 = r8009320 * r8009288;
double r8009322 = 0.0072644182;
double r8009323 = r8009322 * r8009315;
double r8009324 = r8009323 + r8009309;
double r8009325 = 0.1049934947;
double r8009326 = r8009276 * r8009325;
double r8009327 = r8009324 + r8009326;
double r8009328 = r8009321 + r8009327;
double r8009329 = 3.0;
double r8009330 = pow(r8009309, r8009329);
double r8009331 = pow(r8009307, r8009329);
double r8009332 = r8009330 + r8009331;
double r8009333 = r8009328 / r8009332;
double r8009334 = r8009313 * r8009333;
double r8009335 = r8009334 * r8009270;
double r8009336 = r8009286 ? r8009335 : r8009284;
double r8009337 = r8009272 ? r8009284 : r8009336;
return r8009337;
}



Bits error versus x
Results
if x < -494979.7223862839 or 269399.4827619773 < x Initial program 59.8
Simplified59.6
rmApplied *-commutative59.6
Taylor expanded around inf 0.0
Simplified0.0
if -494979.7223862839 < x < 269399.4827619773Initial program 0.0
Simplified0.0
rmApplied *-commutative0.0
rmApplied flip3-+0.0
Applied associate-/r/0.0
Final simplification0.0
herbie shell --seed 2019174
(FPCore (x)
:name "Jmat.Real.dawson"
(* (/ (+ (+ (+ (+ (+ 1.0 (* 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 (* 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 0.0001789971) (* (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)) (* x x))))) x))