\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[3]{2} \cdot \sqrt[3]{2}}{\frac{t}{\ell} \cdot \left(\left(\frac{t}{\ell} \cdot \sin k\right) \cdot \sqrt[3]{2 + \frac{k}{t} \cdot \frac{k}{t}}\right)}}{\sqrt[3]{2 + \frac{k}{t} \cdot \frac{k}{t}}} \cdot \frac{\frac{\frac{\sqrt[3]{2}}{\tan k}}{t}}{\sqrt[3]{2 + \frac{k}{t} \cdot \frac{k}{t}}}double f(double t, double l, double k) {
double r1887876 = 2.0;
double r1887877 = t;
double r1887878 = 3.0;
double r1887879 = pow(r1887877, r1887878);
double r1887880 = l;
double r1887881 = r1887880 * r1887880;
double r1887882 = r1887879 / r1887881;
double r1887883 = k;
double r1887884 = sin(r1887883);
double r1887885 = r1887882 * r1887884;
double r1887886 = tan(r1887883);
double r1887887 = r1887885 * r1887886;
double r1887888 = 1.0;
double r1887889 = r1887883 / r1887877;
double r1887890 = pow(r1887889, r1887876);
double r1887891 = r1887888 + r1887890;
double r1887892 = r1887891 + r1887888;
double r1887893 = r1887887 * r1887892;
double r1887894 = r1887876 / r1887893;
return r1887894;
}
double f(double t, double l, double k) {
double r1887895 = 2.0;
double r1887896 = cbrt(r1887895);
double r1887897 = r1887896 * r1887896;
double r1887898 = t;
double r1887899 = l;
double r1887900 = r1887898 / r1887899;
double r1887901 = k;
double r1887902 = sin(r1887901);
double r1887903 = r1887900 * r1887902;
double r1887904 = r1887901 / r1887898;
double r1887905 = r1887904 * r1887904;
double r1887906 = r1887895 + r1887905;
double r1887907 = cbrt(r1887906);
double r1887908 = r1887903 * r1887907;
double r1887909 = r1887900 * r1887908;
double r1887910 = r1887897 / r1887909;
double r1887911 = r1887910 / r1887907;
double r1887912 = tan(r1887901);
double r1887913 = r1887896 / r1887912;
double r1887914 = r1887913 / r1887898;
double r1887915 = r1887914 / r1887907;
double r1887916 = r1887911 * r1887915;
return r1887916;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
Initial program 32.7
Simplified21.4
rmApplied associate-*r*19.7
rmApplied add-cube-cbrt19.9
Applied *-un-lft-identity19.9
Applied add-cube-cbrt19.8
Applied times-frac19.8
Applied times-frac19.5
Applied times-frac17.5
Simplified14.6
rmApplied div-inv14.6
Applied associate-/l*14.6
Simplified13.7
Final simplification13.7
herbie shell --seed 2019156
(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))))