\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 -9.435587917213378 \cdot 10^{+151}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\mathsf{fma}\left(\left(\frac{\frac{2}{x}}{x}\right), \left(\frac{t}{2 \cdot \sqrt{2}}\right), \left(-\mathsf{fma}\left(t, \left(\sqrt{2}\right), \left(\left(\frac{2}{x} + \frac{\frac{2}{x}}{x}\right) \cdot \frac{t}{\sqrt{2}}\right)\right)\right)\right)}\\
\mathbf{elif}\;t \le -1.005285414360318 \cdot 10^{-170}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{\mathsf{fma}\left(\left(\mathsf{fma}\left(\left(\frac{\ell}{x}\right), \ell, \left(t \cdot t\right)\right)\right), 2, \left(\frac{4 \cdot \left(t \cdot t\right)}{x}\right)\right)}}\\
\mathbf{elif}\;t \le -6.44290403858912 \cdot 10^{-244}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\mathsf{fma}\left(\left(\frac{\frac{2}{x}}{x}\right), \left(\frac{t}{2 \cdot \sqrt{2}}\right), \left(-\mathsf{fma}\left(t, \left(\sqrt{2}\right), \left(\left(\frac{2}{x} + \frac{\frac{2}{x}}{x}\right) \cdot \frac{t}{\sqrt{2}}\right)\right)\right)\right)}\\
\mathbf{elif}\;t \le 2.4172863809131093 \cdot 10^{-253}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\sqrt{\sqrt[3]{\mathsf{fma}\left(\left(\mathsf{fma}\left(\left(\frac{\ell}{x}\right), \ell, \left(t \cdot t\right)\right)\right), 2, \left(\frac{4 \cdot \left(t \cdot t\right)}{x}\right)\right)}} \cdot \left(\sqrt{\sqrt[3]{\mathsf{fma}\left(\left(\mathsf{fma}\left(\left(\frac{\ell}{x}\right), \ell, \left(t \cdot t\right)\right)\right), 2, \left(\frac{4 \cdot \left(t \cdot t\right)}{x}\right)\right)}} \cdot \sqrt{\sqrt[3]{\mathsf{fma}\left(\left(\mathsf{fma}\left(\left(\frac{\ell}{x}\right), \ell, \left(t \cdot t\right)\right)\right), 2, \left(\frac{4 \cdot \left(t \cdot t\right)}{x}\right)\right)}}\right)}\\
\mathbf{elif}\;t \le 4.8627817124149365 \cdot 10^{-179}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\mathsf{fma}\left(\left(\sqrt{2}\right), t, \left(\left(\frac{2}{x} + \frac{\frac{2}{x}}{x}\right) \cdot \frac{t}{\sqrt{2}}\right)\right) - \frac{\frac{t}{\sqrt{2}}}{x \cdot x}}\\
\mathbf{elif}\;t \le 1.3946535951538313 \cdot 10^{+95}:\\
\;\;\;\;\frac{\left(t \cdot \sqrt{\sqrt{2}}\right) \cdot \sqrt{\sqrt{2}}}{\sqrt{\mathsf{fma}\left(\left(\mathsf{fma}\left(\left(\frac{\ell}{x}\right), \ell, \left(t \cdot t\right)\right)\right), 2, \left(\frac{4 \cdot \left(t \cdot t\right)}{x}\right)\right)}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\sqrt{2} \cdot t}{\mathsf{fma}\left(\left(\sqrt{2}\right), t, \left(\left(\frac{2}{x} + \frac{\frac{2}{x}}{x}\right) \cdot \frac{t}{\sqrt{2}}\right)\right) - \frac{\frac{t}{\sqrt{2}}}{x \cdot x}}\\
\end{array}double f(double x, double l, double t) {
double r1938475 = 2.0;
double r1938476 = sqrt(r1938475);
double r1938477 = t;
double r1938478 = r1938476 * r1938477;
double r1938479 = x;
double r1938480 = 1.0;
double r1938481 = r1938479 + r1938480;
double r1938482 = r1938479 - r1938480;
double r1938483 = r1938481 / r1938482;
double r1938484 = l;
double r1938485 = r1938484 * r1938484;
double r1938486 = r1938477 * r1938477;
double r1938487 = r1938475 * r1938486;
double r1938488 = r1938485 + r1938487;
double r1938489 = r1938483 * r1938488;
double r1938490 = r1938489 - r1938485;
double r1938491 = sqrt(r1938490);
double r1938492 = r1938478 / r1938491;
return r1938492;
}
double f(double x, double l, double t) {
double r1938493 = t;
double r1938494 = -9.435587917213378e+151;
bool r1938495 = r1938493 <= r1938494;
double r1938496 = 2.0;
double r1938497 = sqrt(r1938496);
double r1938498 = r1938497 * r1938493;
double r1938499 = x;
double r1938500 = r1938496 / r1938499;
double r1938501 = r1938500 / r1938499;
double r1938502 = r1938496 * r1938497;
double r1938503 = r1938493 / r1938502;
double r1938504 = r1938500 + r1938501;
double r1938505 = r1938493 / r1938497;
double r1938506 = r1938504 * r1938505;
double r1938507 = fma(r1938493, r1938497, r1938506);
double r1938508 = -r1938507;
double r1938509 = fma(r1938501, r1938503, r1938508);
double r1938510 = r1938498 / r1938509;
double r1938511 = -1.005285414360318e-170;
bool r1938512 = r1938493 <= r1938511;
double r1938513 = l;
double r1938514 = r1938513 / r1938499;
double r1938515 = r1938493 * r1938493;
double r1938516 = fma(r1938514, r1938513, r1938515);
double r1938517 = 4.0;
double r1938518 = r1938517 * r1938515;
double r1938519 = r1938518 / r1938499;
double r1938520 = fma(r1938516, r1938496, r1938519);
double r1938521 = sqrt(r1938520);
double r1938522 = r1938498 / r1938521;
double r1938523 = -6.44290403858912e-244;
bool r1938524 = r1938493 <= r1938523;
double r1938525 = 2.4172863809131093e-253;
bool r1938526 = r1938493 <= r1938525;
double r1938527 = cbrt(r1938520);
double r1938528 = sqrt(r1938527);
double r1938529 = r1938528 * r1938528;
double r1938530 = r1938528 * r1938529;
double r1938531 = r1938498 / r1938530;
double r1938532 = 4.8627817124149365e-179;
bool r1938533 = r1938493 <= r1938532;
double r1938534 = fma(r1938497, r1938493, r1938506);
double r1938535 = r1938499 * r1938499;
double r1938536 = r1938505 / r1938535;
double r1938537 = r1938534 - r1938536;
double r1938538 = r1938498 / r1938537;
double r1938539 = 1.3946535951538313e+95;
bool r1938540 = r1938493 <= r1938539;
double r1938541 = sqrt(r1938497);
double r1938542 = r1938493 * r1938541;
double r1938543 = r1938542 * r1938541;
double r1938544 = r1938543 / r1938521;
double r1938545 = r1938540 ? r1938544 : r1938538;
double r1938546 = r1938533 ? r1938538 : r1938545;
double r1938547 = r1938526 ? r1938531 : r1938546;
double r1938548 = r1938524 ? r1938510 : r1938547;
double r1938549 = r1938512 ? r1938522 : r1938548;
double r1938550 = r1938495 ? r1938510 : r1938549;
return r1938550;
}



