\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 -2220777069831281700 \lor \neg \left(x \le 748.41969972063316\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}:\\
\;\;\;\;\frac{x}{\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) + {x}^{4} \cdot \left(0.042406060400000001 + \left(x \cdot x\right) \cdot 0.00726441819999999999\right)}}\\
\end{array}double f(double x) {
double r388277 = 1.0;
double r388278 = 0.1049934947;
double r388279 = x;
double r388280 = r388279 * r388279;
double r388281 = r388278 * r388280;
double r388282 = r388277 + r388281;
double r388283 = 0.0424060604;
double r388284 = r388280 * r388280;
double r388285 = r388283 * r388284;
double r388286 = r388282 + r388285;
double r388287 = 0.0072644182;
double r388288 = r388284 * r388280;
double r388289 = r388287 * r388288;
double r388290 = r388286 + r388289;
double r388291 = 0.0005064034;
double r388292 = r388288 * r388280;
double r388293 = r388291 * r388292;
double r388294 = r388290 + r388293;
double r388295 = 0.0001789971;
double r388296 = r388292 * r388280;
double r388297 = r388295 * r388296;
double r388298 = r388294 + r388297;
double r388299 = 0.7715471019;
double r388300 = r388299 * r388280;
double r388301 = r388277 + r388300;
double r388302 = 0.2909738639;
double r388303 = r388302 * r388284;
double r388304 = r388301 + r388303;
double r388305 = 0.0694555761;
double r388306 = r388305 * r388288;
double r388307 = r388304 + r388306;
double r388308 = 0.0140005442;
double r388309 = r388308 * r388292;
double r388310 = r388307 + r388309;
double r388311 = 0.0008327945;
double r388312 = r388311 * r388296;
double r388313 = r388310 + r388312;
double r388314 = 2.0;
double r388315 = r388314 * r388295;
double r388316 = r388296 * r388280;
double r388317 = r388315 * r388316;
double r388318 = r388313 + r388317;
double r388319 = r388298 / r388318;
double r388320 = r388319 * r388279;
return r388320;
}
double f(double x) {
double r388321 = x;
double r388322 = -2.2207770698312817e+18;
bool r388323 = r388321 <= r388322;
double r388324 = 748.4196997206332;
bool r388325 = r388321 <= r388324;
double r388326 = !r388325;
bool r388327 = r388323 || r388326;
double r388328 = 0.2514179000665375;
double r388329 = 1.0;
double r388330 = 3.0;
double r388331 = pow(r388321, r388330);
double r388332 = r388329 / r388331;
double r388333 = r388328 * r388332;
double r388334 = 0.15298196345929327;
double r388335 = 5.0;
double r388336 = pow(r388321, r388335);
double r388337 = r388329 / r388336;
double r388338 = r388334 * r388337;
double r388339 = 0.5;
double r388340 = r388329 / r388321;
double r388341 = r388339 * r388340;
double r388342 = r388338 + r388341;
double r388343 = r388333 + r388342;
double r388344 = r388321 * r388321;
double r388345 = pow(r388344, r388330);
double r388346 = r388345 * r388331;
double r388347 = r388321 * r388346;
double r388348 = 0.0008327945;
double r388349 = 2.0;
double r388350 = 0.0001789971;
double r388351 = r388349 * r388350;
double r388352 = r388344 * r388351;
double r388353 = r388348 + r388352;
double r388354 = r388347 * r388353;
double r388355 = 0.7715471019;
double r388356 = 0.2909738639;
double r388357 = r388356 * r388344;
double r388358 = r388355 + r388357;
double r388359 = r388344 * r388358;
double r388360 = 1.0;
double r388361 = r388359 + r388360;
double r388362 = r388354 + r388361;
double r388363 = 6.0;
double r388364 = pow(r388321, r388363);
double r388365 = 0.0694555761;
double r388366 = 0.0140005442;
double r388367 = r388344 * r388366;
double r388368 = r388365 + r388367;
double r388369 = r388364 * r388368;
double r388370 = r388362 + r388369;
double r388371 = 4.0;
double r388372 = pow(r388344, r388371);
double r388373 = 0.0005064034;
double r388374 = r388344 * r388350;
double r388375 = r388373 + r388374;
double r388376 = r388372 * r388375;
double r388377 = 0.1049934947;
double r388378 = r388377 * r388344;
double r388379 = r388360 + r388378;
double r388380 = r388376 + r388379;
double r388381 = pow(r388321, r388371);
double r388382 = 0.0424060604;
double r388383 = 0.0072644182;
double r388384 = r388344 * r388383;
double r388385 = r388382 + r388384;
double r388386 = r388381 * r388385;
double r388387 = r388380 + r388386;
double r388388 = r388370 / r388387;
double r388389 = r388321 / r388388;
double r388390 = r388327 ? r388343 : r388389;
return r388390;
}



Bits error versus x
Results
if x < -2.2207770698312817e+18 or 748.4196997206332 < x Initial program 60.8
Simplified60.7
Taylor expanded around inf 0.0
if -2.2207770698312817e+18 < x < 748.4196997206332Initial program 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020089
(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))