\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 -1070125311599595264 \lor \neg \left(x \le 695.087891772079956353991292417049407959\right):\\
\;\;\;\;\frac{0.1529819634592932686700805788859724998474}{{x}^{5}} + \left(\frac{0.5}{x} + \frac{0.2514179000665375252054900556686334311962}{{x}^{3}}\right)\\
\mathbf{else}:\\
\;\;\;\;x \cdot \frac{\left(5.064034000000000243502107366566633572802 \cdot 10^{-4} \cdot \left(\left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) \cdot \left(x \cdot x\right)\right) + \left(\left(\left(1 + 0.1049934946999999951788851149103720672429 \cdot \left(x \cdot x\right)\right) + \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot 0.04240606040000000076517494562722276896238\right) + \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) \cdot 0.007264418199999999985194687468492702464573\right)\right) + \left(\left(x \cdot x\right) \cdot \left(\left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) \cdot \left(x \cdot x\right)\right)\right) \cdot 1.789971000000000009994005623070734145585 \cdot 10^{-4}}{\left(2 \cdot 1.789971000000000009994005623070734145585 \cdot 10^{-4}\right) \cdot \left(\left(\left(x \cdot x\right) \cdot \left(\left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) \cdot \left(x \cdot x\right)\right)\right) \cdot \left(x \cdot x\right)\right) + \left(\left(\left(x \cdot x\right) \cdot \left(\left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) \cdot \left(x \cdot x\right)\right)\right) \cdot 8.327945000000000442749725770852364803432 \cdot 10^{-4} + \left(\left(0.06945557609999999937322456844412954524159 \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot 0.2909738639000000182122107617033179849386 + \left(1 + 0.7715471018999999763821051601553335785866 \cdot \left(x \cdot x\right)\right)\right)\right) + 0.01400054419999999938406531896362139377743 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) \cdot \left(x \cdot x\right)\right)\right)\right)}\\
\end{array}double f(double x) {
double r122451 = 1.0;
double r122452 = 0.1049934947;
double r122453 = x;
double r122454 = r122453 * r122453;
double r122455 = r122452 * r122454;
double r122456 = r122451 + r122455;
double r122457 = 0.0424060604;
double r122458 = r122454 * r122454;
double r122459 = r122457 * r122458;
double r122460 = r122456 + r122459;
double r122461 = 0.0072644182;
double r122462 = r122458 * r122454;
double r122463 = r122461 * r122462;
double r122464 = r122460 + r122463;
double r122465 = 0.0005064034;
double r122466 = r122462 * r122454;
double r122467 = r122465 * r122466;
double r122468 = r122464 + r122467;
double r122469 = 0.0001789971;
double r122470 = r122466 * r122454;
double r122471 = r122469 * r122470;
double r122472 = r122468 + r122471;
double r122473 = 0.7715471019;
double r122474 = r122473 * r122454;
double r122475 = r122451 + r122474;
double r122476 = 0.2909738639;
double r122477 = r122476 * r122458;
double r122478 = r122475 + r122477;
double r122479 = 0.0694555761;
double r122480 = r122479 * r122462;
double r122481 = r122478 + r122480;
double r122482 = 0.0140005442;
double r122483 = r122482 * r122466;
double r122484 = r122481 + r122483;
double r122485 = 0.0008327945;
double r122486 = r122485 * r122470;
double r122487 = r122484 + r122486;
double r122488 = 2.0;
double r122489 = r122488 * r122469;
double r122490 = r122470 * r122454;
double r122491 = r122489 * r122490;
double r122492 = r122487 + r122491;
double r122493 = r122472 / r122492;
double r122494 = r122493 * r122453;
return r122494;
}
double f(double x) {
double r122495 = x;
double r122496 = -1.0701253115995953e+18;
bool r122497 = r122495 <= r122496;
double r122498 = 695.08789177208;
bool r122499 = r122495 <= r122498;
double r122500 = !r122499;
bool r122501 = r122497 || r122500;
double r122502 = 0.15298196345929327;
double r122503 = 5.0;
double r122504 = pow(r122495, r122503);
double r122505 = r122502 / r122504;
double r122506 = 0.5;
double r122507 = r122506 / r122495;
double r122508 = 0.2514179000665375;
double r122509 = 3.0;
double r122510 = pow(r122495, r122509);
double r122511 = r122508 / r122510;
double r122512 = r122507 + r122511;
double r122513 = r122505 + r122512;
double r122514 = 0.0005064034;
double r122515 = r122495 * r122495;
double r122516 = r122515 * r122515;
double r122517 = r122515 * r122516;
double r122518 = r122517 * r122515;
double r122519 = r122514 * r122518;
double r122520 = 1.0;
double r122521 = 0.1049934947;
double r122522 = r122521 * r122515;
double r122523 = r122520 + r122522;
double r122524 = 0.0424060604;
double r122525 = r122516 * r122524;
double r122526 = r122523 + r122525;
double r122527 = 0.0072644182;
double r122528 = r122517 * r122527;
double r122529 = r122526 + r122528;
double r122530 = r122519 + r122529;
double r122531 = r122515 * r122518;
double r122532 = 0.0001789971;
double r122533 = r122531 * r122532;
double r122534 = r122530 + r122533;
double r122535 = 2.0;
double r122536 = r122535 * r122532;
double r122537 = r122531 * r122515;
double r122538 = r122536 * r122537;
double r122539 = 0.0008327945;
double r122540 = r122531 * r122539;
double r122541 = 0.0694555761;
double r122542 = r122541 * r122517;
double r122543 = 0.2909738639;
double r122544 = r122516 * r122543;
double r122545 = 0.7715471019;
double r122546 = r122545 * r122515;
double r122547 = r122520 + r122546;
double r122548 = r122544 + r122547;
double r122549 = r122542 + r122548;
double r122550 = 0.0140005442;
double r122551 = r122550 * r122518;
double r122552 = r122549 + r122551;
double r122553 = r122540 + r122552;
double r122554 = r122538 + r122553;
double r122555 = r122534 / r122554;
double r122556 = r122495 * r122555;
double r122557 = r122501 ? r122513 : r122556;
return r122557;
}



Bits error versus x
Results
if x < -1.0701253115995953e+18 or 695.08789177208 < x Initial program 60.7
Taylor expanded around inf 0.0
Simplified0.0
if -1.0701253115995953e+18 < x < 695.08789177208Initial program 0.0
Final simplification0.0
herbie shell --seed 2019194 +o rules:numerics
(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))