\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\mathsf{fma}\left(\frac{1}{F} \cdot \tan \left(\left(\sqrt{\sqrt{\pi}} \cdot \left(\ell \cdot \left(\sqrt{\sqrt{\pi}} \cdot \sqrt{\sqrt{\pi}}\right)\right)\right) \cdot \sqrt{\sqrt{\pi}}\right), -\frac{1}{F}, \ell \cdot \pi\right)double f(double F, double l) {
double r22316 = atan2(1.0, 0.0);
double r22317 = l;
double r22318 = r22316 * r22317;
double r22319 = 1.0;
double r22320 = F;
double r22321 = r22320 * r22320;
double r22322 = r22319 / r22321;
double r22323 = tan(r22318);
double r22324 = r22322 * r22323;
double r22325 = r22318 - r22324;
return r22325;
}
double f(double F, double l) {
double r22326 = 1.0;
double r22327 = F;
double r22328 = r22326 / r22327;
double r22329 = atan2(1.0, 0.0);
double r22330 = sqrt(r22329);
double r22331 = sqrt(r22330);
double r22332 = l;
double r22333 = r22331 * r22331;
double r22334 = r22332 * r22333;
double r22335 = r22331 * r22334;
double r22336 = r22335 * r22331;
double r22337 = tan(r22336);
double r22338 = r22328 * r22337;
double r22339 = 1.0;
double r22340 = r22339 / r22327;
double r22341 = -r22340;
double r22342 = r22332 * r22329;
double r22343 = fma(r22338, r22341, r22342);
return r22343;
}



Bits error versus F



Bits error versus l
Initial program 16.7
Simplified12.4
rmApplied div-inv12.4
rmApplied add-sqr-sqrt12.5
Applied associate-*l*12.5
rmApplied add-sqr-sqrt12.5
Applied sqrt-prod12.4
Applied associate-*l*12.4
Simplified12.4
rmApplied add-sqr-sqrt12.4
Applied sqrt-prod12.4
Final simplification12.4
herbie shell --seed 2019179 +o rules:numerics
(FPCore (F l)
:name "VandenBroeck and Keller, Equation (6)"
(- (* PI l) (* (/ 1.0 (* F F)) (tan (* PI l)))))