\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 -4059.5380651343917:\\
\;\;\;\;\left(\frac{0.5}{x} + \frac{0.15298196345929327}{\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)}\right) + \frac{0.2514179000665375}{\left(x \cdot x\right) \cdot x}\\
\mathbf{elif}\;x \le 86341657.43675329:\\
\;\;\;\;\frac{\left(\left(\left(0.0072644182 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) + \left(0.0424060604 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) + \left(\left(x \cdot x\right) \cdot 0.1049934947 + 1\right)\right)\right) + \left(\left(x \cdot x\right) \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) \cdot 0.0005064034\right) + 0.0001789971 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) \cdot \left(x \cdot x\right)\right)\right) \cdot x}{\left(\left(\left(\left(x \cdot x\right) \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(2 \cdot 0.0001789971\right) + \left(0.0008327945 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) \cdot \left(x \cdot x\right)\right) + \left(\left(\left(\left(1 + \left(x \cdot x\right) \cdot 0.7715471019\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) + \left(\left(x \cdot x\right) \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) \cdot 0.0140005442\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{0.5}{x} + \frac{0.15298196345929327}{\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)}\right) + \frac{0.2514179000665375}{\left(x \cdot x\right) \cdot x}\\
\end{array}double f(double x) {
double r6593413 = 1.0;
double r6593414 = 0.1049934947;
double r6593415 = x;
double r6593416 = r6593415 * r6593415;
double r6593417 = r6593414 * r6593416;
double r6593418 = r6593413 + r6593417;
double r6593419 = 0.0424060604;
double r6593420 = r6593416 * r6593416;
double r6593421 = r6593419 * r6593420;
double r6593422 = r6593418 + r6593421;
double r6593423 = 0.0072644182;
double r6593424 = r6593420 * r6593416;
double r6593425 = r6593423 * r6593424;
double r6593426 = r6593422 + r6593425;
double r6593427 = 0.0005064034;
double r6593428 = r6593424 * r6593416;
double r6593429 = r6593427 * r6593428;
double r6593430 = r6593426 + r6593429;
double r6593431 = 0.0001789971;
double r6593432 = r6593428 * r6593416;
double r6593433 = r6593431 * r6593432;
double r6593434 = r6593430 + r6593433;
double r6593435 = 0.7715471019;
double r6593436 = r6593435 * r6593416;
double r6593437 = r6593413 + r6593436;
double r6593438 = 0.2909738639;
double r6593439 = r6593438 * r6593420;
double r6593440 = r6593437 + r6593439;
double r6593441 = 0.0694555761;
double r6593442 = r6593441 * r6593424;
double r6593443 = r6593440 + r6593442;
double r6593444 = 0.0140005442;
double r6593445 = r6593444 * r6593428;
double r6593446 = r6593443 + r6593445;
double r6593447 = 0.0008327945;
double r6593448 = r6593447 * r6593432;
double r6593449 = r6593446 + r6593448;
double r6593450 = 2.0;
double r6593451 = r6593450 * r6593431;
double r6593452 = r6593432 * r6593416;
double r6593453 = r6593451 * r6593452;
double r6593454 = r6593449 + r6593453;
double r6593455 = r6593434 / r6593454;
double r6593456 = r6593455 * r6593415;
return r6593456;
}
double f(double x) {
double r6593457 = x;
double r6593458 = -4059.5380651343917;
bool r6593459 = r6593457 <= r6593458;
double r6593460 = 0.5;
double r6593461 = r6593460 / r6593457;
double r6593462 = 0.15298196345929327;
double r6593463 = r6593457 * r6593457;
double r6593464 = r6593463 * r6593457;
double r6593465 = r6593463 * r6593464;
double r6593466 = r6593462 / r6593465;
double r6593467 = r6593461 + r6593466;
double r6593468 = 0.2514179000665375;
double r6593469 = r6593468 / r6593464;
double r6593470 = r6593467 + r6593469;
double r6593471 = 86341657.43675329;
bool r6593472 = r6593457 <= r6593471;
double r6593473 = 0.0072644182;
double r6593474 = r6593463 * r6593463;
double r6593475 = r6593474 * r6593463;
double r6593476 = r6593473 * r6593475;
double r6593477 = 0.0424060604;
double r6593478 = r6593477 * r6593474;
double r6593479 = 0.1049934947;
double r6593480 = r6593463 * r6593479;
double r6593481 = 1.0;
double r6593482 = r6593480 + r6593481;
double r6593483 = r6593478 + r6593482;
double r6593484 = r6593476 + r6593483;
double r6593485 = r6593463 * r6593475;
double r6593486 = 0.0005064034;
double r6593487 = r6593485 * r6593486;
double r6593488 = r6593484 + r6593487;
double r6593489 = 0.0001789971;
double r6593490 = r6593485 * r6593463;
double r6593491 = r6593489 * r6593490;
double r6593492 = r6593488 + r6593491;
double r6593493 = r6593492 * r6593457;
double r6593494 = r6593490 * r6593463;
double r6593495 = 2.0;
double r6593496 = r6593495 * r6593489;
double r6593497 = r6593494 * r6593496;
double r6593498 = 0.0008327945;
double r6593499 = r6593498 * r6593490;
double r6593500 = 0.7715471019;
double r6593501 = r6593463 * r6593500;
double r6593502 = r6593481 + r6593501;
double r6593503 = 0.2909738639;
double r6593504 = r6593503 * r6593474;
double r6593505 = r6593502 + r6593504;
double r6593506 = 0.0694555761;
double r6593507 = r6593506 * r6593475;
double r6593508 = r6593505 + r6593507;
double r6593509 = 0.0140005442;
double r6593510 = r6593485 * r6593509;
double r6593511 = r6593508 + r6593510;
double r6593512 = r6593499 + r6593511;
double r6593513 = r6593497 + r6593512;
double r6593514 = r6593493 / r6593513;
double r6593515 = r6593472 ? r6593514 : r6593470;
double r6593516 = r6593459 ? r6593470 : r6593515;
return r6593516;
}



Bits error versus x
Results
if x < -4059.5380651343917 or 86341657.43675329 < x Initial program 59.2
Taylor expanded around -inf 0.0
Simplified0.0
if -4059.5380651343917 < x < 86341657.43675329Initial program 0.0
rmApplied associate-*l/0.0
Final simplification0.0
herbie shell --seed 2019142
(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))