\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 -4052405089.347076416015625 \lor \neg \left(x \le 673.5332051604526668597827665507793426514\right):\\
\;\;\;\;\left(\frac{0.2514179000665375252054900556686334311962}{{x}^{3}} + \frac{0.1529819634592932686700805788859724998474}{{x}^{5}}\right) + \frac{0.5}{x}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\left(\left(1 + 0.1049934946999999951788851149103720672429 \cdot \left(x \cdot x\right)\right) + {x}^{6} \cdot 0.007264418199999999985194687468492702464573\right) + {x}^{4} \cdot \left(0.04240606040000000076517494562722276896238 + \left({x}^{4} \cdot 5.064034000000000243502107366566633572802 \cdot 10^{-4} + 1.789971000000000009994005623070734145585 \cdot 10^{-4} \cdot {x}^{6}\right)\right)}{\sqrt{{x}^{6} \cdot \left({x}^{6} \cdot \left(2 \cdot 1.789971000000000009994005623070734145585 \cdot 10^{-4}\right) + 0.06945557609999999937322456844412954524159\right) + \left(\left(1 + 0.7715471018999999763821051601553335785866 \cdot \left(x \cdot x\right)\right) + {x}^{4} \cdot \left(0.2909738639000000182122107617033179849386 + \left({x}^{6} \cdot 8.327945000000000442749725770852364803432 \cdot 10^{-4} + {x}^{4} \cdot 0.01400054419999999938406531896362139377743\right)\right)\right)}}}{\sqrt{{x}^{6} \cdot \left({x}^{6} \cdot \left(2 \cdot 1.789971000000000009994005623070734145585 \cdot 10^{-4}\right) + 0.06945557609999999937322456844412954524159\right) + \left(\left(1 + 0.7715471018999999763821051601553335785866 \cdot \left(x \cdot x\right)\right) + {x}^{4} \cdot \left(0.2909738639000000182122107617033179849386 + \left({x}^{6} \cdot 8.327945000000000442749725770852364803432 \cdot 10^{-4} + {x}^{4} \cdot 0.01400054419999999938406531896362139377743\right)\right)\right)}} \cdot x\\
\end{array}double f(double x) {
double r149435 = 1.0;
double r149436 = 0.1049934947;
double r149437 = x;
double r149438 = r149437 * r149437;
double r149439 = r149436 * r149438;
double r149440 = r149435 + r149439;
double r149441 = 0.0424060604;
double r149442 = r149438 * r149438;
double r149443 = r149441 * r149442;
double r149444 = r149440 + r149443;
double r149445 = 0.0072644182;
double r149446 = r149442 * r149438;
double r149447 = r149445 * r149446;
double r149448 = r149444 + r149447;
double r149449 = 0.0005064034;
double r149450 = r149446 * r149438;
double r149451 = r149449 * r149450;
double r149452 = r149448 + r149451;
double r149453 = 0.0001789971;
double r149454 = r149450 * r149438;
double r149455 = r149453 * r149454;
double r149456 = r149452 + r149455;
double r149457 = 0.7715471019;
double r149458 = r149457 * r149438;
double r149459 = r149435 + r149458;
double r149460 = 0.2909738639;
double r149461 = r149460 * r149442;
double r149462 = r149459 + r149461;
double r149463 = 0.0694555761;
double r149464 = r149463 * r149446;
double r149465 = r149462 + r149464;
double r149466 = 0.0140005442;
double r149467 = r149466 * r149450;
double r149468 = r149465 + r149467;
double r149469 = 0.0008327945;
double r149470 = r149469 * r149454;
double r149471 = r149468 + r149470;
double r149472 = 2.0;
double r149473 = r149472 * r149453;
double r149474 = r149454 * r149438;
double r149475 = r149473 * r149474;
double r149476 = r149471 + r149475;
double r149477 = r149456 / r149476;
double r149478 = r149477 * r149437;
return r149478;
}
double f(double x) {
double r149479 = x;
double r149480 = -4052405089.3470764;
bool r149481 = r149479 <= r149480;
double r149482 = 673.5332051604527;
bool r149483 = r149479 <= r149482;
double r149484 = !r149483;
bool r149485 = r149481 || r149484;
double r149486 = 0.2514179000665375;
double r149487 = 3.0;
double r149488 = pow(r149479, r149487);
double r149489 = r149486 / r149488;
double r149490 = 0.15298196345929327;
double r149491 = 5.0;
double r149492 = pow(r149479, r149491);
double r149493 = r149490 / r149492;
double r149494 = r149489 + r149493;
double r149495 = 0.5;
double r149496 = r149495 / r149479;
double r149497 = r149494 + r149496;
double r149498 = 1.0;
double r149499 = 0.1049934947;
double r149500 = r149479 * r149479;
double r149501 = r149499 * r149500;
double r149502 = r149498 + r149501;
double r149503 = 6.0;
double r149504 = pow(r149479, r149503);
double r149505 = 0.0072644182;
double r149506 = r149504 * r149505;
double r149507 = r149502 + r149506;
double r149508 = 4.0;
double r149509 = pow(r149479, r149508);
double r149510 = 0.0424060604;
double r149511 = 0.0005064034;
double r149512 = r149509 * r149511;
double r149513 = 0.0001789971;
double r149514 = r149513 * r149504;
double r149515 = r149512 + r149514;
double r149516 = r149510 + r149515;
double r149517 = r149509 * r149516;
double r149518 = r149507 + r149517;
double r149519 = 2.0;
double r149520 = r149519 * r149513;
double r149521 = r149504 * r149520;
double r149522 = 0.0694555761;
double r149523 = r149521 + r149522;
double r149524 = r149504 * r149523;
double r149525 = 0.7715471019;
double r149526 = r149525 * r149500;
double r149527 = r149498 + r149526;
double r149528 = 0.2909738639;
double r149529 = 0.0008327945;
double r149530 = r149504 * r149529;
double r149531 = 0.0140005442;
double r149532 = r149509 * r149531;
double r149533 = r149530 + r149532;
double r149534 = r149528 + r149533;
double r149535 = r149509 * r149534;
double r149536 = r149527 + r149535;
double r149537 = r149524 + r149536;
double r149538 = sqrt(r149537);
double r149539 = r149518 / r149538;
double r149540 = r149539 / r149538;
double r149541 = r149540 * r149479;
double r149542 = r149485 ? r149497 : r149541;
return r149542;
}



