\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.76577991310669669 \cdot 10^{-26}:\\
\;\;\;\;\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 -2.9584637926800251 \cdot 10^{-203}:\\
\;\;\;\;\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{elif}\;t \le -1.4640217334256062 \cdot 10^{-238}:\\
\;\;\;\;\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 1.2953282500941115 \cdot 10^{113}:\\
\;\;\;\;\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 r35478 = 2.0;
double r35479 = sqrt(r35478);
double r35480 = t;
double r35481 = r35479 * r35480;
double r35482 = x;
double r35483 = 1.0;
double r35484 = r35482 + r35483;
double r35485 = r35482 - r35483;
double r35486 = r35484 / r35485;
double r35487 = l;
double r35488 = r35487 * r35487;
double r35489 = r35480 * r35480;
double r35490 = r35478 * r35489;
double r35491 = r35488 + r35490;
double r35492 = r35486 * r35491;
double r35493 = r35492 - r35488;
double r35494 = sqrt(r35493);
double r35495 = r35481 / r35494;
return r35495;
}
double f(double x, double l, double t) {
double r35496 = t;
double r35497 = -1.7657799131066967e-26;
bool r35498 = r35496 <= r35497;
double r35499 = 2.0;
double r35500 = sqrt(r35499);
double r35501 = r35500 * r35496;
double r35502 = 3.0;
double r35503 = pow(r35500, r35502);
double r35504 = x;
double r35505 = 2.0;
double r35506 = pow(r35504, r35505);
double r35507 = r35503 * r35506;
double r35508 = r35496 / r35507;
double r35509 = r35500 * r35506;
double r35510 = r35496 / r35509;
double r35511 = r35508 - r35510;
double r35512 = r35499 * r35511;
double r35513 = r35512 - r35501;
double r35514 = r35500 * r35504;
double r35515 = r35496 / r35514;
double r35516 = r35499 * r35515;
double r35517 = r35513 - r35516;
double r35518 = r35501 / r35517;
double r35519 = -2.958463792680025e-203;
bool r35520 = r35496 <= r35519;
double r35521 = 4.0;
double r35522 = pow(r35496, r35505);
double r35523 = r35522 / r35504;
double r35524 = r35521 * r35523;
double r35525 = l;
double r35526 = 1.0;
double r35527 = pow(r35525, r35526);
double r35528 = r35504 / r35525;
double r35529 = r35527 / r35528;
double r35530 = r35522 + r35529;
double r35531 = r35499 * r35530;
double r35532 = r35524 + r35531;
double r35533 = sqrt(r35532);
double r35534 = r35501 / r35533;
double r35535 = -1.4640217334256062e-238;
bool r35536 = r35496 <= r35535;
double r35537 = 1.2953282500941115e+113;
bool r35538 = r35496 <= r35537;
double r35539 = r35510 + r35515;
double r35540 = r35499 * r35539;
double r35541 = r35499 * r35508;
double r35542 = r35501 - r35541;
double r35543 = r35540 + r35542;
double r35544 = r35501 / r35543;
double r35545 = r35538 ? r35534 : r35544;
double r35546 = r35536 ? r35518 : r35545;
double r35547 = r35520 ? r35534 : r35546;
double r35548 = r35498 ? r35518 : r35547;
return r35548;
}



Bits error versus x



Bits error versus l



Bits error versus t
Results
if t < -1.7657799131066967e-26 or -2.958463792680025e-203 < t < -1.4640217334256062e-238Initial program 41.5
Taylor expanded around -inf 8.5
Simplified8.5
if -1.7657799131066967e-26 < t < -2.958463792680025e-203 or -1.4640217334256062e-238 < t < 1.2953282500941115e+113Initial program 39.9
Taylor expanded around inf 17.6
Simplified17.6
rmApplied sqr-pow17.6
Applied associate-/l*13.8
Simplified13.8
if 1.2953282500941115e+113 < t Initial program 52.7
Taylor expanded around inf 2.9
Simplified2.9
Final simplification10.0
herbie shell --seed 2020059
(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)))))