\left(\frac{\pi}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)\frac{\left(\frac{\frac{\pi}{2}}{b + a} \cdot 1\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)}{b - a}double f(double a, double b) {
double r52663 = atan2(1.0, 0.0);
double r52664 = 2.0;
double r52665 = r52663 / r52664;
double r52666 = 1.0;
double r52667 = b;
double r52668 = r52667 * r52667;
double r52669 = a;
double r52670 = r52669 * r52669;
double r52671 = r52668 - r52670;
double r52672 = r52666 / r52671;
double r52673 = r52665 * r52672;
double r52674 = r52666 / r52669;
double r52675 = r52666 / r52667;
double r52676 = r52674 - r52675;
double r52677 = r52673 * r52676;
return r52677;
}
double f(double a, double b) {
double r52678 = atan2(1.0, 0.0);
double r52679 = 2.0;
double r52680 = r52678 / r52679;
double r52681 = b;
double r52682 = a;
double r52683 = r52681 + r52682;
double r52684 = r52680 / r52683;
double r52685 = 1.0;
double r52686 = r52684 * r52685;
double r52687 = r52685 / r52682;
double r52688 = r52685 / r52681;
double r52689 = r52687 - r52688;
double r52690 = r52686 * r52689;
double r52691 = r52681 - r52682;
double r52692 = r52690 / r52691;
return r52692;
}



Bits error versus a



Bits error versus b
Results
Initial program 14.0
rmApplied difference-of-squares9.3
Applied *-un-lft-identity9.3
Applied times-frac8.9
Applied associate-*r*8.9
Simplified8.8
rmApplied associate-*r/8.8
Applied associate-*l/0.3
Final simplification0.3
herbie shell --seed 2020045
(FPCore (a b)
:name "NMSE Section 6.1 mentioned, B"
:precision binary64
(* (* (/ PI 2) (/ 1 (- (* b b) (* a a)))) (- (/ 1 a) (/ 1 b))))