Bits error versus x
Results
if x < -4052405089.3470764 or 673.5332051604527 < x Initial program 59.9
Simplified59.8
rmApplied add-sqr-sqrt59.8
Applied associate-/r*59.8
Taylor expanded around inf 0.0
Simplified0.0
if -4052405089.3470764 < x < 673.5332051604527Initial program 0.0
Simplified0.0
rmApplied add-sqr-sqrt0.0
Applied associate-/r*0.0
Final simplification0.0
herbie shell --seed 2019208
(FPCore (x)
:name "Jmat.Real.dawson"
:precision binary64
(* (/ (+ (+ (+ (+ (+ 1 (* 0.1049934947 (* x x))) (* 0.042406060400000001 (* (* x x) (* x x)))) (* 0.00726441819999999999 (* (* (* x x) (* x x)) (* x x)))) (* 5.0640340000000002e-4 (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* 1.789971e-4 (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (+ (+ (+ (+ (+ (+ 1 (* 0.77154710189999998 (* x x))) (* 0.29097386390000002 (* (* x x) (* x x)))) (* 0.069455576099999999 (* (* (* x x) (* x x)) (* x x)))) (* 0.014000544199999999 (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* 8.32794500000000044e-4 (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (* (* 2 1.789971e-4) (* (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)) (* x x))))) x))