\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}{2} \cdot \frac{\pi}{a \cdot b}}{b + a}double f(double a, double b) {
double r38778 = atan2(1.0, 0.0);
double r38779 = 2.0;
double r38780 = r38778 / r38779;
double r38781 = 1.0;
double r38782 = b;
double r38783 = r38782 * r38782;
double r38784 = a;
double r38785 = r38784 * r38784;
double r38786 = r38783 - r38785;
double r38787 = r38781 / r38786;
double r38788 = r38780 * r38787;
double r38789 = r38781 / r38784;
double r38790 = r38781 / r38782;
double r38791 = r38789 - r38790;
double r38792 = r38788 * r38791;
return r38792;
}
double f(double a, double b) {
double r38793 = 1.0;
double r38794 = 2.0;
double r38795 = r38793 / r38794;
double r38796 = atan2(1.0, 0.0);
double r38797 = a;
double r38798 = b;
double r38799 = r38797 * r38798;
double r38800 = r38796 / r38799;
double r38801 = r38795 * r38800;
double r38802 = r38798 + r38797;
double r38803 = r38801 / r38802;
return r38803;
}



Bits error versus a



Bits error versus b
Results
Initial program 14.5
rmApplied difference-of-squares9.6
Applied *-un-lft-identity9.6
Applied times-frac9.2
Applied associate-*r*9.2
Simplified9.1
rmApplied associate-*l/9.1
Applied associate-*l/0.3
Taylor expanded around 0 0.2
Simplified0.2
Final simplification0.2
herbie shell --seed 2019304
(FPCore (a b)
:name "NMSE Section 6.1 mentioned, B"
:precision binary64
(* (* (/ PI 2) (/ 1 (- (* b b) (* a a)))) (- (/ 1 a) (/ 1 b))))