\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 -2.97519280086432057 \cdot 10^{22} \lor \neg \left(x \le 704.22332760907602\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 r212111 = 1.0;
double r212112 = 0.1049934947;
double r212113 = x;
double r212114 = r212113 * r212113;
double r212115 = r212112 * r212114;
double r212116 = r212111 + r212115;
double r212117 = 0.0424060604;
double r212118 = r212114 * r212114;
double r212119 = r212117 * r212118;
double r212120 = r212116 + r212119;
double r212121 = 0.0072644182;
double r212122 = r212118 * r212114;
double r212123 = r212121 * r212122;
double r212124 = r212120 + r212123;
double r212125 = 0.0005064034;
double r212126 = r212122 * r212114;
double r212127 = r212125 * r212126;
double r212128 = r212124 + r212127;
double r212129 = 0.0001789971;
double r212130 = r212126 * r212114;
double r212131 = r212129 * r212130;
double r212132 = r212128 + r212131;
double r212133 = 0.7715471019;
double r212134 = r212133 * r212114;
double r212135 = r212111 + r212134;
double r212136 = 0.2909738639;
double r212137 = r212136 * r212118;
double r212138 = r212135 + r212137;
double r212139 = 0.0694555761;
double r212140 = r212139 * r212122;
double r212141 = r212138 + r212140;
double r212142 = 0.0140005442;
double r212143 = r212142 * r212126;
double r212144 = r212141 + r212143;
double r212145 = 0.0008327945;
double r212146 = r212145 * r212130;
double r212147 = r212144 + r212146;
double r212148 = 2.0;
double r212149 = r212148 * r212129;
double r212150 = r212130 * r212114;
double r212151 = r212149 * r212150;
double r212152 = r212147 + r212151;
double r212153 = r212132 / r212152;
double r212154 = r212153 * r212113;
return r212154;
}
double f(double x) {
double r212155 = x;
double r212156 = -2.9751928008643206e+22;
bool r212157 = r212155 <= r212156;
double r212158 = 704.223327609076;
bool r212159 = r212155 <= r212158;
double r212160 = !r212159;
bool r212161 = r212157 || r212160;
double r212162 = 0.2514179000665375;
double r212163 = 1.0;
double r212164 = 3.0;
double r212165 = pow(r212155, r212164);
double r212166 = r212163 / r212165;
double r212167 = r212162 * r212166;
double r212168 = 0.15298196345929327;
double r212169 = 5.0;
double r212170 = pow(r212155, r212169);
double r212171 = r212163 / r212170;
double r212172 = r212168 * r212171;
double r212173 = 0.5;
double r212174 = r212163 / r212155;
double r212175 = r212173 * r212174;
double r212176 = r212172 + r212175;
double r212177 = r212167 + r212176;
double r212178 = r212155 * r212155;
double r212179 = pow(r212178, r212164);
double r212180 = r212179 * r212165;
double r212181 = r212155 * r212180;
double r212182 = 0.0008327945;
double r212183 = 2.0;
double r212184 = 0.0001789971;
double r212185 = r212183 * r212184;
double r212186 = r212178 * r212185;
double r212187 = r212182 + r212186;
double r212188 = r212181 * r212187;
double r212189 = 0.7715471019;
double r212190 = 0.2909738639;
double r212191 = r212190 * r212178;
double r212192 = r212189 + r212191;
double r212193 = r212178 * r212192;
double r212194 = 1.0;
double r212195 = r212193 + r212194;
double r212196 = r212188 + r212195;
double r212197 = 6.0;
double r212198 = pow(r212155, r212197);
double r212199 = 0.0694555761;
double r212200 = 0.0140005442;
double r212201 = r212178 * r212200;
double r212202 = r212199 + r212201;
double r212203 = r212198 * r212202;
double r212204 = r212196 + r212203;
double r212205 = 4.0;
double r212206 = pow(r212178, r212205);
double r212207 = 0.0005064034;
double r212208 = r212178 * r212184;
double r212209 = r212207 + r212208;
double r212210 = r212206 * r212209;
double r212211 = 0.1049934947;
double r212212 = r212211 * r212178;
double r212213 = r212194 + r212212;
double r212214 = r212210 + r212213;
double r212215 = pow(r212155, r212205);
double r212216 = 0.0424060604;
double r212217 = 0.0072644182;
double r212218 = r212178 * r212217;
double r212219 = r212216 + r212218;
double r212220 = r212215 * r212219;
double r212221 = r212214 + r212220;
double r212222 = r212204 / r212221;
double r212223 = r212155 / r212222;
double r212224 = r212161 ? r212177 : r212223;
return r212224;
}



Bits error versus x
Results
if x < -2.9751928008643206e+22 or 704.223327609076 < x Initial program 60.9
Simplified60.8
Taylor expanded around inf 0.0
if -2.9751928008643206e+22 < x < 704.223327609076Initial program 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020020
(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))