\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 -1.1633699203691767 \lor \neg \left(x \le 1.14913787002183088\right):\\
\;\;\;\;0.25141790006653753 \cdot \frac{1}{{x}^{3}} + \left(0.1529819634592933 \cdot \frac{1}{{x}^{5}} + 0.5 \cdot \frac{1}{x}\right)\\
\mathbf{else}:\\
\;\;\;\;\left(1 \cdot x + 0.265709700396150994 \cdot {x}^{5}\right) - 0.66655360720000001 \cdot {x}^{3}\\
\end{array}double f(double x) {
double r173447 = 1.0;
double r173448 = 0.1049934947;
double r173449 = x;
double r173450 = r173449 * r173449;
double r173451 = r173448 * r173450;
double r173452 = r173447 + r173451;
double r173453 = 0.0424060604;
double r173454 = r173450 * r173450;
double r173455 = r173453 * r173454;
double r173456 = r173452 + r173455;
double r173457 = 0.0072644182;
double r173458 = r173454 * r173450;
double r173459 = r173457 * r173458;
double r173460 = r173456 + r173459;
double r173461 = 0.0005064034;
double r173462 = r173458 * r173450;
double r173463 = r173461 * r173462;
double r173464 = r173460 + r173463;
double r173465 = 0.0001789971;
double r173466 = r173462 * r173450;
double r173467 = r173465 * r173466;
double r173468 = r173464 + r173467;
double r173469 = 0.7715471019;
double r173470 = r173469 * r173450;
double r173471 = r173447 + r173470;
double r173472 = 0.2909738639;
double r173473 = r173472 * r173454;
double r173474 = r173471 + r173473;
double r173475 = 0.0694555761;
double r173476 = r173475 * r173458;
double r173477 = r173474 + r173476;
double r173478 = 0.0140005442;
double r173479 = r173478 * r173462;
double r173480 = r173477 + r173479;
double r173481 = 0.0008327945;
double r173482 = r173481 * r173466;
double r173483 = r173480 + r173482;
double r173484 = 2.0;
double r173485 = r173484 * r173465;
double r173486 = r173466 * r173450;
double r173487 = r173485 * r173486;
double r173488 = r173483 + r173487;
double r173489 = r173468 / r173488;
double r173490 = r173489 * r173449;
return r173490;
}
double f(double x) {
double r173491 = x;
double r173492 = -1.1633699203691767;
bool r173493 = r173491 <= r173492;
double r173494 = 1.1491378700218309;
bool r173495 = r173491 <= r173494;
double r173496 = !r173495;
bool r173497 = r173493 || r173496;
double r173498 = 0.2514179000665375;
double r173499 = 1.0;
double r173500 = 3.0;
double r173501 = pow(r173491, r173500);
double r173502 = r173499 / r173501;
double r173503 = r173498 * r173502;
double r173504 = 0.15298196345929327;
double r173505 = 5.0;
double r173506 = pow(r173491, r173505);
double r173507 = r173499 / r173506;
double r173508 = r173504 * r173507;
double r173509 = 0.5;
double r173510 = r173499 / r173491;
double r173511 = r173509 * r173510;
double r173512 = r173508 + r173511;
double r173513 = r173503 + r173512;
double r173514 = 1.0;
double r173515 = r173514 * r173491;
double r173516 = 0.265709700396151;
double r173517 = r173516 * r173506;
double r173518 = r173515 + r173517;
double r173519 = 0.6665536072;
double r173520 = r173519 * r173501;
double r173521 = r173518 - r173520;
double r173522 = r173497 ? r173513 : r173521;
return r173522;
}



Bits error versus x
Results
if x < -1.1633699203691767 or 1.1491378700218309 < x Initial program 58.5
Taylor expanded around inf 0.3
if -1.1633699203691767 < x < 1.1491378700218309Initial program 0.0
Taylor expanded around 0 0.2
Final simplification0.3
herbie shell --seed 2020060
(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))