Average Error: 43.1 → 11.0
Time: 29.8s
Precision: 64
\[\frac{\sqrt{2} \cdot t}{\sqrt{\frac{x + 1}{x - 1} \cdot \left(\ell \cdot \ell + 2 \cdot \left(t \cdot t\right)\right) - \ell \cdot \ell}}\]
\[\begin{array}{l} \mathbf{if}\;t \le -3.489486864712887015990302667998566764533 \cdot 10^{84}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\left(\frac{t}{{x}^{2}} \cdot \left(\frac{2}{\sqrt{2} \cdot 2} - \frac{2}{\sqrt{2}}\right) - \sqrt{2} \cdot t\right) - 2 \cdot \frac{t}{\sqrt{2} \cdot x}}\\ \mathbf{elif}\;t \le -2.709461606909830534876722198635777583364 \cdot 10^{-160}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right)}^{2}}{\frac{x}{{\left(\sqrt[3]{\ell}\right)}^{2}}}\right)}}\\ \mathbf{elif}\;t \le -1.837898093229335411549911881042127694691 \cdot 10^{-192}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\left(\frac{t}{{x}^{2}} \cdot \left(\frac{2}{\sqrt{2} \cdot 2} - \frac{2}{\sqrt{2}}\right) - \sqrt{2} \cdot t\right) - 2 \cdot \frac{t}{\sqrt{2} \cdot x}}\\ \mathbf{elif}\;t \le 3.155486028136924257976948321778373331679 \cdot 10^{-278}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{\ell}{\sqrt{x}} \cdot \frac{\ell}{\sqrt{x}}\right)}}\\ \mathbf{elif}\;t \le 1.96678984226063996280598897990826570745 \cdot 10^{-145} \lor \neg \left(t \le 1.40863433950518242825357667510921118382 \cdot 10^{-71}\right):\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\left(2 \cdot \frac{t}{\sqrt{2} \cdot x} + t \cdot \sqrt{2}\right) - \frac{t}{{x}^{2}} \cdot \left(\frac{2}{\sqrt{2} \cdot 2} - \frac{2}{\sqrt{2}}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right)}^{2}}{\frac{x}{{\left(\sqrt[3]{\ell}\right)}^{2}}}\right)}}\\ \end{array}\]
\frac{\sqrt{2} \cdot t}{\sqrt{\frac{x + 1}{x - 1} \cdot \left(\ell \cdot \ell + 2 \cdot \left(t \cdot t\right)\right) - \ell \cdot \ell}}
\begin{array}{l}
\mathbf{if}\;t \le -3.489486864712887015990302667998566764533 \cdot 10^{84}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\left(\frac{t}{{x}^{2}} \cdot \left(\frac{2}{\sqrt{2} \cdot 2} - \frac{2}{\sqrt{2}}\right) - \sqrt{2} \cdot t\right) - 2 \cdot \frac{t}{\sqrt{2} \cdot x}}\\

\mathbf{elif}\;t \le -2.709461606909830534876722198635777583364 \cdot 10^{-160}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right)}^{2}}{\frac{x}{{\left(\sqrt[3]{\ell}\right)}^{2}}}\right)}}\\

\mathbf{elif}\;t \le -1.837898093229335411549911881042127694691 \cdot 10^{-192}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\left(\frac{t}{{x}^{2}} \cdot \left(\frac{2}{\sqrt{2} \cdot 2} - \frac{2}{\sqrt{2}}\right) - \sqrt{2} \cdot t\right) - 2 \cdot \frac{t}{\sqrt{2} \cdot x}}\\

\mathbf{elif}\;t \le 3.155486028136924257976948321778373331679 \cdot 10^{-278}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{\ell}{\sqrt{x}} \cdot \frac{\ell}{\sqrt{x}}\right)}}\\

\mathbf{elif}\;t \le 1.96678984226063996280598897990826570745 \cdot 10^{-145} \lor \neg \left(t \le 1.40863433950518242825357667510921118382 \cdot 10^{-71}\right):\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\left(2 \cdot \frac{t}{\sqrt{2} \cdot x} + t \cdot \sqrt{2}\right) - \frac{t}{{x}^{2}} \cdot \left(\frac{2}{\sqrt{2} \cdot 2} - \frac{2}{\sqrt{2}}\right)}\\

