\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.303460822673397315215412157251637183073 \cdot 10^{149}:\\
\;\;\;\;\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 -1.230065150000774851732639496826971723637 \cdot 10^{-149}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \left|\ell\right| \cdot \frac{\left|\ell\right|}{x}\right)}}\\
\mathbf{elif}\;t \le -4.303938162079978611630039682650481103959 \cdot 10^{-243}:\\
\;\;\;\;\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.190616919639676067581902350380230729983 \cdot 10^{-45}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(t \cdot t + \left|\ell\right| \cdot \frac{\left|\ell\right|}{x}\right)}}\\
\mathbf{else}:\\
\;\;\;\;\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)}\\
\end{array}double f(double x, double l, double t) {
double r44027 = 2.0;
double r44028 = sqrt(r44027);
double r44029 = t;
double r44030 = r44028 * r44029;
double r44031 = x;
double r44032 = 1.0;
double r44033 = r44031 + r44032;
double r44034 = r44031 - r44032;
double r44035 = r44033 / r44034;
double r44036 = l;
double r44037 = r44036 * r44036;
double r44038 = r44029 * r44029;
double r44039 = r44027 * r44038;
double r44040 = r44037 + r44039;
double r44041 = r44035 * r44040;
double r44042 = r44041 - r44037;
double r44043 = sqrt(r44042);
double r44044 = r44030 / r44043;
return r44044;
}
double f(double x, double l, double t) {
double r44045 = t;
double r44046 = -2.3034608226733973e+149;
bool r44047 = r44045 <= r44046;
double r44048 = 2.0;
double r44049 = sqrt(r44048);
double r44050 = r44049 * r44045;
double r44051 = x;
double r44052 = 2.0;
double r44053 = pow(r44051, r44052);
double r44054 = r44045 / r44053;
double r44055 = r44049 * r44048;
double r44056 = r44048 / r44055;
double r44057 = r44048 / r44049;
double r44058 = r44056 - r44057;
double r44059 = r44054 * r44058;
double r44060 = r44059 - r44050;
double r44061 = r44049 * r44051;
double r44062 = r44045 / r44061;
double r44063 = r44048 * r44062;
double r44064 = r44060 - r44063;
double r44065 = r44050 / r44064;
double r44066 = -1.2300651500007749e-149;
bool r44067 = r44045 <= r44066;
double r44068 = 4.0;
double r44069 = pow(r44045, r44052);
double r44070 = r44069 / r44051;
double r44071 = r44068 * r44070;
double r44072 = r44045 * r44045;
double r44073 = l;
double r44074 = fabs(r44073);
double r44075 = r44074 / r44051;
double r44076 = r44074 * r44075;
double r44077 = r44072 + r44076;
double r44078 = r44048 * r44077;
double r44079 = r44071 + r44078;
double r44080 = sqrt(r44079);
double r44081 = r44050 / r44080;
double r44082 = -4.3039381620799786e-243;
bool r44083 = r44045 <= r44082;
double r44084 = 3.190616919639676e-45;
bool r44085 = r44045 <= r44084;
double r44086 = r44045 * r44049;
double r44087 = r44063 + r44086;
double r44088 = r44087 - r44059;
double r44089 = r44050 / r44088;
double r44090 = r44085 ? r44081 : r44089;
double r44091 = r44083 ? r44065 : r44090;
double r44092 = r44067 ? r44081 : r44091;
double r44093 = r44047 ? r44065 : r44092;
return r44093;
}



Bits error versus x



Bits error versus l



Bits error versus t
Results
if t < -2.3034608226733973e+149 or -1.2300651500007749e-149 < t < -4.3039381620799786e-243Initial program 60.6
Taylor expanded around -inf 10.9
Simplified10.9
if -2.3034608226733973e+149 < t < -1.2300651500007749e-149 or -4.3039381620799786e-243 < t < 3.190616919639676e-45Initial program 37.2
Taylor expanded around inf 17.3
Simplified17.3
rmApplied *-un-lft-identity17.3
Applied add-sqr-sqrt17.3
Applied times-frac17.3
Simplified17.3
Simplified12.7
if 3.190616919639676e-45 < t Initial program 39.5
Taylor expanded around inf 5.6
Simplified5.6
Final simplification10.0
herbie shell --seed 2019326
(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)))))