\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{\left(\left(1 \cdot \left(b - a\right)\right) \cdot \pi\right) \cdot \frac{1}{b + a}}{2 \cdot \left(a \cdot b\right)}}{b - a}double f(double a, double b) {
double r39525 = atan2(1.0, 0.0);
double r39526 = 2.0;
double r39527 = r39525 / r39526;
double r39528 = 1.0;
double r39529 = b;
double r39530 = r39529 * r39529;
double r39531 = a;
double r39532 = r39531 * r39531;
double r39533 = r39530 - r39532;
double r39534 = r39528 / r39533;
double r39535 = r39527 * r39534;
double r39536 = r39528 / r39531;
double r39537 = r39528 / r39529;
double r39538 = r39536 - r39537;
double r39539 = r39535 * r39538;
return r39539;
}
double f(double a, double b) {
double r39540 = 1.0;
double r39541 = b;
double r39542 = a;
double r39543 = r39541 - r39542;
double r39544 = r39540 * r39543;
double r39545 = atan2(1.0, 0.0);
double r39546 = r39544 * r39545;
double r39547 = r39541 + r39542;
double r39548 = r39540 / r39547;
double r39549 = r39546 * r39548;
double r39550 = 2.0;
double r39551 = r39542 * r39541;
double r39552 = r39550 * r39551;
double r39553 = r39549 / r39552;
double r39554 = r39553 / r39543;
return r39554;
}



Bits error versus a



Bits error versus b
Results
Initial program 14.6
rmApplied difference-of-squares9.7
Applied associate-/r*9.2
rmApplied associate-*r/9.2
Applied associate-*l/0.3
rmApplied frac-sub0.3
Applied associate-*l/0.3
Applied frac-times0.3
Simplified0.6
Final simplification0.6
herbie shell --seed 2020039
(FPCore (a b)
:name "NMSE Section 6.1 mentioned, B"
:precision binary64
(* (* (/ PI 2) (/ 1 (- (* b b) (* a a)))) (- (/ 1 a) (/ 1 b))))