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








Bits error versus F








Bits error versus l
Results
| Alternative 1 | |
|---|---|
| Error | 12.5 |
| Cost | 7104 |
| Alternative 2 | |
|---|---|
| Error | 17.0 |
| Cost | 832 |
| Alternative 3 | |
|---|---|
| Error | 17.0 |
| Cost | 704 |
| Alternative 4 | |
|---|---|
| Error | 21.1 |
| Cost | 704 |
| Alternative 5 | |
|---|---|
| Error | 61.8 |
| Cost | 64 |

Initial program 16.9
Simplified16.6
rmApplied associate-/r*_binary6412.5
rmApplied clear-num_binary6412.5
Simplified12.5
Final simplification12.5
herbie shell --seed 2021044
(FPCore (F l)
:name "VandenBroeck and Keller, Equation (6)"
:precision binary64
(- (* PI l) (* (/ 1.0 (* F F)) (tan (* PI l)))))