Average Error: 14.1 → 0.2
Time: 19.0s
Precision: 64
\[\left(\frac{\pi}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)\]
\[\frac{\frac{\frac{\pi}{a}}{b} \cdot \frac{1}{2}}{a + b}\]
\left(\frac{\pi}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)
\frac{\frac{\frac{\pi}{a}}{b} \cdot \frac{1}{2}}{a + b}
double f(double a, double b) {
        double r1072959 = atan2(1.0, 0.0);
        double r1072960 = 2.0;
        double r1072961 = r1072959 / r1072960;
        double r1072962 = 1.0;
        double r1072963 = b;
        double r1072964 = r1072963 * r1072963;
        double r1072965 = a;
        double r1072966 = r1072965 * r1072965;
        double r1072967 = r1072964 - r1072966;
        double r1072968 = r1072962 / r1072967;
        double r1072969 = r1072961 * r1072968;
        double r1072970 = r1072962 / r1072965;
        double r1072971 = r1072962 / r1072963;
        double r1072972 = r1072970 - r1072971;
        double r1072973 = r1072969 * r1072972;
        return r1072973;
}

double f(double a, double b) {
        double r1072974 = atan2(1.0, 0.0);
        double r1072975 = a;
        double r1072976 = r1072974 / r1072975;
        double r1072977 = b;
        double r1072978 = r1072976 / r1072977;
        double r1072979 = 0.5;
        double r1072980 = r1072978 * r1072979;
        double r1072981 = r1072975 + r1072977;
        double r1072982 = r1072980 / r1072981;
        return r1072982;
}

Error

Bits error versus a

Bits error versus b

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 14.1

    \[\left(\frac{\pi}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)\]
  2. Simplified0.3

    \[\leadsto \color{blue}{\frac{\frac{\frac{\pi}{a} - \frac{\pi}{b}}{2 \cdot \left(b - a\right)}}{a + b}}\]
  3. Taylor expanded around 0 0.2

    \[\leadsto \frac{\color{blue}{\frac{1}{2} \cdot \frac{\pi}{a \cdot b}}}{a + b}\]
  4. Using strategy rm
  5. Applied associate-/r*0.2

    \[\leadsto \frac{\frac{1}{2} \cdot \color{blue}{\frac{\frac{\pi}{a}}{b}}}{a + b}\]
  6. Final simplification0.2

    \[\leadsto \frac{\frac{\frac{\pi}{a}}{b} \cdot \frac{1}{2}}{a + b}\]

Reproduce

herbie shell --seed 2019129 
(FPCore (a b)
  :name "NMSE Section 6.1 mentioned, B"
  (* (* (/ PI 2) (/ 1 (- (* b b) (* a a)))) (- (/ 1 a) (/ 1 b))))