\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.5929896271648735 \cdot 10^{131}:\\
\;\;\;\;\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 3.4154862987809272 \cdot 10^{106}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left({t}^{2} + \frac{{\ell}^{1}}{\frac{x}{\ell}}\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 r33974 = 2.0;
double r33975 = sqrt(r33974);
double r33976 = t;
double r33977 = r33975 * r33976;
double r33978 = x;
double r33979 = 1.0;
double r33980 = r33978 + r33979;
double r33981 = r33978 - r33979;
double r33982 = r33980 / r33981;
double r33983 = l;
double r33984 = r33983 * r33983;
double r33985 = r33976 * r33976;
double r33986 = r33974 * r33985;
double r33987 = r33984 + r33986;
double r33988 = r33982 * r33987;
double r33989 = r33988 - r33984;
double r33990 = sqrt(r33989);
double r33991 = r33977 / r33990;
return r33991;
}
double f(double x, double l, double t) {
double r33992 = t;
double r33993 = -1.5929896271648735e+131;
bool r33994 = r33992 <= r33993;
double r33995 = 2.0;
double r33996 = sqrt(r33995);
double r33997 = r33996 * r33992;
double r33998 = 3.0;
double r33999 = pow(r33996, r33998);
double r34000 = x;
double r34001 = 2.0;
double r34002 = pow(r34000, r34001);
double r34003 = r33999 * r34002;
double r34004 = r33992 / r34003;
double r34005 = r33996 * r34002;
double r34006 = r33992 / r34005;
double r34007 = r34004 - r34006;
double r34008 = r33995 * r34007;
double r34009 = r34008 - r33997;
double r34010 = r33996 * r34000;
double r34011 = r33992 / r34010;
double r34012 = r33995 * r34011;
double r34013 = r34009 - r34012;
double r34014 = r33997 / r34013;
double r34015 = 3.415486298780927e+106;
bool r34016 = r33992 <= r34015;
double r34017 = 4.0;
double r34018 = pow(r33992, r34001);
double r34019 = r34018 / r34000;
double r34020 = r34017 * r34019;
double r34021 = l;
double r34022 = 1.0;
double r34023 = pow(r34021, r34022);
double r34024 = r34000 / r34021;
double r34025 = r34023 / r34024;
double r34026 = r34018 + r34025;
double r34027 = r33995 * r34026;
double r34028 = r34020 + r34027;
double r34029 = sqrt(r34028);
double r34030 = r33997 / r34029;
double r34031 = r34006 + r34011;
double r34032 = r33995 * r34031;
double r34033 = r33995 * r34004;
double r34034 = r33997 - r34033;
double r34035 = r34032 + r34034;
double r34036 = r33997 / r34035;
double r34037 = r34016 ? r34030 : r34036;
double r34038 = r33994 ? r34014 : r34037;
return r34038;
}



Bits error versus x



Bits error versus l



Bits error versus t
Results
if t < -1.5929896271648735e+131Initial program 55.2
Taylor expanded around -inf 2.2
Simplified2.2
if -1.5929896271648735e+131 < t < 3.415486298780927e+106Initial program 36.9
Taylor expanded around inf 17.0
Simplified17.0
rmApplied sqr-pow17.0
Applied associate-/l*12.7
Simplified12.7
if 3.415486298780927e+106 < t Initial program 53.1
Taylor expanded around inf 2.7
Simplified2.7
Final simplification8.9
herbie shell --seed 2020035
(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)))))