\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 -4.290053800826923246197267651223841654495 \cdot 10^{123}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\left(\frac{t}{\left(\sqrt{2} \cdot 2\right) \cdot \left(x \cdot x\right)} - \left(\frac{t}{\left(x \cdot \sqrt{2}\right) \cdot x} + \frac{\frac{t}{\sqrt{2}}}{x}\right)\right) \cdot 2 - \sqrt{2} \cdot t}\\
\mathbf{elif}\;t \le 2.818948520043459281423123944713297721074 \cdot 10^{72}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{\frac{4}{\frac{x}{t \cdot t}} + \left(\frac{\frac{\ell}{\sqrt[3]{x}}}{\sqrt[3]{\sqrt[3]{x}}} \cdot \frac{\frac{\ell}{\sqrt[3]{x}}}{\sqrt[3]{\sqrt[3]{x} \cdot \sqrt[3]{x}}} + t \cdot t\right) \cdot 2}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\left(\frac{\frac{t}{\sqrt{2}} \cdot 2}{x \cdot x} + \sqrt{2} \cdot t\right) + 2 \cdot \left(\frac{\frac{t}{\sqrt{2}}}{x} - \frac{t}{\left(\sqrt{2} \cdot 2\right) \cdot \left(x \cdot x\right)}\right)}\\
\end{array}double f(double x, double l, double t) {
double r1709562 = 2.0;
double r1709563 = sqrt(r1709562);
double r1709564 = t;
double r1709565 = r1709563 * r1709564;
double r1709566 = x;
double r1709567 = 1.0;
double r1709568 = r1709566 + r1709567;
double r1709569 = r1709566 - r1709567;
double r1709570 = r1709568 / r1709569;
double r1709571 = l;
double r1709572 = r1709571 * r1709571;
double r1709573 = r1709564 * r1709564;
double r1709574 = r1709562 * r1709573;
double r1709575 = r1709572 + r1709574;
double r1709576 = r1709570 * r1709575;
double r1709577 = r1709576 - r1709572;
double r1709578 = sqrt(r1709577);
double r1709579 = r1709565 / r1709578;
return r1709579;
}
double f(double x, double l, double t) {
double r1709580 = t;
double r1709581 = -4.290053800826923e+123;
bool r1709582 = r1709580 <= r1709581;
double r1709583 = 2.0;
double r1709584 = sqrt(r1709583);
double r1709585 = r1709584 * r1709580;
double r1709586 = r1709584 * r1709583;
double r1709587 = x;
double r1709588 = r1709587 * r1709587;
double r1709589 = r1709586 * r1709588;
double r1709590 = r1709580 / r1709589;
double r1709591 = r1709587 * r1709584;
double r1709592 = r1709591 * r1709587;
double r1709593 = r1709580 / r1709592;
double r1709594 = r1709580 / r1709584;
double r1709595 = r1709594 / r1709587;
double r1709596 = r1709593 + r1709595;
double r1709597 = r1709590 - r1709596;
double r1709598 = r1709597 * r1709583;
double r1709599 = r1709598 - r1709585;
double r1709600 = r1709585 / r1709599;
double r1709601 = 2.8189485200434593e+72;
bool r1709602 = r1709580 <= r1709601;
double r1709603 = 4.0;
double r1709604 = r1709580 * r1709580;
double r1709605 = r1709587 / r1709604;
double r1709606 = r1709603 / r1709605;
double r1709607 = l;
double r1709608 = cbrt(r1709587);
double r1709609 = r1709607 / r1709608;
double r1709610 = cbrt(r1709608);
double r1709611 = r1709609 / r1709610;
double r1709612 = r1709608 * r1709608;
double r1709613 = cbrt(r1709612);
double r1709614 = r1709609 / r1709613;
double r1709615 = r1709611 * r1709614;
double r1709616 = r1709615 + r1709604;
double r1709617 = r1709616 * r1709583;
double r1709618 = r1709606 + r1709617;
double r1709619 = sqrt(r1709618);
double r1709620 = r1709585 / r1709619;
double r1709621 = r1709594 * r1709583;
double r1709622 = r1709621 / r1709588;
double r1709623 = r1709622 + r1709585;
double r1709624 = r1709595 - r1709590;
double r1709625 = r1709583 * r1709624;
double r1709626 = r1709623 + r1709625;
double r1709627 = r1709585 / r1709626;
double r1709628 = r1709602 ? r1709620 : r1709627;
double r1709629 = r1709582 ? r1709600 : r1709628;
return r1709629;
}



Bits error versus x



Bits error versus l



Bits error versus t
Results
if t < -4.290053800826923e+123Initial program 54.8
Taylor expanded around -inf 2.8
Simplified2.8
if -4.290053800826923e+123 < t < 2.8189485200434593e+72Initial program 37.9
Taylor expanded around inf 17.5
Simplified17.5
rmApplied add-cube-cbrt17.6
Applied associate-/r*17.6
Simplified14.5
rmApplied add-cube-cbrt14.5
Applied cbrt-prod14.5
Applied times-frac13.3
if 2.8189485200434593e+72 < t Initial program 46.4
Taylor expanded around inf 3.7
Simplified3.7
Final simplification9.3
herbie shell --seed 2019200
(FPCore (x l t)
:name "Toniolo and Linder, Equation (7)"
(/ (* (sqrt 2.0) t) (sqrt (- (* (/ (+ x 1.0) (- x 1.0)) (+ (* l l) (* 2.0 (* t t)))) (* l l)))))