\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\pi \cdot \ell - \frac{\frac{1}{\mathsf{fma}\left(\frac{-1}{3}, F \cdot \log \left(e^{\pi \cdot \ell}\right), \frac{F}{\pi \cdot \ell}\right)}}{F}double f(double F, double l) {
double r691398 = atan2(1.0, 0.0);
double r691399 = l;
double r691400 = r691398 * r691399;
double r691401 = 1.0;
double r691402 = F;
double r691403 = r691402 * r691402;
double r691404 = r691401 / r691403;
double r691405 = tan(r691400);
double r691406 = r691404 * r691405;
double r691407 = r691400 - r691406;
return r691407;
}
double f(double F, double l) {
double r691408 = atan2(1.0, 0.0);
double r691409 = l;
double r691410 = r691408 * r691409;
double r691411 = 1.0;
double r691412 = -0.3333333333333333;
double r691413 = F;
double r691414 = exp(r691410);
double r691415 = log(r691414);
double r691416 = r691413 * r691415;
double r691417 = r691413 / r691410;
double r691418 = fma(r691412, r691416, r691417);
double r691419 = r691411 / r691418;
double r691420 = r691419 / r691413;
double r691421 = r691410 - r691420;
return r691421;
}



Bits error versus F



Bits error versus l
Initial program 15.8
Simplified12.1
rmApplied clear-num12.2
Taylor expanded around 0 8.1
Simplified8.1
rmApplied add-log-exp0.7
Final simplification0.7
herbie shell --seed 2019152 +o rules:numerics
(FPCore (F l)
:name "VandenBroeck and Keller, Equation (6)"
(- (* PI l) (* (/ 1 (* F F)) (tan (* PI l)))))