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



Bits error versus F



Bits error versus l
Results
Initial program 16.9
Simplified16.6
rmApplied *-un-lft-identity_binary6416.6
Applied times-frac_binary6412.5
rmApplied add-sqr-sqrt_binary6412.7
Applied associate-*l*_binary6412.7
Simplified12.7
rmApplied add-sqr-sqrt_binary6412.6
Applied associate-*l*_binary6412.6
Simplified12.7
rmApplied add-sqr-sqrt_binary6412.5
Final simplification12.5
herbie shell --seed 2020233
(FPCore (F l)
:name "VandenBroeck and Keller, Equation (6)"
:precision binary64
(- (* PI l) (* (/ 1.0 (* F F)) (tan (* PI l)))))