\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)}\frac{2}{\frac{\mathsf{fma}\left(2, \frac{\frac{\sin k \cdot t}{\frac{\ell}{\sin k \cdot t}}}{\cos k}, \frac{\sin k \cdot k}{\ell} \cdot \frac{\sin k \cdot k}{\cos k}\right)}{\frac{\ell}{t}}}double f(double t, double l, double k) {
double r2841506 = 2.0;
double r2841507 = t;
double r2841508 = 3.0;
double r2841509 = pow(r2841507, r2841508);
double r2841510 = l;
double r2841511 = r2841510 * r2841510;
double r2841512 = r2841509 / r2841511;
double r2841513 = k;
double r2841514 = sin(r2841513);
double r2841515 = r2841512 * r2841514;
double r2841516 = tan(r2841513);
double r2841517 = r2841515 * r2841516;
double r2841518 = 1.0;
double r2841519 = r2841513 / r2841507;
double r2841520 = pow(r2841519, r2841506);
double r2841521 = r2841518 + r2841520;
double r2841522 = r2841521 + r2841518;
double r2841523 = r2841517 * r2841522;
double r2841524 = r2841506 / r2841523;
return r2841524;
}
double f(double t, double l, double k) {
double r2841525 = 2.0;
double r2841526 = k;
double r2841527 = sin(r2841526);
double r2841528 = t;
double r2841529 = r2841527 * r2841528;
double r2841530 = l;
double r2841531 = r2841530 / r2841529;
double r2841532 = r2841529 / r2841531;
double r2841533 = cos(r2841526);
double r2841534 = r2841532 / r2841533;
double r2841535 = r2841527 * r2841526;
double r2841536 = r2841535 / r2841530;
double r2841537 = r2841535 / r2841533;
double r2841538 = r2841536 * r2841537;
double r2841539 = fma(r2841525, r2841534, r2841538);
double r2841540 = r2841530 / r2841528;
double r2841541 = r2841539 / r2841540;
double r2841542 = r2841525 / r2841541;
return r2841542;
}



Bits error versus t



Bits error versus l



Bits error versus k
Initial program 31.4
Simplified17.4
rmApplied associate-*l/16.5
Applied associate-*l/14.9
Applied associate-*l/13.6
Taylor expanded around inf 20.7
Simplified13.1
rmApplied associate-/l*10.1
rmApplied times-frac7.0
Final simplification7.0
herbie shell --seed 2019158 +o rules:numerics
(FPCore (t l k)
:name "Toniolo and Linder, Equation (10+)"
(/ 2 (* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1))))