\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 -2.615673507435036296435750238402039962931 \cdot 10^{50}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\left(2 \cdot \left(\frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}} - \frac{t}{\sqrt{2} \cdot {x}^{2}}\right) - 2 \cdot \frac{t}{\sqrt{2} \cdot x}\right) - t \cdot \sqrt{2}}\\
\mathbf{elif}\;t \le -6.111047820265303935317690964852722629158 \cdot 10^{-179}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{2 \cdot \left(t \cdot t + \left|\ell\right| \cdot \frac{\left|\ell\right|}{x}\right) + 4 \cdot \frac{{t}^{2}}{x}}}\\
\mathbf{elif}\;t \le -1.323606909102099087479133351528995697428 \cdot 10^{-261}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\left(2 \cdot \left(\frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}} - \frac{t}{\sqrt{2} \cdot {x}^{2}}\right) - 2 \cdot \frac{t}{\sqrt{2} \cdot x}\right) - t \cdot \sqrt{2}}\\
\mathbf{elif}\;t \le 1.277987426228136459634363360568383475924 \cdot 10^{119}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{2 \cdot \left(t \cdot t + \left|\ell\right| \cdot \frac{\left|\ell\right|}{x}\right) + 4 \cdot \frac{{t}^{2}}{x}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{2 \cdot \left(\frac{t}{\sqrt{2} \cdot {x}^{2}} + \frac{t}{\sqrt{2} \cdot x}\right) + \left(t \cdot \sqrt{2} - 2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}}\right)}\\
\end{array}double f(double x, double l, double t) {
double r48805 = 2.0;
double r48806 = sqrt(r48805);
double r48807 = t;
double r48808 = r48806 * r48807;
double r48809 = x;
double r48810 = 1.0;
double r48811 = r48809 + r48810;
double r48812 = r48809 - r48810;
double r48813 = r48811 / r48812;
double r48814 = l;
double r48815 = r48814 * r48814;
double r48816 = r48807 * r48807;
double r48817 = r48805 * r48816;
double r48818 = r48815 + r48817;
double r48819 = r48813 * r48818;
double r48820 = r48819 - r48815;
double r48821 = sqrt(r48820);
double r48822 = r48808 / r48821;
return r48822;
}
double f(double x, double l, double t) {
double r48823 = t;
double r48824 = -2.6156735074350363e+50;
bool r48825 = r48823 <= r48824;
double r48826 = 2.0;
double r48827 = sqrt(r48826);
double r48828 = r48827 * r48823;
double r48829 = 3.0;
double r48830 = pow(r48827, r48829);
double r48831 = x;
double r48832 = 2.0;
double r48833 = pow(r48831, r48832);
double r48834 = r48830 * r48833;
double r48835 = r48823 / r48834;
double r48836 = r48827 * r48833;
double r48837 = r48823 / r48836;
double r48838 = r48835 - r48837;
double r48839 = r48826 * r48838;
double r48840 = r48827 * r48831;
double r48841 = r48823 / r48840;
double r48842 = r48826 * r48841;
double r48843 = r48839 - r48842;
double r48844 = r48823 * r48827;
double r48845 = r48843 - r48844;
double r48846 = r48828 / r48845;
double r48847 = -6.111047820265304e-179;
bool r48848 = r48823 <= r48847;
double r48849 = r48823 * r48823;
double r48850 = l;
double r48851 = fabs(r48850);
double r48852 = r48851 / r48831;
double r48853 = r48851 * r48852;
double r48854 = r48849 + r48853;
double r48855 = r48826 * r48854;
double r48856 = 4.0;
double r48857 = pow(r48823, r48832);
double r48858 = r48857 / r48831;
double r48859 = r48856 * r48858;
double r48860 = r48855 + r48859;
double r48861 = sqrt(r48860);
double r48862 = r48828 / r48861;
double r48863 = -1.323606909102099e-261;
bool r48864 = r48823 <= r48863;
double r48865 = 1.2779874262281365e+119;
bool r48866 = r48823 <= r48865;
double r48867 = r48837 + r48841;
double r48868 = r48826 * r48867;
double r48869 = r48826 * r48835;
double r48870 = r48844 - r48869;
double r48871 = r48868 + r48870;
double r48872 = r48828 / r48871;
double r48873 = r48866 ? r48862 : r48872;
double r48874 = r48864 ? r48846 : r48873;
double r48875 = r48848 ? r48862 : r48874;
double r48876 = r48825 ? r48846 : r48875;
return r48876;
}



Bits error versus x



Bits error versus l



Bits error versus t
Results
if t < -2.6156735074350363e+50 or -6.111047820265304e-179 < t < -1.323606909102099e-261Initial program 48.5
Taylor expanded around -inf 9.3
Simplified9.3
if -2.6156735074350363e+50 < t < -6.111047820265304e-179 or -1.323606909102099e-261 < t < 1.2779874262281365e+119Initial program 36.4
Taylor expanded around inf 16.1
Simplified16.1
rmApplied *-un-lft-identity16.1
Applied add-sqr-sqrt16.1
Applied times-frac16.1
Simplified16.1
Simplified11.7
if 1.2779874262281365e+119 < t Initial program 54.6
Taylor expanded around inf 2.1
Simplified2.1
Final simplification9.2
herbie shell --seed 2019305
(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)))))