\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 -3876.4863497370766:\\
\;\;\;\;\frac{0.15298196345929327}{\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)} + \left(\frac{0.2514179000665375}{\left(x \cdot x\right) \cdot x} + \frac{0.5}{x}\right)\\
\mathbf{elif}\;x \le 2545089.1297370084:\\
\;\;\;\;\left(x \cdot \sqrt{\frac{\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)}{\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(0.0001789971 \cdot 2\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(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 + \left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot 0.0694555761 + \left(0.2909738639 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) + \left(\left(x \cdot x\right) \cdot 0.7715471019 + 1\right)\right)\right)\right)\right)}}\right) \cdot \sqrt{\frac{\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)}{\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(0.0001789971 \cdot 2\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(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 + \left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot 0.0694555761 + \left(0.2909738639 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) + \left(\left(x \cdot x\right) \cdot 0.7715471019 + 1\right)\right)\right)\right)\right)}}\\
\mathbf{else}:\\
\;\;\;\;\frac{0.15298196345929327}{\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot x\right)} + \left(\frac{0.2514179000665375}{\left(x \cdot x\right) \cdot x} + \frac{0.5}{x}\right)\\
\end{array}double f(double x) {
double r7179368 = 1.0;
double r7179369 = 0.1049934947;
double r7179370 = x;
double r7179371 = r7179370 * r7179370;
double r7179372 = r7179369 * r7179371;
double r7179373 = r7179368 + r7179372;
double r7179374 = 0.0424060604;
double r7179375 = r7179371 * r7179371;
double r7179376 = r7179374 * r7179375;
double r7179377 = r7179373 + r7179376;
double r7179378 = 0.0072644182;
double r7179379 = r7179375 * r7179371;
double r7179380 = r7179378 * r7179379;
double r7179381 = r7179377 + r7179380;
double r7179382 = 0.0005064034;
double r7179383 = r7179379 * r7179371;
double r7179384 = r7179382 * r7179383;
double r7179385 = r7179381 + r7179384;
double r7179386 = 0.0001789971;
double r7179387 = r7179383 * r7179371;
double r7179388 = r7179386 * r7179387;
double r7179389 = r7179385 + r7179388;
double r7179390 = 0.7715471019;
double r7179391 = r7179390 * r7179371;
double r7179392 = r7179368 + r7179391;
double r7179393 = 0.2909738639;
double r7179394 = r7179393 * r7179375;
double r7179395 = r7179392 + r7179394;
double r7179396 = 0.0694555761;
double r7179397 = r7179396 * r7179379;
double r7179398 = r7179395 + r7179397;
double r7179399 = 0.0140005442;
double r7179400 = r7179399 * r7179383;
double r7179401 = r7179398 + r7179400;
double r7179402 = 0.0008327945;
double r7179403 = r7179402 * r7179387;
double r7179404 = r7179401 + r7179403;
double r7179405 = 2.0;
double r7179406 = r7179405 * r7179386;
double r7179407 = r7179387 * r7179371;
double r7179408 = r7179406 * r7179407;
double r7179409 = r7179404 + r7179408;
double r7179410 = r7179389 / r7179409;
double r7179411 = r7179410 * r7179370;
return r7179411;
}
double f(double x) {
double r7179412 = x;
double r7179413 = -3876.4863497370766;
bool r7179414 = r7179412 <= r7179413;
double r7179415 = 0.15298196345929327;
double r7179416 = r7179412 * r7179412;
double r7179417 = r7179416 * r7179412;
double r7179418 = r7179416 * r7179417;
double r7179419 = r7179415 / r7179418;
double r7179420 = 0.2514179000665375;
double r7179421 = r7179420 / r7179417;
double r7179422 = 0.5;
double r7179423 = r7179422 / r7179412;
double r7179424 = r7179421 + r7179423;
double r7179425 = r7179419 + r7179424;
double r7179426 = 2545089.1297370084;
bool r7179427 = r7179412 <= r7179426;
double r7179428 = 0.0072644182;
double r7179429 = r7179416 * r7179416;
double r7179430 = r7179429 * r7179416;
double r7179431 = r7179428 * r7179430;
double r7179432 = 0.0424060604;
double r7179433 = r7179432 * r7179429;
double r7179434 = 0.1049934947;
double r7179435 = r7179416 * r7179434;
double r7179436 = 1.0;
double r7179437 = r7179435 + r7179436;
double r7179438 = r7179433 + r7179437;
double r7179439 = r7179431 + r7179438;
double r7179440 = r7179416 * r7179430;
double r7179441 = 0.0005064034;
double r7179442 = r7179440 * r7179441;
double r7179443 = r7179439 + r7179442;
double r7179444 = 0.0001789971;
double r7179445 = r7179440 * r7179416;
double r7179446 = r7179444 * r7179445;
double r7179447 = r7179443 + r7179446;
double r7179448 = r7179445 * r7179416;
double r7179449 = 2.0;
double r7179450 = r7179444 * r7179449;
double r7179451 = r7179448 * r7179450;
double r7179452 = 0.0008327945;
double r7179453 = r7179452 * r7179445;
double r7179454 = 0.0140005442;
double r7179455 = r7179440 * r7179454;
double r7179456 = 0.0694555761;
double r7179457 = r7179430 * r7179456;
double r7179458 = 0.2909738639;
double r7179459 = r7179458 * r7179429;
double r7179460 = 0.7715471019;
double r7179461 = r7179416 * r7179460;
double r7179462 = r7179461 + r7179436;
double r7179463 = r7179459 + r7179462;
double r7179464 = r7179457 + r7179463;
double r7179465 = r7179455 + r7179464;
double r7179466 = r7179453 + r7179465;
double r7179467 = r7179451 + r7179466;
double r7179468 = r7179447 / r7179467;
double r7179469 = sqrt(r7179468);
double r7179470 = r7179412 * r7179469;
double r7179471 = r7179470 * r7179469;
double r7179472 = r7179427 ? r7179471 : r7179425;
double r7179473 = r7179414 ? r7179425 : r7179472;
return r7179473;
}



Bits error versus x
Results
if x < -3876.4863497370766 or 2545089.1297370084 < x Initial program 58.3
Taylor expanded around inf 0.0
Simplified0.0
if -3876.4863497370766 < x < 2545089.1297370084Initial program 0.0
rmApplied add-sqr-sqrt0.0
rmApplied associate-*l*0.0
Final simplification0.0
herbie shell --seed 2019158
(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))