\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 -598.9087026034708287625107914209365844727 \lor \neg \left(x \le 605.8743541032351913599995896220207214355\right):\\
\;\;\;\;0.2514179000665375252054900556686334311962 \cdot \frac{1}{{x}^{3}} + \left(0.1529819634592932686700805788859724998474 \cdot \frac{1}{{x}^{5}} + 0.5 \cdot \frac{1}{x}\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{1}{\sqrt{\left(\left(x \cdot \left({\left(x \cdot x\right)}^{3} \cdot {x}^{3}\right)\right) \cdot \left(8.327945000000000442749725770852364803432 \cdot 10^{-4} + \left(x \cdot x\right) \cdot \left(2 \cdot 1.789971000000000009994005623070734145585 \cdot 10^{-4}\right)\right) + \left(\left(x \cdot x\right) \cdot \left(0.7715471018999999763821051601553335785866 + 0.2909738639000000182122107617033179849386 \cdot \left(x \cdot x\right)\right) + 1\right)\right) + {x}^{6} \cdot \left(0.06945557609999999937322456844412954524159 + \left(x \cdot x\right) \cdot 0.01400054419999999938406531896362139377743\right)}} \cdot \frac{x}{e^{\log \left(\frac{\sqrt{\left(\left(x \cdot \left({\left(x \cdot x\right)}^{3} \cdot {x}^{3}\right)\right) \cdot \left(8.327945000000000442749725770852364803432 \cdot 10^{-4} + \left(x \cdot x\right) \cdot \left(2 \cdot 1.789971000000000009994005623070734145585 \cdot 10^{-4}\right)\right) + \left(\left(x \cdot x\right) \cdot \left(0.7715471018999999763821051601553335785866 + 0.2909738639000000182122107617033179849386 \cdot \left(x \cdot x\right)\right) + 1\right)\right) + {x}^{6} \cdot \left(0.06945557609999999937322456844412954524159 + \left(x \cdot x\right) \cdot 0.01400054419999999938406531896362139377743\right)}}{\left({\left(x \cdot x\right)}^{4} \cdot \left(5.064034000000000243502107366566633572802 \cdot 10^{-4} + \left(x \cdot x\right) \cdot 1.789971000000000009994005623070734145585 \cdot 10^{-4}\right) + \left(1 + 0.1049934946999999951788851149103720672429 \cdot \left(x \cdot x\right)\right)\right) + {x}^{4} \cdot \left(0.04240606040000000076517494562722276896238 + \left(x \cdot x\right) \cdot 0.007264418199999999985194687468492702464573\right)}\right)}}\\
\end{array}double f(double x) {
double r243415 = 1.0;
double r243416 = 0.1049934947;
double r243417 = x;
double r243418 = r243417 * r243417;
double r243419 = r243416 * r243418;
double r243420 = r243415 + r243419;
double r243421 = 0.0424060604;
double r243422 = r243418 * r243418;
double r243423 = r243421 * r243422;
double r243424 = r243420 + r243423;
double r243425 = 0.0072644182;
double r243426 = r243422 * r243418;
double r243427 = r243425 * r243426;
double r243428 = r243424 + r243427;
double r243429 = 0.0005064034;
double r243430 = r243426 * r243418;
double r243431 = r243429 * r243430;
double r243432 = r243428 + r243431;
double r243433 = 0.0001789971;
double r243434 = r243430 * r243418;
double r243435 = r243433 * r243434;
double r243436 = r243432 + r243435;
double r243437 = 0.7715471019;
double r243438 = r243437 * r243418;
double r243439 = r243415 + r243438;
double r243440 = 0.2909738639;
double r243441 = r243440 * r243422;
double r243442 = r243439 + r243441;
double r243443 = 0.0694555761;
double r243444 = r243443 * r243426;
double r243445 = r243442 + r243444;
double r243446 = 0.0140005442;
double r243447 = r243446 * r243430;
double r243448 = r243445 + r243447;
double r243449 = 0.0008327945;
double r243450 = r243449 * r243434;
double r243451 = r243448 + r243450;
double r243452 = 2.0;
double r243453 = r243452 * r243433;
double r243454 = r243434 * r243418;
double r243455 = r243453 * r243454;
double r243456 = r243451 + r243455;
double r243457 = r243436 / r243456;
double r243458 = r243457 * r243417;
return r243458;
}
double f(double x) {
double r243459 = x;
double r243460 = -598.9087026034708;
bool r243461 = r243459 <= r243460;
double r243462 = 605.8743541032352;
bool r243463 = r243459 <= r243462;
double r243464 = !r243463;
bool r243465 = r243461 || r243464;
double r243466 = 0.2514179000665375;
double r243467 = 1.0;
double r243468 = 3.0;
double r243469 = pow(r243459, r243468);
double r243470 = r243467 / r243469;
double r243471 = r243466 * r243470;
double r243472 = 0.15298196345929327;
double r243473 = 5.0;
double r243474 = pow(r243459, r243473);
double r243475 = r243467 / r243474;
double r243476 = r243472 * r243475;
double r243477 = 0.5;
double r243478 = r243467 / r243459;
double r243479 = r243477 * r243478;
double r243480 = r243476 + r243479;
double r243481 = r243471 + r243480;
double r243482 = r243459 * r243459;
double r243483 = pow(r243482, r243468);
double r243484 = r243483 * r243469;
double r243485 = r243459 * r243484;
double r243486 = 0.0008327945;
double r243487 = 2.0;
double r243488 = 0.0001789971;
double r243489 = r243487 * r243488;
double r243490 = r243482 * r243489;
double r243491 = r243486 + r243490;
double r243492 = r243485 * r243491;
double r243493 = 0.7715471019;
double r243494 = 0.2909738639;
double r243495 = r243494 * r243482;
double r243496 = r243493 + r243495;
double r243497 = r243482 * r243496;
double r243498 = 1.0;
double r243499 = r243497 + r243498;
double r243500 = r243492 + r243499;
double r243501 = 6.0;
double r243502 = pow(r243459, r243501);
double r243503 = 0.0694555761;
double r243504 = 0.0140005442;
double r243505 = r243482 * r243504;
double r243506 = r243503 + r243505;
double r243507 = r243502 * r243506;
double r243508 = r243500 + r243507;
double r243509 = sqrt(r243508);
double r243510 = r243467 / r243509;
double r243511 = 4.0;
double r243512 = pow(r243482, r243511);
double r243513 = 0.0005064034;
double r243514 = r243482 * r243488;
double r243515 = r243513 + r243514;
double r243516 = r243512 * r243515;
double r243517 = 0.1049934947;
double r243518 = r243517 * r243482;
double r243519 = r243498 + r243518;
double r243520 = r243516 + r243519;
double r243521 = pow(r243459, r243511);
double r243522 = 0.0424060604;
double r243523 = 0.0072644182;
double r243524 = r243482 * r243523;
double r243525 = r243522 + r243524;
double r243526 = r243521 * r243525;
double r243527 = r243520 + r243526;
double r243528 = r243509 / r243527;
double r243529 = log(r243528);
double r243530 = exp(r243529);
double r243531 = r243459 / r243530;
double r243532 = r243510 * r243531;
double r243533 = r243465 ? r243481 : r243532;
return r243533;
}



Bits error versus x
Results
if x < -598.9087026034708 or 605.8743541032352 < x Initial program 59.5
Simplified59.5
Taylor expanded around inf 0.0
if -598.9087026034708 < x < 605.8743541032352Initial program 0.0
Simplified0.0
rmApplied *-un-lft-identity0.0
Applied add-sqr-sqrt0.0
Applied times-frac0.0
Applied *-un-lft-identity0.0
Applied times-frac0.0
Simplified0.0
rmApplied add-exp-log0.0
Applied add-exp-log0.0
Applied div-exp0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020001
(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))