\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 -31115301794.1085167:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\left(2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}} - \sqrt{2} \cdot t\right) - \frac{2}{\sqrt{2}} \cdot \left(\frac{t}{{x}^{2}} + \frac{t}{x}\right)}\\
\mathbf{elif}\;t \le -9.3590528423421053 \cdot 10^{-167}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{\left(\frac{\ell \cdot 2}{\frac{x}{\ell}} + 4 \cdot \frac{{t}^{2}}{x}\right) + {t}^{2} \cdot 2}}\\
\mathbf{elif}\;t \le -6.76922891139122843 \cdot 10^{-265}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\left(2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}} - \sqrt{2} \cdot t\right) - \frac{2}{\sqrt{2}} \cdot \left(\frac{t}{{x}^{2}} + \frac{t}{x}\right)}\\
\mathbf{elif}\;t \le 6.311404485509687 \cdot 10^{-213}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left({t}^{2} + \frac{{\ell}^{2}}{x}\right)}}\\
\mathbf{elif}\;t \le 4.8997616055238147 \cdot 10^{-171}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{2} \cdot t + \left(2 \cdot \frac{t}{\sqrt{2} \cdot x} + \frac{2}{{x}^{2}} \cdot \left(\frac{t}{\sqrt{2}} - \frac{t}{{\left(\sqrt{2}\right)}^{3}}\right)\right)}\\
\mathbf{elif}\;t \le 4.48833203439214359 \cdot 10^{90}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{\left(\frac{\ell \cdot 2}{\frac{x}{\ell}} + 4 \cdot \frac{{t}^{2}}{x}\right) + {t}^{2} \cdot 2}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{2} \cdot t + \left(2 \cdot \frac{t}{\sqrt{2} \cdot x} + \frac{2}{{x}^{2}} \cdot \left(\frac{t}{\sqrt{2}} - \frac{t}{{\left(\sqrt{2}\right)}^{3}}\right)\right)}\\
\end{array}double code(double x, double l, double t) {
return ((sqrt(2.0) * t) / sqrt(((((x + 1.0) / (x - 1.0)) * ((l * l) + (2.0 * (t * t)))) - (l * l))));
}
double code(double x, double l, double t) {
double VAR;
if ((t <= -31115301794.108517)) {
VAR = ((sqrt(2.0) * t) / (((2.0 * (t / (pow(sqrt(2.0), 3.0) * pow(x, 2.0)))) - (sqrt(2.0) * t)) - ((2.0 / sqrt(2.0)) * ((t / pow(x, 2.0)) + (t / x)))));
} else {
double VAR_1;
if ((t <= -9.359052842342105e-167)) {
VAR_1 = ((sqrt(2.0) * t) / sqrt(((((l * 2.0) / (x / l)) + (4.0 * (pow(t, 2.0) / x))) + (pow(t, 2.0) * 2.0))));
} else {
double VAR_2;
if ((t <= -6.769228911391228e-265)) {
VAR_2 = ((sqrt(2.0) * t) / (((2.0 * (t / (pow(sqrt(2.0), 3.0) * pow(x, 2.0)))) - (sqrt(2.0) * t)) - ((2.0 / sqrt(2.0)) * ((t / pow(x, 2.0)) + (t / x)))));
} else {
double VAR_3;
if ((t <= 6.311404485509687e-213)) {
VAR_3 = ((sqrt(2.0) * t) / sqrt(((4.0 * (pow(t, 2.0) / x)) + (2.0 * (pow(t, 2.0) + (pow(l, 2.0) / x))))));
} else {
double VAR_4;
if ((t <= 4.899761605523815e-171)) {
VAR_4 = ((sqrt(2.0) * t) / ((sqrt(2.0) * t) + ((2.0 * (t / (sqrt(2.0) * x))) + ((2.0 / pow(x, 2.0)) * ((t / sqrt(2.0)) - (t / pow(sqrt(2.0), 3.0)))))));
} else {
double VAR_5;
if ((t <= 4.488332034392144e+90)) {
VAR_5 = ((sqrt(2.0) * t) / sqrt(((((l * 2.0) / (x / l)) + (4.0 * (pow(t, 2.0) / x))) + (pow(t, 2.0) * 2.0))));
} else {
VAR_5 = ((sqrt(2.0) * t) / ((sqrt(2.0) * t) + ((2.0 * (t / (sqrt(2.0) * x))) + ((2.0 / pow(x, 2.0)) * ((t / sqrt(2.0)) - (t / pow(sqrt(2.0), 3.0)))))));
}
VAR_4 = VAR_5;
}
VAR_3 = VAR_4;
}
VAR_2 = VAR_3;
}
VAR_1 = VAR_2;
}
VAR = VAR_1;
}
return VAR;
}



Bits error versus x



Bits error versus l



Bits error versus t
Results
if t < -31115301794.108517 or -9.359052842342105e-167 < t < -6.769228911391228e-265Initial program 46.1
Taylor expanded around -inf 10.2
Simplified10.2
if -31115301794.108517 < t < -9.359052842342105e-167 or 4.899761605523815e-171 < t < 4.488332034392144e+90Initial program 30.6
Taylor expanded around inf 11.4
Simplified11.4
rmApplied sqr-pow11.4
Applied associate-/l*6.3
Simplified6.3
rmApplied +-commutative6.3
Applied distribute-rgt-in6.3
Applied associate-+r+6.3
Simplified6.3
if -6.769228911391228e-265 < t < 6.311404485509687e-213Initial program 62.7
Taylor expanded around inf 30.7
Simplified30.7
if 6.311404485509687e-213 < t < 4.899761605523815e-171 or 4.488332034392144e+90 < t Initial program 51.3
Taylor expanded around inf 6.7
Simplified6.7
Final simplification9.8
herbie shell --seed 2020078
(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)))))