\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) - 1\right)}\begin{array}{l}
\mathbf{if}\;\ell \le -1.2094829756305392 \cdot 10^{-97}:\\
\;\;\;\;2 \cdot \frac{{\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)}}\right)}^{1} \cdot \left({\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)} \cdot {t}^{1}}\right)}^{1} \cdot \left(\cos k \cdot {\ell}^{2}\right)\right)}{{\left(\sin k\right)}^{2}}\\
\mathbf{elif}\;\ell \le 1.53396116894158868 \cdot 10^{-171}:\\
\;\;\;\;2 \cdot \left({\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)} \cdot \left({k}^{\left(\frac{2}{2}\right)} \cdot {t}^{1}\right)}\right)}^{1} \cdot \frac{\frac{\cos k}{\frac{\frac{{\left(\sqrt[3]{\sin k}\right)}^{4}}{\ell}}{\ell}}}{{\left(\sqrt[3]{\sin k}\right)}^{2}}\right)\\
\mathbf{else}:\\
\;\;\;\;2 \cdot \left({\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)}}\right)}^{1} \cdot \left(\frac{{\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)} \cdot {t}^{1}}\right)}^{1} \cdot \cos k}{\sin k} \cdot \frac{{\ell}^{2}}{{\left(\sin k\right)}^{\left(\frac{2}{2}\right)}}\right)\right)\\
\end{array}double f(double t, double l, double k) {
double r91267 = 2.0;
double r91268 = t;
double r91269 = 3.0;
double r91270 = pow(r91268, r91269);
double r91271 = l;
double r91272 = r91271 * r91271;
double r91273 = r91270 / r91272;
double r91274 = k;
double r91275 = sin(r91274);
double r91276 = r91273 * r91275;
double r91277 = tan(r91274);
double r91278 = r91276 * r91277;
double r91279 = 1.0;
double r91280 = r91274 / r91268;
double r91281 = pow(r91280, r91267);
double r91282 = r91279 + r91281;
double r91283 = r91282 - r91279;
double r91284 = r91278 * r91283;
double r91285 = r91267 / r91284;
return r91285;
}
double f(double t, double l, double k) {
double r91286 = l;
double r91287 = -1.2094829756305392e-97;
bool r91288 = r91286 <= r91287;
double r91289 = 2.0;
double r91290 = 1.0;
double r91291 = k;
double r91292 = 2.0;
double r91293 = r91289 / r91292;
double r91294 = pow(r91291, r91293);
double r91295 = r91290 / r91294;
double r91296 = 1.0;
double r91297 = pow(r91295, r91296);
double r91298 = t;
double r91299 = pow(r91298, r91296);
double r91300 = r91294 * r91299;
double r91301 = r91290 / r91300;
double r91302 = pow(r91301, r91296);
double r91303 = cos(r91291);
double r91304 = pow(r91286, r91292);
double r91305 = r91303 * r91304;
double r91306 = r91302 * r91305;
double r91307 = r91297 * r91306;
double r91308 = sin(r91291);
double r91309 = pow(r91308, r91292);
double r91310 = r91307 / r91309;
double r91311 = r91289 * r91310;
double r91312 = 1.5339611689415887e-171;
bool r91313 = r91286 <= r91312;
double r91314 = r91294 * r91300;
double r91315 = r91290 / r91314;
double r91316 = pow(r91315, r91296);
double r91317 = cbrt(r91308);
double r91318 = 4.0;
double r91319 = pow(r91317, r91318);
double r91320 = r91319 / r91286;
double r91321 = r91320 / r91286;
double r91322 = r91303 / r91321;
double r91323 = pow(r91317, r91292);
double r91324 = r91322 / r91323;
double r91325 = r91316 * r91324;
double r91326 = r91289 * r91325;
double r91327 = r91302 * r91303;
double r91328 = r91327 / r91308;
double r91329 = r91292 / r91292;
double r91330 = pow(r91308, r91329);
double r91331 = r91304 / r91330;
double r91332 = r91328 * r91331;
double r91333 = r91297 * r91332;
double r91334 = r91289 * r91333;
double r91335 = r91313 ? r91326 : r91334;
double r91336 = r91288 ? r91311 : r91335;
return r91336;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if l < -1.2094829756305392e-97Initial program 50.2
Simplified43.4
Taylor expanded around inf 28.0
rmApplied sqr-pow28.0
Applied associate-*l*23.8
rmApplied *-un-lft-identity23.8
Applied times-frac23.6
Applied unpow-prod-down23.6
Applied associate-*l*21.0
rmApplied associate-*r/20.7
Applied associate-*r/20.7
if -1.2094829756305392e-97 < l < 1.5339611689415887e-171Initial program 44.7
Simplified35.7
Taylor expanded around inf 16.4
rmApplied sqr-pow16.4
Applied associate-*l*16.3
rmApplied add-cube-cbrt16.4
Applied unpow-prod-down16.4
Applied associate-/r*16.0
Simplified11.5
if 1.5339611689415887e-171 < l Initial program 49.3
Simplified42.0
Taylor expanded around inf 22.6
rmApplied sqr-pow22.6
Applied associate-*l*19.7
rmApplied *-un-lft-identity19.7
Applied times-frac19.5
Applied unpow-prod-down19.5
Applied associate-*l*17.2
rmApplied sqr-pow17.2
Applied times-frac16.7
Applied associate-*r*16.9
Simplified16.8
Final simplification15.9
herbie shell --seed 2020060
(FPCore (t l k)
:name "Toniolo and Linder, Equation (10-)"
:precision binary64
(/ 2 (* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (- (+ 1 (pow (/ k t) 2)) 1))))