\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.2441809281282278 \cdot 10^{79}:\\
\;\;\;\;\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.43051773656448993 \cdot 10^{-229}:\\
\;\;\;\;\frac{\left(\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}\right) \cdot \left(\sqrt[3]{\sqrt{2}} \cdot t\right)}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left({t}^{2} + \ell \cdot \frac{\ell}{x}\right)}}\\
\mathbf{elif}\;t \le 2.9350109141003192 \cdot 10^{-167}:\\
\;\;\;\;\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)}\\
\mathbf{elif}\;t \le 7.9057554216663514 \cdot 10^{116}:\\
\;\;\;\;\frac{\left(\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}\right) \cdot \left(\sqrt[3]{\sqrt{2}} \cdot t\right)}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left({t}^{2} + \ell \cdot \frac{\ell}{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 r35989 = 2.0;
double r35990 = sqrt(r35989);
double r35991 = t;
double r35992 = r35990 * r35991;
double r35993 = x;
double r35994 = 1.0;
double r35995 = r35993 + r35994;
double r35996 = r35993 - r35994;
double r35997 = r35995 / r35996;
double r35998 = l;
double r35999 = r35998 * r35998;
double r36000 = r35991 * r35991;
double r36001 = r35989 * r36000;
double r36002 = r35999 + r36001;
double r36003 = r35997 * r36002;
double r36004 = r36003 - r35999;
double r36005 = sqrt(r36004);
double r36006 = r35992 / r36005;
return r36006;
}
double f(double x, double l, double t) {
double r36007 = t;
double r36008 = -3.244180928128228e+79;
bool r36009 = r36007 <= r36008;
double r36010 = 2.0;
double r36011 = sqrt(r36010);
double r36012 = r36011 * r36007;
double r36013 = 3.0;
double r36014 = pow(r36011, r36013);
double r36015 = x;
double r36016 = 2.0;
double r36017 = pow(r36015, r36016);
double r36018 = r36014 * r36017;
double r36019 = r36007 / r36018;
double r36020 = r36011 * r36017;
double r36021 = r36007 / r36020;
double r36022 = r36019 - r36021;
double r36023 = r36010 * r36022;
double r36024 = r36023 - r36012;
double r36025 = r36011 * r36015;
double r36026 = r36007 / r36025;
double r36027 = r36010 * r36026;
double r36028 = r36024 - r36027;
double r36029 = r36012 / r36028;
double r36030 = 3.43051773656449e-229;
bool r36031 = r36007 <= r36030;
double r36032 = cbrt(r36011);
double r36033 = r36032 * r36032;
double r36034 = r36032 * r36007;
double r36035 = r36033 * r36034;
double r36036 = 4.0;
double r36037 = pow(r36007, r36016);
double r36038 = r36037 / r36015;
double r36039 = r36036 * r36038;
double r36040 = l;
double r36041 = r36040 / r36015;
double r36042 = r36040 * r36041;
double r36043 = r36037 + r36042;
double r36044 = r36010 * r36043;
double r36045 = r36039 + r36044;
double r36046 = sqrt(r36045);
double r36047 = r36035 / r36046;
double r36048 = 2.9350109141003192e-167;
bool r36049 = r36007 <= r36048;
double r36050 = r36021 + r36026;
double r36051 = r36010 * r36050;
double r36052 = r36010 * r36019;
double r36053 = r36012 - r36052;
double r36054 = r36051 + r36053;
double r36055 = r36012 / r36054;
double r36056 = 7.905755421666351e+116;
bool r36057 = r36007 <= r36056;
double r36058 = r36057 ? r36047 : r36055;
double r36059 = r36049 ? r36055 : r36058;
double r36060 = r36031 ? r36047 : r36059;
double r36061 = r36009 ? r36029 : r36060;
return r36061;
}



Bits error versus x



Bits error versus l



Bits error versus t
Results
if t < -3.244180928128228e+79Initial program 47.8
Taylor expanded around -inf 3.3
Simplified3.3
if -3.244180928128228e+79 < t < 3.43051773656449e-229 or 2.9350109141003192e-167 < t < 7.905755421666351e+116Initial program 36.1
Taylor expanded around inf 16.5
Simplified16.5
rmApplied *-un-lft-identity16.5
Applied add-sqr-sqrt40.8
Applied unpow-prod-down40.8
Applied times-frac38.4
Simplified38.4
Simplified12.1
rmApplied add-cube-cbrt12.1
Applied associate-*l*12.1
if 3.43051773656449e-229 < t < 2.9350109141003192e-167 or 7.905755421666351e+116 < t Initial program 55.1
Taylor expanded around inf 8.1
Simplified8.1
Final simplification9.3
herbie shell --seed 2020027
(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)))))