\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 -1356525439.54039 \lor \neg \left(x \le 789.84959973016066\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(\left(\sqrt{\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)} \cdot \sqrt{\frac{1}{\left(\left(\left(\left({x}^{2} \cdot \left(x \cdot {x}^{3}\right)\right) \cdot 0.069455576099999999 + 1\right) + {x}^{2} \cdot \left(0.77154710189999998 + 0.29097386390000002 \cdot {x}^{2}\right)\right) + \left(0.014000544199999999 \cdot {x}^{8} + {x}^{2} \cdot \left(8.32794500000000044 \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) + \left(2 \cdot 1.789971 \cdot 10^{-4}\right) \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)\right)\right) \cdot 1}}\right) \cdot \left(\sqrt{\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)} \cdot \sqrt{\frac{1}{\left(\left(\left(\left({x}^{2} \cdot \left(x \cdot {x}^{3}\right)\right) \cdot 0.069455576099999999 + 1\right) + {x}^{2} \cdot \left(0.77154710189999998 + 0.29097386390000002 \cdot {x}^{2}\right)\right) + \left(0.014000544199999999 \cdot {x}^{8} + {x}^{2} \cdot \left(8.32794500000000044 \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) + \left(2 \cdot 1.789971 \cdot 10^{-4}\right) \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)\right)\right) \cdot 1}}\right)\right) \cdot x\\
\end{array}double f(double x) {
double r324700 = 1.0;
double r324701 = 0.1049934947;
double r324702 = x;
double r324703 = r324702 * r324702;
double r324704 = r324701 * r324703;
double r324705 = r324700 + r324704;
double r324706 = 0.0424060604;
double r324707 = r324703 * r324703;
double r324708 = r324706 * r324707;
double r324709 = r324705 + r324708;
double r324710 = 0.0072644182;
double r324711 = r324707 * r324703;
double r324712 = r324710 * r324711;
double r324713 = r324709 + r324712;
double r324714 = 0.0005064034;
double r324715 = r324711 * r324703;
double r324716 = r324714 * r324715;
double r324717 = r324713 + r324716;
double r324718 = 0.0001789971;
double r324719 = r324715 * r324703;
double r324720 = r324718 * r324719;
double r324721 = r324717 + r324720;
double r324722 = 0.7715471019;
double r324723 = r324722 * r324703;
double r324724 = r324700 + r324723;
double r324725 = 0.2909738639;
double r324726 = r324725 * r324707;
double r324727 = r324724 + r324726;
double r324728 = 0.0694555761;
double r324729 = r324728 * r324711;
double r324730 = r324727 + r324729;
double r324731 = 0.0140005442;
double r324732 = r324731 * r324715;
double r324733 = r324730 + r324732;
double r324734 = 0.0008327945;
double r324735 = r324734 * r324719;
double r324736 = r324733 + r324735;
double r324737 = 2.0;
double r324738 = r324737 * r324718;
double r324739 = r324719 * r324703;
double r324740 = r324738 * r324739;
double r324741 = r324736 + r324740;
double r324742 = r324721 / r324741;
double r324743 = r324742 * r324702;
return r324743;
}
double f(double x) {
double r324744 = x;
double r324745 = -1356525439.54039;
bool r324746 = r324744 <= r324745;
double r324747 = 789.8495997301607;
bool r324748 = r324744 <= r324747;
double r324749 = !r324748;
bool r324750 = r324746 || r324749;
double r324751 = 0.2514179000665375;
double r324752 = 1.0;
double r324753 = 3.0;
double r324754 = pow(r324744, r324753);
double r324755 = r324752 / r324754;
double r324756 = r324751 * r324755;
double r324757 = 0.15298196345929327;
double r324758 = 5.0;
double r324759 = pow(r324744, r324758);
double r324760 = r324752 / r324759;
double r324761 = r324757 * r324760;
double r324762 = 0.5;
double r324763 = r324752 / r324744;
double r324764 = r324762 * r324763;
double r324765 = r324761 + r324764;
double r324766 = r324756 + r324765;
double r324767 = 1.0;
double r324768 = 0.1049934947;
double r324769 = r324744 * r324744;
double r324770 = r324768 * r324769;
double r324771 = r324767 + r324770;
double r324772 = 0.0424060604;
double r324773 = r324769 * r324769;
double r324774 = r324772 * r324773;
double r324775 = r324771 + r324774;
double r324776 = 0.0072644182;
double r324777 = r324773 * r324769;
double r324778 = r324776 * r324777;
double r324779 = r324775 + r324778;
double r324780 = 0.0005064034;
double r324781 = r324777 * r324769;
double r324782 = r324780 * r324781;
double r324783 = r324779 + r324782;
double r324784 = 0.0001789971;
double r324785 = r324781 * r324769;
double r324786 = r324784 * r324785;
double r324787 = r324783 + r324786;
double r324788 = sqrt(r324787);
double r324789 = 2.0;
double r324790 = pow(r324744, r324789);
double r324791 = r324744 * r324754;
double r324792 = r324790 * r324791;
double r324793 = 0.0694555761;
double r324794 = r324792 * r324793;
double r324795 = r324794 + r324767;
double r324796 = 0.7715471019;
double r324797 = 0.2909738639;
double r324798 = r324797 * r324790;
double r324799 = r324796 + r324798;
double r324800 = r324790 * r324799;
double r324801 = r324795 + r324800;
double r324802 = 0.0140005442;
double r324803 = 8.0;
double r324804 = pow(r324744, r324803);
double r324805 = r324802 * r324804;
double r324806 = 0.0008327945;
double r324807 = r324806 * r324781;
double r324808 = 2.0;
double r324809 = r324808 * r324784;
double r324810 = r324809 * r324785;
double r324811 = r324807 + r324810;
double r324812 = r324790 * r324811;
double r324813 = r324805 + r324812;
double r324814 = r324801 + r324813;
double r324815 = r324814 * r324752;
double r324816 = r324752 / r324815;
double r324817 = sqrt(r324816);
double r324818 = r324788 * r324817;
double r324819 = r324818 * r324818;
double r324820 = r324819 * r324744;
double r324821 = r324750 ? r324766 : r324820;
return r324821;
}



Bits error versus x
Results
if x < -1356525439.54039 or 789.8495997301607 < x Initial program 59.6
Taylor expanded around inf 0.0
if -1356525439.54039 < x < 789.8495997301607Initial program 0.0
rmApplied div-inv0.0
Simplified0.0
rmApplied add-sqr-sqrt0.0
Applied add-sqr-sqrt0.0
Applied unswap-sqr0.0
Final simplification0.0
herbie shell --seed 2020056
(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))