\frac{\left(\left(\left(\left(1 + 0.1049934947 \cdot \left(x \cdot x\right)\right) + 0.042406060400000001 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.00726441819999999999 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 5.0640340000000002 \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.789971 \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.77154710189999998 \cdot \left(x \cdot x\right)\right) + 0.29097386390000002 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.069455576099999999 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.014000544199999999 \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.32794500000000044 \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.789971 \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 -940855997476334.75 \lor \neg \left(x \le 733.09178720017348\right):\\
\;\;\;\;0.2514179000665373 \cdot \frac{1}{{x}^{3}} + \left(0.15298196345929371 \cdot \frac{1}{{x}^{5}} + 0.5 \cdot \frac{1}{x}\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{1}{\frac{\left(\left(x \cdot \left({\left(x \cdot x\right)}^{3} \cdot {x}^{3}\right)\right) \cdot \left(8.32794500000000044 \cdot 10^{-4} + \left(x \cdot x\right) \cdot \left(2 \cdot 1.789971 \cdot 10^{-4}\right)\right) + \left(\left(x \cdot x\right) \cdot \left(0.77154710189999998 + 0.29097386390000002 \cdot \left(x \cdot x\right)\right) + 1\right)\right) + {x}^{6} \cdot \left(0.069455576099999999 + \left(x \cdot x\right) \cdot 0.014000544199999999\right)}{\left({\left(x \cdot x\right)}^{4} \cdot \left(5.0640340000000002 \cdot 10^{-4} + \left(x \cdot x\right) \cdot 1.789971 \cdot 10^{-4}\right) + \left(1 + 0.1049934947 \cdot \left(x \cdot x\right)\right)\right) \cdot \left({\left(x \cdot x\right)}^{4} \cdot \left(5.0640340000000002 \cdot 10^{-4} + \left(x \cdot x\right) \cdot 1.789971 \cdot 10^{-4}\right) + \left(1 + 0.1049934947 \cdot \left(x \cdot x\right)\right)\right) - \left({x}^{4} \cdot \left(0.042406060400000001 + \left(x \cdot x\right) \cdot 0.00726441819999999999\right)\right) \cdot \left({x}^{4} \cdot \left(0.042406060400000001 + \left(x \cdot x\right) \cdot 0.00726441819999999999\right)\right)}} \cdot \frac{x}{\left({\left(x \cdot x\right)}^{4} \cdot \left(5.0640340000000002 \cdot 10^{-4} + \left(x \cdot x\right) \cdot 1.789971 \cdot 10^{-4}\right) + \left(1 + 0.1049934947 \cdot \left(x \cdot x\right)\right)\right) - {x}^{4} \cdot \left(0.042406060400000001 + \left(x \cdot x\right) \cdot 0.00726441819999999999\right)}\\
\end{array}double f(double x) {
double r470429 = 1.0;
double r470430 = 0.1049934947;
double r470431 = x;
double r470432 = r470431 * r470431;
double r470433 = r470430 * r470432;
double r470434 = r470429 + r470433;
double r470435 = 0.0424060604;
double r470436 = r470432 * r470432;
double r470437 = r470435 * r470436;
double r470438 = r470434 + r470437;
double r470439 = 0.0072644182;
double r470440 = r470436 * r470432;
double r470441 = r470439 * r470440;
double r470442 = r470438 + r470441;
double r470443 = 0.0005064034;
double r470444 = r470440 * r470432;
double r470445 = r470443 * r470444;
double r470446 = r470442 + r470445;
double r470447 = 0.0001789971;
double r470448 = r470444 * r470432;
double r470449 = r470447 * r470448;
double r470450 = r470446 + r470449;
double r470451 = 0.7715471019;
double r470452 = r470451 * r470432;
double r470453 = r470429 + r470452;
double r470454 = 0.2909738639;
double r470455 = r470454 * r470436;
double r470456 = r470453 + r470455;
double r470457 = 0.0694555761;
double r470458 = r470457 * r470440;
double r470459 = r470456 + r470458;
double r470460 = 0.0140005442;
double r470461 = r470460 * r470444;
double r470462 = r470459 + r470461;
double r470463 = 0.0008327945;
double r470464 = r470463 * r470448;
double r470465 = r470462 + r470464;
double r470466 = 2.0;
double r470467 = r470466 * r470447;
double r470468 = r470448 * r470432;
double r470469 = r470467 * r470468;
double r470470 = r470465 + r470469;
double r470471 = r470450 / r470470;
double r470472 = r470471 * r470431;
return r470472;
}
double f(double x) {
double r470473 = x;
double r470474 = -940855997476334.8;
bool r470475 = r470473 <= r470474;
double r470476 = 733.0917872001735;
bool r470477 = r470473 <= r470476;
double r470478 = !r470477;
bool r470479 = r470475 || r470478;
double r470480 = 0.2514179000665373;
double r470481 = 1.0;
double r470482 = 3.0;
double r470483 = pow(r470473, r470482);
double r470484 = r470481 / r470483;
double r470485 = r470480 * r470484;
double r470486 = 0.1529819634592937;
double r470487 = 5.0;
double r470488 = pow(r470473, r470487);
double r470489 = r470481 / r470488;
double r470490 = r470486 * r470489;
double r470491 = 0.5;
double r470492 = r470481 / r470473;
double r470493 = r470491 * r470492;
double r470494 = r470490 + r470493;
double r470495 = r470485 + r470494;
double r470496 = r470473 * r470473;
double r470497 = pow(r470496, r470482);
double r470498 = r470497 * r470483;
double r470499 = r470473 * r470498;
double r470500 = 0.0008327945;
double r470501 = 2.0;
double r470502 = 0.0001789971;
double r470503 = r470501 * r470502;
double r470504 = r470496 * r470503;
double r470505 = r470500 + r470504;
double r470506 = r470499 * r470505;
double r470507 = 0.7715471019;
double r470508 = 0.2909738639;
double r470509 = r470508 * r470496;
double r470510 = r470507 + r470509;
double r470511 = r470496 * r470510;
double r470512 = 1.0;
double r470513 = r470511 + r470512;
double r470514 = r470506 + r470513;
double r470515 = 6.0;
double r470516 = pow(r470473, r470515);
double r470517 = 0.0694555761;
double r470518 = 0.0140005442;
double r470519 = r470496 * r470518;
double r470520 = r470517 + r470519;
double r470521 = r470516 * r470520;
double r470522 = r470514 + r470521;
double r470523 = 4.0;
double r470524 = pow(r470496, r470523);
double r470525 = 0.0005064034;
double r470526 = r470496 * r470502;
double r470527 = r470525 + r470526;
double r470528 = r470524 * r470527;
double r470529 = 0.1049934947;
double r470530 = r470529 * r470496;
double r470531 = r470512 + r470530;
double r470532 = r470528 + r470531;
double r470533 = r470532 * r470532;
double r470534 = pow(r470473, r470523);
double r470535 = 0.0424060604;
double r470536 = 0.0072644182;
double r470537 = r470496 * r470536;
double r470538 = r470535 + r470537;
double r470539 = r470534 * r470538;
double r470540 = r470539 * r470539;
double r470541 = r470533 - r470540;
double r470542 = r470522 / r470541;
double r470543 = r470481 / r470542;
double r470544 = r470532 - r470539;
double r470545 = r470473 / r470544;
double r470546 = r470543 * r470545;
double r470547 = r470479 ? r470495 : r470546;
return r470547;
}



Bits error versus x
Results
if x < -940855997476334.8 or 733.0917872001735 < x Initial program 60.5
Simplified60.4
rmApplied flip-+62.5
Applied associate-/r/62.5
Applied *-un-lft-identity62.5
Applied times-frac62.5
Taylor expanded around inf 0.0
if -940855997476334.8 < x < 733.0917872001735Initial program 0.0
Simplified0.0
rmApplied flip-+0.0
Applied associate-/r/0.0
Applied *-un-lft-identity0.0
Applied times-frac0.0
Final simplification0.0
herbie shell --seed 2020035
(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))