\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 -1.829047846176416821165387134663461020861 \cdot 10^{148}:\\
\;\;\;\;\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) - \sqrt{2} \cdot t\right) - 2 \cdot \frac{t}{\sqrt{2} \cdot x}}\\
\mathbf{elif}\;t \le -2.203593120725198032992656866890125604787 \cdot 10^{-171}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left({t}^{2} + \left|\ell\right| \cdot \frac{\left|\ell\right|}{x}\right)}}\\
\mathbf{elif}\;t \le -3.303971389439813148225044693459689801897 \cdot 10^{-212}:\\
\;\;\;\;\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) - \sqrt{2} \cdot t\right) - 2 \cdot \frac{t}{\sqrt{2} \cdot x}}\\
\mathbf{elif}\;t \le 2.11300280733476473087748313915491345477 \cdot 10^{52}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left({t}^{2} + \left|\ell\right| \cdot \frac{\left|\ell\right|}{x}\right)}}\\
\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(\sqrt{2} \cdot t - 2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}}\right)}\\
\end{array}double f(double x, double l, double t) {
double r34916 = 2.0;
double r34917 = sqrt(r34916);
double r34918 = t;
double r34919 = r34917 * r34918;
double r34920 = x;
double r34921 = 1.0;
double r34922 = r34920 + r34921;
double r34923 = r34920 - r34921;
double r34924 = r34922 / r34923;
double r34925 = l;
double r34926 = r34925 * r34925;
double r34927 = r34918 * r34918;
double r34928 = r34916 * r34927;
double r34929 = r34926 + r34928;
double r34930 = r34924 * r34929;
double r34931 = r34930 - r34926;
double r34932 = sqrt(r34931);
double r34933 = r34919 / r34932;
return r34933;
}
double f(double x, double l, double t) {
double r34934 = t;
double r34935 = -1.8290478461764168e+148;
bool r34936 = r34934 <= r34935;
double r34937 = 2.0;
double r34938 = sqrt(r34937);
double r34939 = r34938 * r34934;
double r34940 = 3.0;
double r34941 = pow(r34938, r34940);
double r34942 = x;
double r34943 = 2.0;
double r34944 = pow(r34942, r34943);
double r34945 = r34941 * r34944;
double r34946 = r34934 / r34945;
double r34947 = r34938 * r34944;
double r34948 = r34934 / r34947;
double r34949 = r34946 - r34948;
double r34950 = r34937 * r34949;
double r34951 = r34950 - r34939;
double r34952 = r34938 * r34942;
double r34953 = r34934 / r34952;
double r34954 = r34937 * r34953;
double r34955 = r34951 - r34954;
double r34956 = r34939 / r34955;
double r34957 = -2.203593120725198e-171;
bool r34958 = r34934 <= r34957;
double r34959 = 4.0;
double r34960 = pow(r34934, r34943);
double r34961 = r34960 / r34942;
double r34962 = r34959 * r34961;
double r34963 = l;
double r34964 = fabs(r34963);
double r34965 = r34964 / r34942;
double r34966 = r34964 * r34965;
double r34967 = r34960 + r34966;
double r34968 = r34937 * r34967;
double r34969 = r34962 + r34968;
double r34970 = sqrt(r34969);
double r34971 = r34939 / r34970;
double r34972 = -3.303971389439813e-212;
bool r34973 = r34934 <= r34972;
double r34974 = 2.1130028073347647e+52;
bool r34975 = r34934 <= r34974;
double r34976 = r34948 + r34953;
double r34977 = r34937 * r34976;
double r34978 = r34937 * r34946;
double r34979 = r34939 - r34978;
double r34980 = r34977 + r34979;
double r34981 = r34939 / r34980;
double r34982 = r34975 ? r34971 : r34981;
double r34983 = r34973 ? r34956 : r34982;
double r34984 = r34958 ? r34971 : r34983;
double r34985 = r34936 ? r34956 : r34984;
return r34985;
}



Bits error versus x



Bits error versus l



Bits error versus t
Results
if t < -1.8290478461764168e+148 or -2.203593120725198e-171 < t < -3.303971389439813e-212Initial program 61.4
Taylor expanded around -inf 6.8
Simplified6.8
if -1.8290478461764168e+148 < t < -2.203593120725198e-171 or -3.303971389439813e-212 < t < 2.1130028073347647e+52Initial program 36.7
Taylor expanded around inf 16.4
Simplified16.4
rmApplied *-un-lft-identity16.4
Applied add-sqr-sqrt16.4
Applied times-frac16.4
Simplified16.4
Simplified12.0
if 2.1130028073347647e+52 < t Initial program 44.7
Taylor expanded around inf 3.9
Simplified3.9
Final simplification9.1
herbie shell --seed 2019353
(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)))))