\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.35488772505874831 \cdot 10^{150}:\\
\;\;\;\;\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 5.4123788187210028 \cdot 10^{86}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left(\sqrt{{t}^{2} + \left|\ell\right| \cdot \frac{\left|\ell\right|}{x}} \cdot \sqrt{{t}^{2} + \left|\ell\right| \cdot \frac{\left|\ell\right|}{x}}\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 r33726 = 2.0;
double r33727 = sqrt(r33726);
double r33728 = t;
double r33729 = r33727 * r33728;
double r33730 = x;
double r33731 = 1.0;
double r33732 = r33730 + r33731;
double r33733 = r33730 - r33731;
double r33734 = r33732 / r33733;
double r33735 = l;
double r33736 = r33735 * r33735;
double r33737 = r33728 * r33728;
double r33738 = r33726 * r33737;
double r33739 = r33736 + r33738;
double r33740 = r33734 * r33739;
double r33741 = r33740 - r33736;
double r33742 = sqrt(r33741);
double r33743 = r33729 / r33742;
return r33743;
}
double f(double x, double l, double t) {
double r33744 = t;
double r33745 = -1.3548877250587483e+150;
bool r33746 = r33744 <= r33745;
double r33747 = 2.0;
double r33748 = sqrt(r33747);
double r33749 = r33748 * r33744;
double r33750 = 3.0;
double r33751 = pow(r33748, r33750);
double r33752 = x;
double r33753 = 2.0;
double r33754 = pow(r33752, r33753);
double r33755 = r33751 * r33754;
double r33756 = r33744 / r33755;
double r33757 = r33748 * r33754;
double r33758 = r33744 / r33757;
double r33759 = r33756 - r33758;
double r33760 = r33747 * r33759;
double r33761 = r33760 - r33749;
double r33762 = r33748 * r33752;
double r33763 = r33744 / r33762;
double r33764 = r33747 * r33763;
double r33765 = r33761 - r33764;
double r33766 = r33749 / r33765;
double r33767 = 5.412378818721003e+86;
bool r33768 = r33744 <= r33767;
double r33769 = 4.0;
double r33770 = pow(r33744, r33753);
double r33771 = r33770 / r33752;
double r33772 = r33769 * r33771;
double r33773 = l;
double r33774 = fabs(r33773);
double r33775 = r33774 / r33752;
double r33776 = r33774 * r33775;
double r33777 = r33770 + r33776;
double r33778 = sqrt(r33777);
double r33779 = r33778 * r33778;
double r33780 = r33747 * r33779;
double r33781 = r33772 + r33780;
double r33782 = sqrt(r33781);
double r33783 = r33749 / r33782;
double r33784 = r33758 + r33763;
double r33785 = r33747 * r33784;
double r33786 = r33747 * r33756;
double r33787 = r33749 - r33786;
double r33788 = r33785 + r33787;
double r33789 = r33749 / r33788;
double r33790 = r33768 ? r33783 : r33789;
double r33791 = r33746 ? r33766 : r33790;
return r33791;
}



Bits error versus x



Bits error versus l



Bits error versus t
Results
if t < -1.3548877250587483e+150Initial program 61.2
Taylor expanded around -inf 2.0
Simplified2.0
if -1.3548877250587483e+150 < t < 5.412378818721003e+86Initial program 36.5
Taylor expanded around inf 17.7
Simplified17.7
rmApplied *-un-lft-identity17.7
Applied add-sqr-sqrt17.7
Applied times-frac17.7
Simplified17.7
Simplified13.6
rmApplied add-sqr-sqrt13.7
if 5.412378818721003e+86 < t Initial program 49.2
Taylor expanded around inf 3.5
Simplified3.5
Final simplification9.6
herbie shell --seed 2020036
(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)))))