Average Error: 16.5 → 12.6
Time: 9.9s
Precision: 64
\[\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\]
\[\pi \cdot \ell - \frac{1}{F} \cdot \left(\left(\left(\sqrt[3]{\frac{1}{\sqrt[3]{F} \cdot \sqrt[3]{F}}} \cdot \sqrt[3]{\frac{1}{\sqrt[3]{\sqrt[3]{F} \cdot \sqrt[3]{F}} \cdot \sqrt[3]{\sqrt[3]{F}}}}\right) \cdot \sqrt[3]{\frac{1}{F}}\right) \cdot \left(\sqrt[3]{\frac{1}{F}} \cdot \tan \left(\pi \cdot \ell\right)\right)\right)\]
\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)
\pi \cdot \ell - \frac{1}{F} \cdot \left(\left(\left(\sqrt[3]{\frac{1}{\sqrt[3]{F} \cdot \sqrt[3]{F}}} \cdot \sqrt[3]{\frac{1}{\sqrt[3]{\sqrt[3]{F} \cdot \sqrt[3]{F}} \cdot \sqrt[3]{\sqrt[3]{F}}}}\right) \cdot \sqrt[3]{\frac{1}{F}}\right) \cdot \left(\sqrt[3]{\frac{1}{F}} \cdot \tan \left(\pi \cdot \ell\right)\right)\right)
double f(double F, double l) {
        double r21834 = atan2(1.0, 0.0);
        double r21835 = l;
        double r21836 = r21834 * r21835;
        double r21837 = 1.0;
        double r21838 = F;
        double r21839 = r21838 * r21838;
        double r21840 = r21837 / r21839;
        double r21841 = tan(r21836);
        double r21842 = r21840 * r21841;
        double r21843 = r21836 - r21842;
        return r21843;
}

double f(double F, double l) {
        double r21844 = atan2(1.0, 0.0);
        double r21845 = l;
        double r21846 = r21844 * r21845;
        double r21847 = 1.0;
        double r21848 = F;
        double r21849 = r21847 / r21848;
        double r21850 = cbrt(r21848);
        double r21851 = r21850 * r21850;
        double r21852 = r21847 / r21851;
        double r21853 = cbrt(r21852);
        double r21854 = 1.0;
        double r21855 = cbrt(r21851);
        double r21856 = cbrt(r21850);
        double r21857 = r21855 * r21856;
        double r21858 = r21854 / r21857;
        double r21859 = cbrt(r21858);
        double r21860 = r21853 * r21859;
        double r21861 = r21854 / r21848;
        double r21862 = cbrt(r21861);
        double r21863 = r21860 * r21862;
        double r21864 = tan(r21846);
        double r21865 = r21862 * r21864;
        double r21866 = r21863 * r21865;
        double r21867 = r21849 * r21866;
        double r21868 = r21846 - r21867;
        return r21868;
}

Error

Bits error versus F

