\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 -5.0191951041229934 \cdot 10^{143}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\mathsf{fma}\left(2, \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}}, -\mathsf{fma}\left(2, \frac{t}{\sqrt{2} \cdot {x}^{2}}, \mathsf{fma}\left(2, \frac{t}{\sqrt{2} \cdot x}, t \cdot \sqrt{2}\right)\right)\right)}\\
\mathbf{elif}\;t \le 5.7232019252513384 \cdot 10^{81}:\\
\;\;\;\;\frac{\left(\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\sqrt{2}}\right) \cdot \left(\sqrt[3]{\sqrt{2}} \cdot t\right)}{\sqrt{\mathsf{fma}\left(2, {t}^{2}, \mathsf{fma}\left(2, \ell \cdot \frac{\ell}{x}, 4 \cdot \frac{{t}^{2}}{x}\right)\right)}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\mathsf{fma}\left(2, \frac{t}{\sqrt{2} \cdot {x}^{2}}, \mathsf{fma}\left(2, \frac{t}{\sqrt{2} \cdot x}, t \cdot \sqrt{2}\right) - 2 \cdot \frac{t}{{\left(\sqrt{2}\right)}^{3} \cdot {x}^{2}}\right)}\\
\end{array}double f(double x, double l, double t) {
double r38217 = 2.0;
double r38218 = sqrt(r38217);
double r38219 = t;
double r38220 = r38218 * r38219;
double r38221 = x;
double r38222 = 1.0;
double r38223 = r38221 + r38222;
double r38224 = r38221 - r38222;
double r38225 = r38223 / r38224;
double r38226 = l;
double r38227 = r38226 * r38226;
double r38228 = r38219 * r38219;
double r38229 = r38217 * r38228;
double r38230 = r38227 + r38229;
double r38231 = r38225 * r38230;
double r38232 = r38231 - r38227;
double r38233 = sqrt(r38232);
double r38234 = r38220 / r38233;
return r38234;
}
double f(double x, double l, double t) {
double r38235 = t;
double r38236 = -5.019195104122993e+143;
bool r38237 = r38235 <= r38236;
double r38238 = 2.0;
double r38239 = sqrt(r38238);
double r38240 = r38239 * r38235;
double r38241 = 3.0;
double r38242 = pow(r38239, r38241);
double r38243 = x;
double r38244 = 2.0;
double r38245 = pow(r38243, r38244);
double r38246 = r38242 * r38245;
double r38247 = r38235 / r38246;
double r38248 = r38239 * r38245;
double r38249 = r38235 / r38248;
double r38250 = r38239 * r38243;
double r38251 = r38235 / r38250;
double r38252 = r38235 * r38239;
double r38253 = fma(r38238, r38251, r38252);
double r38254 = fma(r38238, r38249, r38253);
double r38255 = -r38254;
double r38256 = fma(r38238, r38247, r38255);
double r38257 = r38240 / r38256;
double r38258 = 5.7232019252513384e+81;
bool r38259 = r38235 <= r38258;
double r38260 = cbrt(r38239);
double r38261 = r38260 * r38260;
double r38262 = r38260 * r38235;
double r38263 = r38261 * r38262;
double r38264 = pow(r38235, r38244);
double r38265 = l;
double r38266 = r38265 / r38243;
double r38267 = r38265 * r38266;
double r38268 = 4.0;
double r38269 = r38264 / r38243;
double r38270 = r38268 * r38269;
double r38271 = fma(r38238, r38267, r38270);
double r38272 = fma(r38238, r38264, r38271);
double r38273 = sqrt(r38272);
double r38274 = r38263 / r38273;
double r38275 = r38238 * r38247;
double r38276 = r38253 - r38275;
double r38277 = fma(r38238, r38249, r38276);
double r38278 = r38240 / r38277;
double r38279 = r38259 ? r38274 : r38278;
double r38280 = r38237 ? r38257 : r38279;
return r38280;
}



Bits error versus x



Bits error versus l



Bits error versus t
if t < -5.019195104122993e+143Initial program 59.4
Taylor expanded around -inf 2.2
Simplified2.2
if -5.019195104122993e+143 < t < 5.7232019252513384e+81Initial program 36.8
Taylor expanded around inf 17.8
Simplified17.8
rmApplied *-un-lft-identity17.8
Applied add-sqr-sqrt40.4
Applied unpow-prod-down40.4
Applied times-frac38.4
Simplified38.4
Simplified13.8
rmApplied add-cube-cbrt13.8
Applied associate-*l*13.8
if 5.7232019252513384e+81 < t Initial program 48.7
Taylor expanded around inf 3.5
Simplified3.5
Final simplification9.6
herbie shell --seed 2020036 +o rules:numerics
(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)))))