Bits error versus x



Bits error versus l



Bits error versus t
if t < -9.435587917213378e+151 or -1.005285414360318e-170 < t < -6.44290403858912e-244Initial program 61.7
Taylor expanded around -inf 9.8
Simplified9.8
if -9.435587917213378e+151 < t < -1.005285414360318e-170Initial program 24.8
Taylor expanded around inf 11.2
Simplified5.6
if -6.44290403858912e-244 < t < 2.4172863809131093e-253Initial program 61.5
Taylor expanded around inf 28.9
Simplified28.9
rmApplied add-cube-cbrt29.1
Applied sqrt-prod29.1
rmApplied sqrt-prod29.1
if 2.4172863809131093e-253 < t < 4.8627817124149365e-179 or 1.3946535951538313e+95 < t Initial program 51.5
Taylor expanded around inf 8.8
Simplified8.8
if 4.8627817124149365e-179 < t < 1.3946535951538313e+95Initial program 27.2
Taylor expanded around inf 11.1
Simplified6.6
rmApplied add-sqr-sqrt6.6
Applied sqrt-prod6.8
Applied associate-*l*6.7
Final simplification9.1
herbie shell --seed 2019124 +o rules:numerics
(FPCore (x l t)
:name "Toniolo and Linder, Equation (7)"
(/ (* (sqrt 2) t) (sqrt (- (* (/ (+ x 1) (- x 1)) (+ (* l l) (* 2 (* t t)))) (* l l)))))