Bits error versus l

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 16.5

    \[\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\]
  2. Using strategy rm
  3. Applied *-un-lft-identity16.5

    \[\leadsto \pi \cdot \ell - \frac{\color{blue}{1 \cdot 1}}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\]
  4. Applied times-frac16.6

    \[\leadsto \pi \cdot \ell - \color{blue}{\left(\frac{1}{F} \cdot \frac{1}{F}\right)} \cdot \tan \left(\pi \cdot \ell\right)\]
  5. Applied associate-*l*12.5

    \[\leadsto \pi \cdot \ell - \color{blue}{\frac{1}{F} \cdot \left(\frac{1}{F} \cdot \tan \left(\pi \cdot \ell\right)\right)}\]
  6. Using strategy rm
  7. Applied add-cube-cbrt12.6

    \[\leadsto \pi \cdot \ell - \frac{1}{F} \cdot \left(\color{blue}{\left(\left(\sqrt[3]{\frac{1}{F}} \cdot \sqrt[3]{\frac{1}{F}}\right) \cdot \sqrt[3]{\frac{1}{F}}\right)} \cdot \tan \left(\pi \cdot \ell\right)\right)\]
  8. Applied associate-*l*12.6

    \[\leadsto \pi \cdot \ell - \frac{1}{F} \cdot \color{blue}{\left(\left(\sqrt[3]{\frac{1}{F}} \cdot \sqrt[3]{\frac{1}{F}}\right) \cdot \left(\sqrt[3]{\frac{1}{F}} \cdot \tan \left(\pi \cdot \ell\right)\right)\right)}\]
  9. Using strategy rm
  10. Applied add-cube-cbrt12.6

    \[\leadsto \pi \cdot \ell - \frac{1}{F} \cdot \left(\left(\sqrt[3]{\frac{1}{\color{blue}{\left(\sqrt[3]{F} \cdot \sqrt[3]{F}\right) \cdot \sqrt[3]{F}}}} \cdot \sqrt[3]{\frac{1}{F}}\right) \cdot \left(\sqrt[3]{\frac{1}{F}} \cdot \tan \left(\pi \cdot \ell\right)\right)\right)\]
  11. Applied *-un-lft-identity12.6

    \[\leadsto \pi \cdot \ell - \frac{1}{F} \cdot \left(\left(\sqrt[3]{\frac{\color{blue}{1 \cdot 1}}{\left(\sqrt[3]{F} \cdot \sqrt[3]{F}\right) \cdot \sqrt[3]{F}}} \cdot \sqrt[3]{\frac{1}{F}}\right) \cdot \left(\sqrt[3]{\frac{1}{F}} \cdot \tan \left(\pi \cdot \ell\right)\right)\right)\]
  12. Applied times-frac12.6

    \[\leadsto \pi \cdot \ell - \frac{1}{F} \cdot \left(\left(\sqrt[3]{\color{blue}{\frac{1}{\sqrt[3]{F} \cdot \sqrt[3]{F}} \cdot \frac{1}{\sqrt[3]{F}}}} \cdot \sqrt[3]{\frac{1}{F}}\right) \cdot \left(\sqrt[3]{\frac{1}{F}} \cdot \tan \left(\pi \cdot \ell\right)\right)\right)\]
  13. Applied cbrt-prod12.6

    \[\leadsto \pi \cdot \ell - \frac{1}{F} \cdot \left(\left(\color{blue}{\left(\sqrt[3]{\frac{1}{\sqrt[3]{F} \cdot \sqrt[3]{F}}} \cdot \sqrt[3]{\frac{1}{\sqrt[3]{F}}}\right)} \cdot \sqrt[3]{\frac{1}{F}}\right) \cdot \left(\sqrt[3]{\frac{1}{F}} \cdot \tan \left(\pi \cdot \ell\right)\right)\right)\]
  14. Using strategy rm
  15. Applied add-cube-cbrt12.6

    \[\leadsto \pi \cdot \ell - \frac{1}{F} \cdot \left(\left(\left(\sqrt[3]{\frac{1}{\sqrt[3]{F} \cdot \sqrt[3]{F}}} \cdot \sqrt[3]{\frac{1}{\sqrt[3]{\color{blue}{\left(\sqrt[3]{F} \cdot \sqrt[3]{F}\right) \cdot \sqrt[3]{F}}}}}\right) \cdot \sqrt[3]{\frac{1}{F}}\right) \cdot \left(\sqrt[3]{\frac{1}{F}} \cdot \tan \left(\pi \cdot \ell\right)\right)\right)\]
  16. Applied cbrt-prod12.6

    \[\leadsto \pi \cdot \ell - \frac{1}{F} \cdot \left(\left(\left(\sqrt[3]{\frac{1}{\sqrt[3]{F} \cdot \sqrt[3]{F}}} \cdot \sqrt[3]{\frac{1}{\color{blue}{\sqrt[3]{\sqrt[3]{F} \cdot \sqrt[3]{F}} \cdot \sqrt[3]{\sqrt[3]{F}}}}}\right) \cdot \sqrt[3]{\frac{1}{F}}\right) \cdot \left(\sqrt[3]{\frac{1}{F}} \cdot \tan \left(\pi \cdot \ell\right)\right)\right)\]
  17. Final simplification12.6

    \[\leadsto \pi \cdot \ell - \frac{1}{F} \cdot \left(\left(\left(\sqrt[3]{\frac{1}{\sqrt[3]{F} \cdot \sqrt[3]{F}}} \cdot \sqrt[3]{\frac{1}{\sqrt[3]{\sqrt[3]{F} \cdot \sqrt[3]{F}} \cdot \sqrt[3]{\sqrt[3]{F}}}}\right) \cdot \sqrt[3]{\frac{1}{F}}\right) \cdot \left(\sqrt[3]{\frac{1}{F}} \cdot \tan \left(\pi \cdot \ell\right)\right)\right)\]

Reproduce

herbie shell --seed 2020021 +o rules:numerics
(FPCore (F l)
  :name "VandenBroeck and Keller, Equation (6)"
  :precision binary64
  (- (* PI l) (* (/ 1 (* F F)) (tan (* PI l)))))