\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{1}{a} - \frac{1}{b}\right) \cdot \frac{1 \cdot \frac{\pi}{2}}{b - a}}{b + a}double f(double a, double b) {
double r51517 = atan2(1.0, 0.0);
double r51518 = 2.0;
double r51519 = r51517 / r51518;
double r51520 = 1.0;
double r51521 = b;
double r51522 = r51521 * r51521;
double r51523 = a;
double r51524 = r51523 * r51523;
double r51525 = r51522 - r51524;
double r51526 = r51520 / r51525;
double r51527 = r51519 * r51526;
double r51528 = r51520 / r51523;
double r51529 = r51520 / r51521;
double r51530 = r51528 - r51529;
double r51531 = r51527 * r51530;
return r51531;
}
double f(double a, double b) {
double r51532 = 1.0;
double r51533 = a;
double r51534 = r51532 / r51533;
double r51535 = b;
double r51536 = r51532 / r51535;
double r51537 = r51534 - r51536;
double r51538 = atan2(1.0, 0.0);
double r51539 = 2.0;
double r51540 = r51538 / r51539;
double r51541 = r51532 * r51540;
double r51542 = r51535 - r51533;
double r51543 = r51541 / r51542;
double r51544 = r51537 * r51543;
double r51545 = r51535 + r51533;
double r51546 = r51544 / r51545;
return r51546;
}



Bits error versus a



Bits error versus b
Results
Initial program 14.1
rmApplied difference-of-squares9.5
Applied add-sqr-sqrt9.5
Applied times-frac9.0
rmApplied associate-*l/9.0
Applied associate-*r/9.0
Applied associate-*l/0.3
Simplified0.3
rmApplied associate-*l/0.3
Final simplification0.3
herbie shell --seed 2020035
(FPCore (a b)
:name "NMSE Section 6.1 mentioned, B"
:precision binary64
(* (* (/ PI 2) (/ 1 (- (* b b) (* a a)))) (- (/ 1 a) (/ 1 b))))