\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\pi \cdot \ell - \frac{\frac{\sin \left(\pi \cdot \ell\right)}{F \cdot \cos \left(\pi \cdot \ell\right)}}{F}(FPCore (F l) :precision binary64 (- (* PI l) (* (/ 1.0 (* F F)) (tan (* PI l)))))
(FPCore (F l) :precision binary64 (- (* PI l) (/ (/ (sin (* PI l)) (* F (cos (* PI l)))) F)))
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) - ((sin(((double) M_PI) * l) / (F * cos(((double) M_PI) * l))) / F);
}



Bits error versus F



Bits error versus l
Results
Initial program 16.8
Simplified16.6
rmApplied clear-num_binary6416.6
Simplified12.4
rmApplied *-un-lft-identity_binary6412.4
Applied *-un-lft-identity_binary6412.4
Applied times-frac_binary6412.4
Applied *-un-lft-identity_binary6412.4
Applied times-frac_binary6412.4
Applied add-sqr-sqrt_binary6412.4
Applied times-frac_binary6412.4
Simplified12.4
Simplified12.4
rmApplied tan-quot_binary6412.4
Applied associate-/l/_binary6412.4
Final simplification12.4
herbie shell --seed 2021106
(FPCore (F l)
:name "VandenBroeck and Keller, Equation (6)"
:precision binary64
(- (* PI l) (* (/ 1.0 (* F F)) (tan (* PI l)))))