\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.25220828193530254 \cdot 10^{152}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\mathsf{fma}\left(2, \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}}, -\mathsf{fma}\left(2, \frac{t}{\sqrt{2} \cdot {x}^{2}}, \mathsf{fma}\left(2, \frac{t}{\sqrt{2} \cdot x}, t \cdot \sqrt{2}\right)\right)\right)}\\
\mathbf{elif}\;t \le -4.8731486025056558 \cdot 10^{-210}:\\
\;\;\;\;\frac{\left(\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}\right) \cdot \left(\sqrt[3]{\sqrt{2}} \cdot t\right)}{\sqrt{\mathsf{fma}\left(2, {t}^{2}, \mathsf{fma}\left(2, \ell \cdot \frac{\ell}{x}, 4 \cdot \frac{{t}^{2}}{x}\right)\right)}}\\
\mathbf{elif}\;t \le -4.0649996317434177 \cdot 10^{-265}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\mathsf{fma}\left(2, \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}}, -\mathsf{fma}\left(2, \frac{t}{\sqrt{2} \cdot {x}^{2}}, \mathsf{fma}\left(2, \frac{t}{\sqrt{2} \cdot x}, t \cdot \sqrt{2}\right)\right)\right)}\\
\mathbf{elif}\;t \le 3.5534422416304239 \cdot 10^{152}:\\
\;\;\;\;\frac{\left(\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}\right) \cdot \left(\sqrt[3]{\sqrt{2}} \cdot t\right)}{\sqrt{\mathsf{fma}\left(2, {t}^{2}, \mathsf{fma}\left(2, \ell \cdot \frac{\ell}{x}, 4 \cdot \frac{{t}^{2}}{x}\right)\right)}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\mathsf{fma}\left(t, \sqrt{2}, 2 \cdot \frac{t}{\sqrt{2} \cdot x}\right)}\\
\end{array}double f(double x, double l, double t) {
double r38465 = 2.0;
double r38466 = sqrt(r38465);
double r38467 = t;
double r38468 = r38466 * r38467;
double r38469 = x;
double r38470 = 1.0;
double r38471 = r38469 + r38470;
double r38472 = r38469 - r38470;
double r38473 = r38471 / r38472;
double r38474 = l;
double r38475 = r38474 * r38474;
double r38476 = r38467 * r38467;
double r38477 = r38465 * r38476;
double r38478 = r38475 + r38477;
double r38479 = r38473 * r38478;
double r38480 = r38479 - r38475;
double r38481 = sqrt(r38480);
double r38482 = r38468 / r38481;
return r38482;
}
double f(double x, double l, double t) {
double r38483 = t;
double r38484 = -2.2522082819353025e+152;
bool r38485 = r38483 <= r38484;
double r38486 = 2.0;
double r38487 = sqrt(r38486);
double r38488 = r38487 * r38483;
double r38489 = 3.0;
double r38490 = pow(r38487, r38489);
double r38491 = x;
double r38492 = 2.0;
double r38493 = pow(r38491, r38492);
double r38494 = r38490 * r38493;
double r38495 = r38483 / r38494;
double r38496 = r38487 * r38493;
double r38497 = r38483 / r38496;
double r38498 = r38487 * r38491;
double r38499 = r38483 / r38498;
double r38500 = r38483 * r38487;
double r38501 = fma(r38486, r38499, r38500);
double r38502 = fma(r38486, r38497, r38501);
double r38503 = -r38502;
double r38504 = fma(r38486, r38495, r38503);
double r38505 = r38488 / r38504;
double r38506 = -4.873148602505656e-210;
bool r38507 = r38483 <= r38506;
double r38508 = cbrt(r38487);
double r38509 = r38508 * r38508;
double r38510 = r38508 * r38483;
double r38511 = r38509 * r38510;
double r38512 = pow(r38483, r38492);
double r38513 = l;
double r38514 = r38513 / r38491;
double r38515 = r38513 * r38514;
double r38516 = 4.0;
double r38517 = r38512 / r38491;
double r38518 = r38516 * r38517;
double r38519 = fma(r38486, r38515, r38518);
double r38520 = fma(r38486, r38512, r38519);
double r38521 = sqrt(r38520);
double r38522 = r38511 / r38521;
double r38523 = -4.064999631743418e-265;
bool r38524 = r38483 <= r38523;
double r38525 = 3.553442241630424e+152;
bool r38526 = r38483 <= r38525;
double r38527 = r38486 * r38499;
double r38528 = fma(r38483, r38487, r38527);
double r38529 = r38488 / r38528;
double r38530 = r38526 ? r38522 : r38529;
double r38531 = r38524 ? r38505 : r38530;
double r38532 = r38507 ? r38522 : r38531;
double r38533 = r38485 ? r38505 : r38532;
return r38533;
}



Bits error versus x



Bits error versus l



Bits error versus t
if t < -2.2522082819353025e+152 or -4.873148602505656e-210 < t < -4.064999631743418e-265Initial program 62.0
Taylor expanded around -inf 7.6
Simplified7.6
if -2.2522082819353025e+152 < t < -4.873148602505656e-210 or -4.064999631743418e-265 < t < 3.553442241630424e+152Initial program 33.5
Taylor expanded around inf 16.3
Simplified16.3
rmApplied *-un-lft-identity16.3
Applied add-sqr-sqrt39.6
Applied unpow-prod-down39.6
Applied times-frac37.0
Simplified37.0
Simplified11.2
rmApplied add-cube-cbrt11.2
Applied associate-*l*11.2
if 3.553442241630424e+152 < t Initial program 62.2
Taylor expanded around inf 62.6
Simplified62.6
rmApplied *-un-lft-identity62.6
Applied add-sqr-sqrt63.2
Applied unpow-prod-down63.2
Applied times-frac63.1
Simplified63.1
Simplified62.5
Taylor expanded around inf 2.2
Simplified2.2
Final simplification9.2
herbie shell --seed 2020018 +o rules:numerics
(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)))))