\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{\frac{\sqrt{1}}{{\left(\sqrt[3]{t}\right)}^{3}} \cdot \frac{\frac{2}{{\left(\sqrt[3]{t}\right)}^{3} \cdot \sin k} \cdot \ell}{{\left(\sqrt[3]{t}\right)}^{3}}}{\tan k} \cdot \frac{\ell}{\mathsf{fma}\left(2, 1, {\left(\frac{k}{t}\right)}^{2}\right)}double f(double t, double l, double k) {
double r123484 = 2.0;
double r123485 = t;
double r123486 = 3.0;
double r123487 = pow(r123485, r123486);
double r123488 = l;
double r123489 = r123488 * r123488;
double r123490 = r123487 / r123489;
double r123491 = k;
double r123492 = sin(r123491);
double r123493 = r123490 * r123492;
double r123494 = tan(r123491);
double r123495 = r123493 * r123494;
double r123496 = 1.0;
double r123497 = r123491 / r123485;
double r123498 = pow(r123497, r123484);
double r123499 = r123496 + r123498;
double r123500 = r123499 + r123496;
double r123501 = r123495 * r123500;
double r123502 = r123484 / r123501;
return r123502;
}
double f(double t, double l, double k) {
double r123503 = 1.0;
double r123504 = sqrt(r123503);
double r123505 = t;
double r123506 = cbrt(r123505);
double r123507 = 3.0;
double r123508 = pow(r123506, r123507);
double r123509 = r123504 / r123508;
double r123510 = 2.0;
double r123511 = k;
double r123512 = sin(r123511);
double r123513 = r123508 * r123512;
double r123514 = r123510 / r123513;
double r123515 = l;
double r123516 = r123514 * r123515;
double r123517 = r123516 / r123508;
double r123518 = r123509 * r123517;
double r123519 = tan(r123511);
double r123520 = r123518 / r123519;
double r123521 = 2.0;
double r123522 = 1.0;
double r123523 = r123511 / r123505;
double r123524 = pow(r123523, r123510);
double r123525 = fma(r123521, r123522, r123524);
double r123526 = r123515 / r123525;
double r123527 = r123520 * r123526;
return r123527;
}



Bits error versus t



Bits error versus l



Bits error versus k
Initial program 32.0
Simplified32.3
rmApplied *-un-lft-identity32.3
Applied times-frac31.3
Applied associate-*r*28.8
Simplified27.5
rmApplied add-cube-cbrt27.7
Applied unpow-prod-down27.8
Applied associate-*l*26.7
rmApplied *-un-lft-identity26.7
Applied times-frac26.6
Applied associate-*l*23.9
rmApplied unpow-prod-down23.9
Applied add-sqr-sqrt23.9
Applied times-frac23.7
Applied associate-*l*21.7
Simplified21.7
Final simplification21.7
herbie shell --seed 2020027 +o rules:numerics
(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))))