\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.24957076525167663 \cdot 10^{-4}:\\
\;\;\;\;\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.511170609100405 \cdot 10^{-151}:\\
\;\;\;\;\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{elif}\;t \le -1.21751320251488658 \cdot 10^{-295}:\\
\;\;\;\;\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 1.9763068281072403 \cdot 10^{-264}:\\
\;\;\;\;\frac{\sqrt{\sqrt{2}} \cdot \left(\sqrt{\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{elif}\;t \le 3.5772972405045893 \cdot 10^{-160}:\\
\;\;\;\;\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)}\\
\mathbf{elif}\;t \le 2.21967468993741656 \cdot 10^{57}:\\
\;\;\;\;\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 r39386 = 2.0;
double r39387 = sqrt(r39386);
double r39388 = t;
double r39389 = r39387 * r39388;
double r39390 = x;
double r39391 = 1.0;
double r39392 = r39390 + r39391;
double r39393 = r39390 - r39391;
double r39394 = r39392 / r39393;
double r39395 = l;
double r39396 = r39395 * r39395;
double r39397 = r39388 * r39388;
double r39398 = r39386 * r39397;
double r39399 = r39396 + r39398;
double r39400 = r39394 * r39399;
double r39401 = r39400 - r39396;
double r39402 = sqrt(r39401);
double r39403 = r39389 / r39402;
return r39403;
}
double f(double x, double l, double t) {
double r39404 = t;
double r39405 = -0.00042495707652516766;
bool r39406 = r39404 <= r39405;
double r39407 = 2.0;
double r39408 = sqrt(r39407);
double r39409 = r39408 * r39404;
double r39410 = 3.0;
double r39411 = pow(r39408, r39410);
double r39412 = x;
double r39413 = 2.0;
double r39414 = pow(r39412, r39413);
double r39415 = r39411 * r39414;
double r39416 = r39404 / r39415;
double r39417 = r39408 * r39414;
double r39418 = r39404 / r39417;
double r39419 = r39408 * r39412;
double r39420 = r39404 / r39419;
double r39421 = r39404 * r39408;
double r39422 = fma(r39407, r39420, r39421);
double r39423 = fma(r39407, r39418, r39422);
double r39424 = -r39423;
double r39425 = fma(r39407, r39416, r39424);
double r39426 = r39409 / r39425;
double r39427 = -5.511170609100405e-151;
bool r39428 = r39404 <= r39427;
double r39429 = cbrt(r39408);
double r39430 = r39429 * r39429;
double r39431 = r39429 * r39404;
double r39432 = r39430 * r39431;
double r39433 = pow(r39404, r39413);
double r39434 = l;
double r39435 = r39434 / r39412;
double r39436 = r39434 * r39435;
double r39437 = 4.0;
double r39438 = r39433 / r39412;
double r39439 = r39437 * r39438;
double r39440 = fma(r39407, r39436, r39439);
double r39441 = fma(r39407, r39433, r39440);
double r39442 = sqrt(r39441);
double r39443 = r39432 / r39442;
double r39444 = -1.2175132025148866e-295;
bool r39445 = r39404 <= r39444;
double r39446 = 1.9763068281072403e-264;
bool r39447 = r39404 <= r39446;
double r39448 = sqrt(r39408);
double r39449 = r39448 * r39404;
double r39450 = r39448 * r39449;
double r39451 = r39450 / r39442;
double r39452 = 3.5772972405045893e-160;
bool r39453 = r39404 <= r39452;
double r39454 = r39407 * r39416;
double r39455 = r39422 - r39454;
double r39456 = fma(r39407, r39418, r39455);
double r39457 = r39409 / r39456;
double r39458 = 2.2196746899374166e+57;
bool r39459 = r39404 <= r39458;
double r39460 = r39459 ? r39443 : r39457;
double r39461 = r39453 ? r39457 : r39460;
double r39462 = r39447 ? r39451 : r39461;
double r39463 = r39445 ? r39426 : r39462;
double r39464 = r39428 ? r39443 : r39463;
double r39465 = r39406 ? r39426 : r39464;
return r39465;
}



Bits error versus x



Bits error versus l



Bits error versus t
if t < -0.00042495707652516766 or -5.511170609100405e-151 < t < -1.2175132025148866e-295Initial program 45.2
Taylor expanded around -inf 12.6
Simplified12.6
if -0.00042495707652516766 < t < -5.511170609100405e-151 or 3.5772972405045893e-160 < t < 2.2196746899374166e+57Initial program 29.6
Taylor expanded around inf 9.0
Simplified9.0
rmApplied *-un-lft-identity9.0
Applied add-sqr-sqrt35.4
Applied unpow-prod-down35.4
Applied times-frac33.5
Simplified33.5
Simplified4.5
rmApplied add-cube-cbrt4.5
Applied associate-*l*4.5
if -1.2175132025148866e-295 < t < 1.9763068281072403e-264Initial program 63.4
Taylor expanded around inf 31.6
Simplified31.6
rmApplied *-un-lft-identity31.6
Applied add-sqr-sqrt44.4
Applied unpow-prod-down44.4
Applied times-frac44.3
Simplified44.2
Simplified31.5
rmApplied add-sqr-sqrt31.5
Applied sqrt-prod31.5
Applied associate-*l*31.5
if 1.9763068281072403e-264 < t < 3.5772972405045893e-160 or 2.2196746899374166e+57 < t Initial program 49.4
Taylor expanded around inf 10.3
Simplified10.3
Final simplification10.3
herbie shell --seed 2020060 +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)))))