Average Error: 8.5 → 0.7
Time: 44.3s
Precision: 64
\[\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\]
\[\pi \cdot \ell - \left(\frac{1}{F} \cdot \tan \left(\pi \cdot \ell\right)\right) \cdot \frac{1}{F}\]
\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)
\pi \cdot \ell - \left(\frac{1}{F} \cdot \tan \left(\pi \cdot \ell\right)\right) \cdot \frac{1}{F}
double f(double F, double l) {
        double r740838 = atan2(1.0, 0.0);
        double r740839 = l;
        double r740840 = r740838 * r740839;
        double r740841 = 1.0;
        double r740842 = F;
        double r740843 = r740842 * r740842;
        double r740844 = r740841 / r740843;
        double r740845 = tan(r740840);
        double r740846 = r740844 * r740845;
        double r740847 = r740840 - r740846;
        return r740847;
}

double f(double F, double l) {
        double r740848 = atan2(1.0, 0.0);
        double r740849 = l;
        double r740850 = r740848 * r740849;
        double r740851 = 1.0;
        double r740852 = F;
        double r740853 = r740851 / r740852;
        double r740854 = tan(r740850);
        double r740855 = r740853 * r740854;
        double r740856 = r740855 * r740853;
        double r740857 = r740850 - r740856;
        return r740857;
}

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 8.5

    \[\pi \cdot \ell - \frac{1}{F \cdot F} \cdot \tan \left(\pi \cdot \ell\right)\]
  2. Simplified8.0

    \[\leadsto \color{blue}{\pi \cdot \ell - \frac{\tan \left(\pi \cdot \ell\right)}{F \cdot F}}\]
  3. Using strategy rm
  4. Applied *-un-lft-identity8.0

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

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

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

    \[\leadsto \pi \cdot \ell - \color{blue}{\left(\frac{1}{F} \cdot \tan \left(\pi \cdot \ell\right)\right) \cdot \frac{1}{F}}\]
  9. Final simplification0.7

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

Reproduce

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