Average Error: 28.7 → 0.0
Time: 15.0s
Precision: 64
\[\frac{\left(\left(\left(\left(1 + 0.1049934946999999951788851149103720672429 \cdot \left(x \cdot x\right)\right) + 0.04240606040000000076517494562722276896238 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.007264418199999999985194687468492702464573 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 5.064034000000000243502107366566633572802 \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.789971000000000009994005623070734145585 \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.7715471018999999763821051601553335785866 \cdot \left(x \cdot x\right)\right) + 0.2909738639000000182122107617033179849386 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.06945557609999999937322456844412954524159 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.01400054419999999938406531896362139377743 \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.327945000000000442749725770852364803432 \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.789971000000000009994005623070734145585 \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 -462935.9092847789288498461246490478515625 \lor \neg \left(x \le 716.1103272509417365654371678829193115234\right):\\ \;\;\;\;\left(\frac{0.5}{x} + \frac{0.1529819634592932686700805788859724998474}{{x}^{5}}\right) + \frac{0.2514179000665375252054900556686334311962}{{x}^{3}}\\ \mathbf{else}:\\ \;\;\;\;\frac{\mathsf{fma}\left({\left(x \cdot x\right)}^{4}, \mathsf{fma}\left(1.789971000000000009994005623070734145585 \cdot 10^{-4}, x \cdot x, 5.064034000000000243502107366566633572802 \cdot 10^{-4}\right), {x}^{4} \cdot 0.04240606040000000076517494562722276896238\right) + \mathsf{fma}\left({x}^{6}, 0.007264418199999999985194687468492702464573, \mathsf{fma}\left(x \cdot x, 0.1049934946999999951788851149103720672429, 1\right)\right)}{\mathsf{fma}\left(2 \cdot 1.789971000000000009994005623070734145585 \cdot 10^{-4}, {\left(x \cdot x\right)}^{6}, \mathsf{fma}\left({\left(x \cdot x\right)}^{4}, \left(x \cdot x\right) \cdot 8.327945000000000442749725770852364803432 \cdot 10^{-4} + 0.01400054419999999938406531896362139377743, \mathsf{fma}\left(0.06945557609999999937322456844412954524159, {x}^{6}, \mathsf{fma}\left(0.2909738639000000182122107617033179849386, {x}^{4}, \mathsf{fma}\left(x \cdot x, 0.7715471018999999763821051601553335785866, 1\right)\right)\right)\right)\right)} \cdot x\\ \end{array}\]
\frac{\left(\left(\left(\left(1 + 0.1049934946999999951788851149103720672429 \cdot \left(x \cdot x\right)\right) + 0.04240606040000000076517494562722276896238 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.007264418199999999985194687468492702464573 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 5.064034000000000243502107366566633572802 \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.789971000000000009994005623070734145585 \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.7715471018999999763821051601553335785866 \cdot \left(x \cdot x\right)\right) + 0.2909738639000000182122107617033179849386 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.06945557609999999937322456844412954524159 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.01400054419999999938406531896362139377743 \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.327945000000000442749725770852364803432 \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.789971000000000009994005623070734145585 \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 -462935.9092847789288498461246490478515625 \lor \neg \left(x \le 716.1103272509417365654371678829193115234\right):\\
\;\;\;\;\left(\frac{0.5}{x} + \frac{0.1529819634592932686700805788859724998474}{{x}^{5}}\right) + \frac{0.2514179000665375252054900556686334311962}{{x}^{3}}\\

\mathbf{else}:\\
\;\;\;\;\frac{\mathsf{fma}\left({\left(x \cdot x\right)}^{4}, \mathsf{fma}\left(1.789971000000000009994005623070734145585 \cdot 10^{-4}, x \cdot x, 5.064034000000000243502107366566633572802 \cdot 10^{-4}\right), {x}^{4} \cdot 0.04240606040000000076517494562722276896238\right) + \mathsf{fma}\left({x}^{6}, 0.007264418199999999985194687468492702464573, \mathsf{fma}\left(x \cdot x, 0.1049934946999999951788851149103720672429, 1\right)\right)}{\mathsf{fma}\left(2 \cdot 1.789971000000000009994005623070734145585 \cdot 10^{-4}, {\left(x \cdot x\right)}^{6}, \mathsf{fma}\left({\left(x \cdot x\right)}^{4}, \left(x \cdot x\right) \cdot 8.327945000000000442749725770852364803432 \cdot 10^{-4} + 0.01400054419999999938406531896362139377743, \mathsf{fma}\left(0.06945557609999999937322456844412954524159, {x}^{6}, \mathsf{fma}\left(0.2909738639000000182122107617033179849386, {x}^{4}, \mathsf{fma}\left(x \cdot x, 0.7715471018999999763821051601553335785866, 1\right)\right)\right)\right)\right)} \cdot x\\

\end{array}
double f(double x) {
        double r288629 = 1.0;
        double r288630 = 0.1049934947;
        double r288631 = x;
        double r288632 = r288631 * r288631;
        double r288633 = r288630 * r288632;
        double r288634 = r288629 + r288633;
        double r288635 = 0.0424060604;
        double r288636 = r288632 * r288632;
        double r288637 = r288635 * r288636;
        double r288638 = r288634 + r288637;
        double r288639 = 0.0072644182;
        double r288640 = r288636 * r288632;
        double r288641 = r288639 * r288640;
        double r288642 = r288638 + r288641;
        double r288643 = 0.0005064034;
        double r288644 = r288640 * r288632;
        double r288645 = r288643 * r288644;
        double r288646 = r288642 + r288645;
        double r288647 = 0.0001789971;
        double r288648 = r288644 * r288632;
        double r288649 = r288647 * r288648;
        double r288650 = r288646 + r288649;
        double r288651 = 0.7715471019;
        double r288652 = r288651 * r288632;
        double r288653 = r288629 + r288652;
        double r288654 = 0.2909738639;
        double r288655 = r288654 * r288636;
        double r288656 = r288653 + r288655;
        double r288657 = 0.0694555761;
        double r288658 = r288657 * r288640;
        double r288659 = r288656 + r288658;
        double r288660 = 0.0140005442;
        double r288661 = r288660 * r288644;
        double r288662 = r288659 + r288661;
        double r288663 = 0.0008327945;
        double r288664 = r288663 * r288648;
        double r288665 = r288662 + r288664;
        double r288666 = 2.0;
        double r288667 = r288666 * r288647;
        double r288668 = r288648 * r288632;
        double r288669 = r288667 * r288668;
        double r288670 = r288665 + r288669;
        double r288671 = r288650 / r288670;
        double r288672 = r288671 * r288631;
        return r288672;
}

double f(double x) {
        double r288673 = x;
        double r288674 = -462935.9092847789;
        bool r288675 = r288673 <= r288674;
        double r288676 = 716.1103272509417;
        bool r288677 = r288673 <= r288676;
        double r288678 = !r288677;
        bool r288679 = r288675 || r288678;
        double r288680 = 0.5;
        double r288681 = r288680 / r288673;
        double r288682 = 0.15298196345929327;
        double r288683 = 5.0;
        double r288684 = pow(r288673, r288683);
        double r288685 = r288682 / r288684;
        double r288686 = r288681 + r288685;
        double r288687 = 0.2514179000665375;
        double r288688 = 3.0;
        double r288689 = pow(r288673, r288688);
        double r288690 = r288687 / r288689;
        double r288691 = r288686 + r288690;
        double r288692 = r288673 * r288673;
        double r288693 = 4.0;
        double r288694 = pow(r288692, r288693);
        double r288695 = 0.0001789971;
        double r288696 = 0.0005064034;
        double r288697 = fma(r288695, r288692, r288696);
        double r288698 = pow(r288673, r288693);
        double r288699 = 0.0424060604;
        double r288700 = r288698 * r288699;
        double r288701 = fma(r288694, r288697, r288700);
        double r288702 = 6.0;
        double r288703 = pow(r288673, r288702);
        double r288704 = 0.0072644182;
        double r288705 = 0.1049934947;
        double r288706 = 1.0;
        double r288707 = fma(r288692, r288705, r288706);
        double r288708 = fma(r288703, r288704, r288707);
        double r288709 = r288701 + r288708;
        double r288710 = 2.0;
        double r288711 = r288710 * r288695;
        double r288712 = pow(r288692, r288702);
        double r288713 = 0.0008327945;
        double r288714 = r288692 * r288713;
        double r288715 = 0.0140005442;
        double r288716 = r288714 + r288715;
        double r288717 = 0.0694555761;
        double r288718 = 0.2909738639;
        double r288719 = 0.7715471019;
        double r288720 = fma(r288692, r288719, r288706);
        double r288721 = fma(r288718, r288698, r288720);
        double r288722 = fma(r288717, r288703, r288721);
        double r288723 = fma(r288694, r288716, r288722);
        double r288724 = fma(r288711, r288712, r288723);
        double r288725 = r288709 / r288724;
        double r288726 = r288725 * r288673;
        double r288727 = r288679 ? r288691 : r288726;
        return r288727;
}

Error

Bits error versus x

Derivation

  1. Split input into 2 regimes
  2. if x < -462935.9092847789 or 716.1103272509417 < x

    1. Initial program 59.3

      \[\frac{\left(\left(\left(\left(1 + 0.1049934946999999951788851149103720672429 \cdot \left(x \cdot x\right)\right) + 0.04240606040000000076517494562722276896238 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.007264418199999999985194687468492702464573 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 5.064034000000000243502107366566633572802 \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.789971000000000009994005623070734145585 \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.7715471018999999763821051601553335785866 \cdot \left(x \cdot x\right)\right) + 0.2909738639000000182122107617033179849386 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.06945557609999999937322456844412954524159 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.01400054419999999938406531896362139377743 \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.327945000000000442749725770852364803432 \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.789971000000000009994005623070734145585 \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\]
    2. Simplified59.3

      \[\leadsto \color{blue}{\frac{\mathsf{fma}\left({\left(x \cdot x\right)}^{4}, \mathsf{fma}\left(1.789971000000000009994005623070734145585 \cdot 10^{-4}, x \cdot x, 5.064034000000000243502107366566633572802 \cdot 10^{-4}\right), {x}^{4} \cdot 0.04240606040000000076517494562722276896238\right) + \mathsf{fma}\left({x}^{6}, 0.007264418199999999985194687468492702464573, \mathsf{fma}\left(x \cdot x, 0.1049934946999999951788851149103720672429, 1\right)\right)}{\mathsf{fma}\left(2 \cdot 1.789971000000000009994005623070734145585 \cdot 10^{-4}, {\left(x \cdot x\right)}^{6}, \mathsf{fma}\left({\left(x \cdot x\right)}^{4}, \left(x \cdot x\right) \cdot 8.327945000000000442749725770852364803432 \cdot 10^{-4} + 0.01400054419999999938406531896362139377743, \mathsf{fma}\left(0.06945557609999999937322456844412954524159, {x}^{6}, \mathsf{fma}\left(0.2909738639000000182122107617033179849386, {x}^{4}, \mathsf{fma}\left(x \cdot x, 0.7715471018999999763821051601553335785866, 1\right)\right)\right)\right)\right)} \cdot x}\]
    3. Taylor expanded around inf 0.0

      \[\leadsto \color{blue}{0.2514179000665375252054900556686334311962 \cdot \frac{1}{{x}^{3}} + \left(0.1529819634592932686700805788859724998474 \cdot \frac{1}{{x}^{5}} + 0.5 \cdot \frac{1}{x}\right)}\]
    4. Simplified0.0

      \[\leadsto \color{blue}{\left(\frac{0.5}{x} + \frac{0.1529819634592932686700805788859724998474}{{x}^{5}}\right) + \frac{0.2514179000665375252054900556686334311962}{{x}^{3}}}\]

    if -462935.9092847789 < x < 716.1103272509417

    1. Initial program 0.0

      \[\frac{\left(\left(\left(\left(1 + 0.1049934946999999951788851149103720672429 \cdot \left(x \cdot x\right)\right) + 0.04240606040000000076517494562722276896238 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.007264418199999999985194687468492702464573 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 5.064034000000000243502107366566633572802 \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.789971000000000009994005623070734145585 \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.7715471018999999763821051601553335785866 \cdot \left(x \cdot x\right)\right) + 0.2909738639000000182122107617033179849386 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.06945557609999999937322456844412954524159 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.01400054419999999938406531896362139377743 \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.327945000000000442749725770852364803432 \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.789971000000000009994005623070734145585 \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\]
    2. Simplified0.0

      \[\leadsto \color{blue}{\frac{\mathsf{fma}\left({\left(x \cdot x\right)}^{4}, \mathsf{fma}\left(1.789971000000000009994005623070734145585 \cdot 10^{-4}, x \cdot x, 5.064034000000000243502107366566633572802 \cdot 10^{-4}\right), {x}^{4} \cdot 0.04240606040000000076517494562722276896238\right) + \mathsf{fma}\left({x}^{6}, 0.007264418199999999985194687468492702464573, \mathsf{fma}\left(x \cdot x, 0.1049934946999999951788851149103720672429, 1\right)\right)}{\mathsf{fma}\left(2 \cdot 1.789971000000000009994005623070734145585 \cdot 10^{-4}, {\left(x \cdot x\right)}^{6}, \mathsf{fma}\left({\left(x \cdot x\right)}^{4}, \left(x \cdot x\right) \cdot 8.327945000000000442749725770852364803432 \cdot 10^{-4} + 0.01400054419999999938406531896362139377743, \mathsf{fma}\left(0.06945557609999999937322456844412954524159, {x}^{6}, \mathsf{fma}\left(0.2909738639000000182122107617033179849386, {x}^{4}, \mathsf{fma}\left(x \cdot x, 0.7715471018999999763821051601553335785866, 1\right)\right)\right)\right)\right)} \cdot x}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification0.0

    \[\leadsto \begin{array}{l} \mathbf{if}\;x \le -462935.9092847789288498461246490478515625 \lor \neg \left(x \le 716.1103272509417365654371678829193115234\right):\\ \;\;\;\;\left(\frac{0.5}{x} + \frac{0.1529819634592932686700805788859724998474}{{x}^{5}}\right) + \frac{0.2514179000665375252054900556686334311962}{{x}^{3}}\\ \mathbf{else}:\\ \;\;\;\;\frac{\mathsf{fma}\left({\left(x \cdot x\right)}^{4}, \mathsf{fma}\left(1.789971000000000009994005623070734145585 \cdot 10^{-4}, x \cdot x, 5.064034000000000243502107366566633572802 \cdot 10^{-4}\right), {x}^{4} \cdot 0.04240606040000000076517494562722276896238\right) + \mathsf{fma}\left({x}^{6}, 0.007264418199999999985194687468492702464573, \mathsf{fma}\left(x \cdot x, 0.1049934946999999951788851149103720672429, 1\right)\right)}{\mathsf{fma}\left(2 \cdot 1.789971000000000009994005623070734145585 \cdot 10^{-4}, {\left(x \cdot x\right)}^{6}, \mathsf{fma}\left({\left(x \cdot x\right)}^{4}, \left(x \cdot x\right) \cdot 8.327945000000000442749725770852364803432 \cdot 10^{-4} + 0.01400054419999999938406531896362139377743, \mathsf{fma}\left(0.06945557609999999937322456844412954524159, {x}^{6}, \mathsf{fma}\left(0.2909738639000000182122107617033179849386, {x}^{4}, \mathsf{fma}\left(x \cdot x, 0.7715471018999999763821051601553335785866, 1\right)\right)\right)\right)\right)} \cdot x\\ \end{array}\]

Reproduce

herbie shell --seed 2019350 +o rules:numerics
(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))