\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{1}{a} - \frac{1}{b}}{b - a} \cdot \frac{\frac{\pi}{2}}{b + a}double f(double a, double b) {
double r1414581 = atan2(1.0, 0.0);
double r1414582 = 2.0;
double r1414583 = r1414581 / r1414582;
double r1414584 = 1.0;
double r1414585 = b;
double r1414586 = r1414585 * r1414585;
double r1414587 = a;
double r1414588 = r1414587 * r1414587;
double r1414589 = r1414586 - r1414588;
double r1414590 = r1414584 / r1414589;
double r1414591 = r1414583 * r1414590;
double r1414592 = r1414584 / r1414587;
double r1414593 = r1414584 / r1414585;
double r1414594 = r1414592 - r1414593;
double r1414595 = r1414591 * r1414594;
return r1414595;
}
double f(double a, double b) {
double r1414596 = 1.0;
double r1414597 = a;
double r1414598 = r1414596 / r1414597;
double r1414599 = b;
double r1414600 = r1414596 / r1414599;
double r1414601 = r1414598 - r1414600;
double r1414602 = r1414599 - r1414597;
double r1414603 = r1414601 / r1414602;
double r1414604 = atan2(1.0, 0.0);
double r1414605 = 2.0;
double r1414606 = r1414604 / r1414605;
double r1414607 = r1414599 + r1414597;
double r1414608 = r1414606 / r1414607;
double r1414609 = r1414603 * r1414608;
return r1414609;
}



Bits error versus a



Bits error versus b
Results
Initial program 14.4
Simplified14.3
rmApplied difference-of-squares9.3
Applied times-frac0.3
Final simplification0.3
herbie shell --seed 2019128 +o rules:numerics
(FPCore (a b)
:name "NMSE Section 6.1 mentioned, B"
(* (* (/ PI 2) (/ 1 (- (* b b) (* a a)))) (- (/ 1 a) (/ 1 b))))