\mathbf{else}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right)}^{2}}{\frac{x}{{\left(\sqrt[3]{\ell}\right)}^{2}}}\right)}}\\

\end{array}
double f(double x, double l, double t) {
        double r54759 = 2.0;
        double r54760 = sqrt(r54759);
        double r54761 = t;
        double r54762 = r54760 * r54761;
        double r54763 = x;
        double r54764 = 1.0;
        double r54765 = r54763 + r54764;
        double r54766 = r54763 - r54764;
        double r54767 = r54765 / r54766;
        double r54768 = l;
        double r54769 = r54768 * r54768;
        double r54770 = r54761 * r54761;
        double r54771 = r54759 * r54770;
        double r54772 = r54769 + r54771;
        double r54773 = r54767 * r54772;
        double r54774 = r54773 - r54769;
        double r54775 = sqrt(r54774);
        double r54776 = r54762 / r54775;
        return r54776;
}

double f(double x, double l, double t) {
        double r54777 = t;
        double r54778 = -3.489486864712887e+84;
        bool r54779 = r54777 <= r54778;
        double r54780 = 2.0;
        double r54781 = sqrt(r54780);
        double r54782 = r54781 * r54777;
        double r54783 = x;
        double r54784 = 2.0;
        double r54785 = pow(r54783, r54784);
        double r54786 = r54777 / r54785;
        double r54787 = r54781 * r54780;
        double r54788 = r54780 / r54787;
        double r54789 = r54780 / r54781;
        double r54790 = r54788 - r54789;
        double r54791 = r54786 * r54790;
        double r54792 = r54791 - r54782;
        double r54793 = r54781 * r54783;
        double r54794 = r54777 / r54793;
        double r54795 = r54780 * r54794;
        double r54796 = r54792 - r54795;
        double r54797 = r54782 / r54796;
        double r54798 = -2.7094616069098305e-160;
        bool r54799 = r54777 <= r54798;
        double r54800 = 4.0;
        double r54801 = pow(r54777, r54784);
        double r54802 = r54801 / r54783;
        double r54803 = r54800 * r54802;
        double r54804 = r54777 * r54777;
        double r54805 = l;
        double r54806 = cbrt(r54805);
        double r54807 = r54806 * r54806;
        double r54808 = pow(r54807, r54784);
        double r54809 = pow(r54806, r54784);
        double r54810 = r54783 / r54809;
        double r54811 = r54808 / r54810;
        double r54812 = r54804 + r54811;
        double r54813 = r54780 * r54812;
        double r54814 = r54803 + r54813;
        double r54815 = sqrt(r54814);
        double r54816 = r54782 / r54815;
        double r54817 = -1.8378980932293354e-192;
        bool r54818 = r54777 <= r54817;
        double r54819 = 3.155486028136924e-278;
        bool r54820 = r54777 <= r54819;
        double r54821 = sqrt(r54783);
        double r54822 = r54805 / r54821;
        double r54823 = r54822 * r54822;
        double r54824 = r54804 + r54823;
        double r54825 = r54780 * r54824;
        double r54826 = r54803 + r54825;
        double r54827 = sqrt(r54826);
        double r54828 = r54782 / r54827;
        double r54829 = 1.96678984226064e-145;
        bool r54830 = r54777 <= r54829;
        double r54831 = 1.4086343395051824e-71;
        bool r54832 = r54777 <= r54831;
        double r54833 = !r54832;
        bool r54834 = r54830 || r54833;
        double r54835 = r54777 * r54781;
        double r54836 = r54795 + r54835;
        double r54837 = r54836 - r54791;
        double r54838 = r54782 / r54837;
        double r54839 = r54834 ? r54838 : r54816;
        double r54840 = r54820 ? r54828 : r54839;
        double r54841 = r54818 ? r54797 : r54840;
        double r54842 = r54799 ? r54816 : r54841;
        double r54843 = r54779 ? r54797 : r54842;
        return r54843;
}

