\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\pi \cdot \ell - \frac{1}{F} \cdot \left(\left(\sqrt[3]{\frac{1}{F}} \cdot \sqrt[3]{\frac{1}{F}}\right) \cdot \left(\sqrt[3]{\frac{1}{F}} \cdot \tan \left(\pi \cdot \ell\right)\right)\right)double code(double F, double l) {
return ((((double) M_PI) * l) - ((1.0 / (F * F)) * tan((((double) M_PI) * l))));
}
double code(double F, double l) {
return ((((double) M_PI) * l) - ((1.0 / F) * ((cbrt((1.0 / F)) * cbrt((1.0 / F))) * (cbrt((1.0 / F)) * tan((((double) M_PI) * l))))));
}



Bits error versus F



Bits error versus l
Results
Initial program 16.7
rmApplied *-un-lft-identity16.7
Applied times-frac16.8
Applied associate-*l*12.6
rmApplied add-cube-cbrt12.8
Applied associate-*l*12.8
Final simplification12.8
herbie shell --seed 2020106 +o rules:numerics
(FPCore (F l)
:name "VandenBroeck and Keller, Equation (6)"
:precision binary64
(- (* PI l) (* (/ 1 (* F F)) (tan (* PI l)))))