\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{\ell}{\tan k} \cdot \left(2 \cdot \left({\left(\frac{1}{{t}^{1} \cdot {k}^{\left(\frac{2}{2}\right)}}\right)}^{1} \cdot \left({\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)}}\right)}^{1} \cdot \frac{\ell}{\sin k}\right)\right)\right)double f(double t, double l, double k) {
double r10421928 = 2.0;
double r10421929 = t;
double r10421930 = 3.0;
double r10421931 = pow(r10421929, r10421930);
double r10421932 = l;
double r10421933 = r10421932 * r10421932;
double r10421934 = r10421931 / r10421933;
double r10421935 = k;
double r10421936 = sin(r10421935);
double r10421937 = r10421934 * r10421936;
double r10421938 = tan(r10421935);
double r10421939 = r10421937 * r10421938;
double r10421940 = 1.0;
double r10421941 = r10421935 / r10421929;
double r10421942 = pow(r10421941, r10421928);
double r10421943 = r10421940 + r10421942;
double r10421944 = r10421943 - r10421940;
double r10421945 = r10421939 * r10421944;
double r10421946 = r10421928 / r10421945;
return r10421946;
}
double f(double t, double l, double k) {
double r10421947 = l;
double r10421948 = k;
double r10421949 = tan(r10421948);
double r10421950 = r10421947 / r10421949;
double r10421951 = 2.0;
double r10421952 = 1.0;
double r10421953 = t;
double r10421954 = 1.0;
double r10421955 = pow(r10421953, r10421954);
double r10421956 = 2.0;
double r10421957 = r10421951 / r10421956;
double r10421958 = pow(r10421948, r10421957);
double r10421959 = r10421955 * r10421958;
double r10421960 = r10421952 / r10421959;
double r10421961 = pow(r10421960, r10421954);
double r10421962 = r10421952 / r10421958;
double r10421963 = pow(r10421962, r10421954);
double r10421964 = sin(r10421948);
double r10421965 = r10421947 / r10421964;
double r10421966 = r10421963 * r10421965;
double r10421967 = r10421961 * r10421966;
double r10421968 = r10421951 * r10421967;
double r10421969 = r10421950 * r10421968;
return r10421969;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
Initial program 47.9
Simplified37.1
Taylor expanded around inf 15.7
rmApplied sqr-pow15.7
Applied associate-*r*11.0
rmApplied *-un-lft-identity11.0
Applied times-frac10.7
Applied unpow-prod-down10.7
Applied associate-*l*5.5
Final simplification5.5
herbie shell --seed 2019172 +o rules:numerics
(FPCore (t l k)
:name "Toniolo and Linder, Equation (10-)"
(/ 2.0 (* (* (* (/ (pow t 3.0) (* l l)) (sin k)) (tan k)) (- (+ 1.0 (pow (/ k t) 2.0)) 1.0))))