Error

Bits error versus x

Bits error versus l

Bits error versus t

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 4 regimes
  2. if t < -3.489486864712887e+84 or -2.7094616069098305e-160 < t < -1.8378980932293354e-192

    1. Initial program 50.6

      \[\frac{\sqrt{2} \cdot t}{\sqrt{\frac{x + 1}{x - 1} \cdot \left(\ell \cdot \ell + 2 \cdot \left(t \cdot t\right)\right) - \ell \cdot \ell}}\]
    2. Taylor expanded around -inf 6.3

      \[\leadsto \frac{\sqrt{2} \cdot t}{\color{blue}{2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}} - \left(2 \cdot \frac{t}{\sqrt{2} \cdot {x}^{2}} + \left(2 \cdot \frac{t}{\sqrt{2} \cdot x} + t \cdot \sqrt{2}\right)\right)}}\]
    3. Simplified6.3

      \[\leadsto \frac{\sqrt{2} \cdot t}{\color{blue}{\left(\frac{t}{{x}^{2}} \cdot \left(\frac{2}{\sqrt{2} \cdot 2} - \frac{2}{\sqrt{2}}\right) - \sqrt{2} \cdot t\right) - 2 \cdot \frac{t}{\sqrt{2} \cdot x}}}\]

    if -3.489486864712887e+84 < t < -2.7094616069098305e-160 or 1.96678984226064e-145 < t < 1.4086343395051824e-71

    1. Initial program 29.7

      \[\frac{\sqrt{2} \cdot t}{\sqrt{\frac{x + 1}{x - 1} \cdot \left(\ell \cdot \ell + 2 \cdot \left(t \cdot t\right)\right) - \ell \cdot \ell}}\]
    2. Taylor expanded around inf 10.0

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{\color{blue}{2 \cdot {t}^{2} + \left(2 \cdot \frac{{\ell}^{2}}{x} + 4 \cdot \frac{{t}^{2}}{x}\right)}}}\]
    3. Simplified10.0

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{\color{blue}{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{{\ell}^{2}}{x}\right)}}}\]
    4. Using strategy rm
    5. Applied add-cube-cbrt10.2

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{{\color{blue}{\left(\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right) \cdot \sqrt[3]{\ell}\right)}}^{2}}{x}\right)}}\]
    6. Applied unpow-prod-down10.2

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{\color{blue}{{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right)}^{2} \cdot {\left(\sqrt[3]{\ell}\right)}^{2}}}{x}\right)}}\]
    7. Applied associate-/l*6.5

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \color{blue}{\frac{{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right)}^{2}}{\frac{x}{{\left(\sqrt[3]{\ell}\right)}^{2}}}}\right)}}\]

    if -1.8378980932293354e-192 < t < 3.155486028136924e-278

    1. Initial program 63.0

      \[\frac{\sqrt{2} \cdot t}{\sqrt{\frac{x + 1}{x - 1} \cdot \left(\ell \cdot \ell + 2 \cdot \left(t \cdot t\right)\right) - \ell \cdot \ell}}\]
    2. Taylor expanded around inf 30.8

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{\color{blue}{2 \cdot {t}^{2} + \left(2 \cdot \frac{{\ell}^{2}}{x} + 4 \cdot \frac{{t}^{2}}{x}\right)}}}\]
    3. Simplified30.8

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{\color{blue}{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{{\ell}^{2}}{x}\right)}}}\]
    4. Using strategy rm
    5. Applied add-sqr-sqrt30.8

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{{\ell}^{2}}{\color{blue}{\sqrt{x} \cdot \sqrt{x}}}\right)}}\]
    6. Applied add-sqr-sqrt48.3

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{{\color{blue}{\left(\sqrt{\ell} \cdot \sqrt{\ell}\right)}}^{2}}{\sqrt{x} \cdot \sqrt{x}}\right)}}\]
    7. Applied unpow-prod-down48.3

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{\color{blue}{{\left(\sqrt{\ell}\right)}^{2} \cdot {\left(\sqrt{\ell}\right)}^{2}}}{\sqrt{x} \cdot \sqrt{x}}\right)}}\]
    8. Applied times-frac48.0

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \color{blue}{\frac{{\left(\sqrt{\ell}\right)}^{2}}{\sqrt{x}} \cdot \frac{{\left(\sqrt{\ell}\right)}^{2}}{\sqrt{x}}}\right)}}\]
    9. Simplified48.0

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \color{blue}{\frac{\ell}{\sqrt{x}}} \cdot \frac{{\left(\sqrt{\ell}\right)}^{2}}{\sqrt{x}}\right)}}\]
    10. Simplified30.3

      \[\leadsto \frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{\ell}{\sqrt{x}} \cdot \color{blue}{\frac{\ell}{\sqrt{x}}}\right)}}\]

    if 3.155486028136924e-278 < t < 1.96678984226064e-145 or 1.4086343395051824e-71 < t

    1. Initial program 42.5

      \[\frac{\sqrt{2} \cdot t}{\sqrt{\frac{x + 1}{x - 1} \cdot \left(\ell \cdot \ell + 2 \cdot \left(t \cdot t\right)\right) - \ell \cdot \ell}}\]
    2. Taylor expanded around inf 12.0

      \[\leadsto \frac{\sqrt{2} \cdot t}{\color{blue}{\left(2 \cdot \frac{t}{\sqrt{2} \cdot {x}^{2}} + \left(2 \cdot \frac{t}{\sqrt{2} \cdot x} + t \cdot \sqrt{2}\right)\right) - 2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}}}}\]
    3. Simplified12.0

      \[\leadsto \frac{\sqrt{2} \cdot t}{\color{blue}{\left(2 \cdot \frac{t}{\sqrt{2} \cdot x} + t \cdot \sqrt{2}\right) - \frac{t}{{x}^{2}} \cdot \left(\frac{2}{\sqrt{2} \cdot 2} - \frac{2}{\sqrt{2}}\right)}}\]
  3. Recombined 4 regimes into one program.
  4. Final simplification11.0

    \[\leadsto \begin{array}{l} \mathbf{if}\;t \le -3.489486864712887015990302667998566764533 \cdot 10^{84}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\left(\frac{t}{{x}^{2}} \cdot \left(\frac{2}{\sqrt{2} \cdot 2} - \frac{2}{\sqrt{2}}\right) - \sqrt{2} \cdot t\right) - 2 \cdot \frac{t}{\sqrt{2} \cdot x}}\\ \mathbf{elif}\;t \le -2.709461606909830534876722198635777583364 \cdot 10^{-160}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right)}^{2}}{\frac{x}{{\left(\sqrt[3]{\ell}\right)}^{2}}}\right)}}\\ \mathbf{elif}\;t \le -1.837898093229335411549911881042127694691 \cdot 10^{-192}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\left(\frac{t}{{x}^{2}} \cdot \left(\frac{2}{\sqrt{2} \cdot 2} - \frac{2}{\sqrt{2}}\right) - \sqrt{2} \cdot t\right) - 2 \cdot \frac{t}{\sqrt{2} \cdot x}}\\ \mathbf{elif}\;t \le 3.155486028136924257976948321778373331679 \cdot 10^{-278}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{\ell}{\sqrt{x}} \cdot \frac{\ell}{\sqrt{x}}\right)}}\\ \mathbf{elif}\;t \le 1.96678984226063996280598897990826570745 \cdot 10^{-145} \lor \neg \left(t \le 1.40863433950518242825357667510921118382 \cdot 10^{-71}\right):\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\left(2 \cdot \frac{t}{\sqrt{2} \cdot x} + t \cdot \sqrt{2}\right) - \frac{t}{{x}^{2}} \cdot \left(\frac{2}{\sqrt{2} \cdot 2} - \frac{2}{\sqrt{2}}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \frac{{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right)}^{2}}{\frac{x}{{\left(\sqrt[3]{\ell}\right)}^{2}}}\right)}}\\ \end{array}\]

Reproduce

herbie shell --seed 2019347 
(FPCore (x l t)
  :name "Toniolo and Linder, Equation (7)"
  :precision binary64
  (/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))))