\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.81453570301648773 \cdot 10^{142}:\\
\;\;\;\;\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 6683.48348240185533:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{4 \cdot \frac{{t}^{2}}{x} + 2 \cdot \left({t}^{2} + \frac{\frac{\left|\ell\right|}{\sqrt[3]{x}}}{\sqrt[3]{x}} \cdot \frac{\left|\ell\right|}{\sqrt[3]{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 r36104 = 2.0;
double r36105 = sqrt(r36104);
double r36106 = t;
double r36107 = r36105 * r36106;
double r36108 = x;
double r36109 = 1.0;
double r36110 = r36108 + r36109;
double r36111 = r36108 - r36109;
double r36112 = r36110 / r36111;
double r36113 = l;
double r36114 = r36113 * r36113;
double r36115 = r36106 * r36106;
double r36116 = r36104 * r36115;
double r36117 = r36114 + r36116;
double r36118 = r36112 * r36117;
double r36119 = r36118 - r36114;
double r36120 = sqrt(r36119);
double r36121 = r36107 / r36120;
return r36121;
}
double f(double x, double l, double t) {
double r36122 = t;
double r36123 = -2.8145357030164877e+142;
bool r36124 = r36122 <= r36123;
double r36125 = 2.0;
double r36126 = sqrt(r36125);
double r36127 = r36126 * r36122;
double r36128 = 3.0;
double r36129 = pow(r36126, r36128);
double r36130 = x;
double r36131 = 2.0;
double r36132 = pow(r36130, r36131);
double r36133 = r36129 * r36132;
double r36134 = r36122 / r36133;
double r36135 = r36126 * r36132;
double r36136 = r36122 / r36135;
double r36137 = r36134 - r36136;
double r36138 = r36125 * r36137;
double r36139 = r36138 - r36127;
double r36140 = r36126 * r36130;
double r36141 = r36122 / r36140;
double r36142 = r36125 * r36141;
double r36143 = r36139 - r36142;
double r36144 = r36127 / r36143;
double r36145 = 6683.483482401855;
bool r36146 = r36122 <= r36145;
double r36147 = 4.0;
double r36148 = pow(r36122, r36131);
double r36149 = r36148 / r36130;
double r36150 = r36147 * r36149;
double r36151 = l;
double r36152 = fabs(r36151);
double r36153 = cbrt(r36130);
double r36154 = r36152 / r36153;
double r36155 = r36154 / r36153;
double r36156 = r36155 * r36154;
double r36157 = r36148 + r36156;
double r36158 = r36125 * r36157;
double r36159 = r36150 + r36158;
double r36160 = sqrt(r36159);
double r36161 = r36127 / r36160;
double r36162 = r36136 + r36141;
double r36163 = r36125 * r36162;
double r36164 = r36125 * r36134;
double r36165 = r36127 - r36164;
double r36166 = r36163 + r36165;
double r36167 = r36127 / r36166;
double r36168 = r36146 ? r36161 : r36167;
double r36169 = r36124 ? r36144 : r36168;
return r36169;
}



Bits error versus x



Bits error versus l



Bits error versus t
Results
if t < -2.8145357030164877e+142Initial program 59.2
Taylor expanded around -inf 2.0
Simplified2.0
if -2.8145357030164877e+142 < t < 6683.483482401855Initial program 39.8
Taylor expanded around inf 18.6
Simplified18.6
rmApplied add-cube-cbrt18.7
Applied add-sqr-sqrt18.7
Applied times-frac18.7
Simplified18.7
Simplified14.6
if 6683.483482401855 < t Initial program 41.5
Taylor expanded around inf 5.2
Simplified5.2
Final simplification9.8
herbie shell --seed 2020064
(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)))))