\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 -6.377624199137871 \cdot 10^{+80}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\frac{t}{x \cdot \sqrt{2}} \cdot -2 - \sqrt{2} \cdot t}\\
\mathbf{elif}\;t \le 3.3304656260583313 \cdot 10^{+124}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{t \cdot t}{x} + \left(t \cdot t + \frac{\ell}{\sqrt[3]{x}} \cdot \frac{\frac{\ell}{\sqrt[3]{x}}}{\sqrt[3]{x}}\right) \cdot 2}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\frac{\frac{2}{x} \cdot t}{\sqrt{2}} + \sqrt{2} \cdot t}\\
\end{array}double f(double x, double l, double t) {
double r1471461 = 2.0;
double r1471462 = sqrt(r1471461);
double r1471463 = t;
double r1471464 = r1471462 * r1471463;
double r1471465 = x;
double r1471466 = 1.0;
double r1471467 = r1471465 + r1471466;
double r1471468 = r1471465 - r1471466;
double r1471469 = r1471467 / r1471468;
double r1471470 = l;
double r1471471 = r1471470 * r1471470;
double r1471472 = r1471463 * r1471463;
double r1471473 = r1471461 * r1471472;
double r1471474 = r1471471 + r1471473;
double r1471475 = r1471469 * r1471474;
double r1471476 = r1471475 - r1471471;
double r1471477 = sqrt(r1471476);
double r1471478 = r1471464 / r1471477;
return r1471478;
}
double f(double x, double l, double t) {
double r1471479 = t;
double r1471480 = -6.377624199137871e+80;
bool r1471481 = r1471479 <= r1471480;
double r1471482 = 2.0;
double r1471483 = sqrt(r1471482);
double r1471484 = r1471483 * r1471479;
double r1471485 = x;
double r1471486 = r1471485 * r1471483;
double r1471487 = r1471479 / r1471486;
double r1471488 = -2.0;
double r1471489 = r1471487 * r1471488;
double r1471490 = r1471489 - r1471484;
double r1471491 = r1471484 / r1471490;
double r1471492 = 3.3304656260583313e+124;
bool r1471493 = r1471479 <= r1471492;
double r1471494 = 4.0;
double r1471495 = r1471479 * r1471479;
double r1471496 = r1471495 / r1471485;
double r1471497 = r1471494 * r1471496;
double r1471498 = l;
double r1471499 = cbrt(r1471485);
double r1471500 = r1471498 / r1471499;
double r1471501 = r1471500 / r1471499;
double r1471502 = r1471500 * r1471501;
double r1471503 = r1471495 + r1471502;
double r1471504 = r1471503 * r1471482;
double r1471505 = r1471497 + r1471504;
double r1471506 = sqrt(r1471505);
double r1471507 = r1471484 / r1471506;
double r1471508 = r1471482 / r1471485;
double r1471509 = r1471508 * r1471479;
double r1471510 = r1471509 / r1471483;
double r1471511 = r1471510 + r1471484;
double r1471512 = r1471484 / r1471511;
double r1471513 = r1471493 ? r1471507 : r1471512;
double r1471514 = r1471481 ? r1471491 : r1471513;
return r1471514;
}



Bits error versus x



Bits error versus l



Bits error versus t
Results
if t < -6.377624199137871e+80Initial program 48.1
Taylor expanded around inf 47.9
Simplified47.9
Taylor expanded around -inf 3.0
Simplified3.0
if -6.377624199137871e+80 < t < 3.3304656260583313e+124Initial program 37.5
Taylor expanded around inf 17.3
Simplified17.3
rmApplied add-cube-cbrt17.4
Applied times-frac13.2
Simplified13.2
if 3.3304656260583313e+124 < t Initial program 54.3
Taylor expanded around inf 54.2
Simplified54.2
Taylor expanded around inf 2.5
Simplified2.5
Final simplification9.1
herbie shell --seed 2019152
(FPCore (x l t)
:name "Toniolo and Linder, Equation (7)"
(/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))))