\left(\frac{\pi}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)\frac{1 \cdot \frac{\frac{\pi}{a}}{b}}{2 \cdot \left(b + a\right)}double f(double a, double b) {
double r47419 = atan2(1.0, 0.0);
double r47420 = 2.0;
double r47421 = r47419 / r47420;
double r47422 = 1.0;
double r47423 = b;
double r47424 = r47423 * r47423;
double r47425 = a;
double r47426 = r47425 * r47425;
double r47427 = r47424 - r47426;
double r47428 = r47422 / r47427;
double r47429 = r47421 * r47428;
double r47430 = r47422 / r47425;
double r47431 = r47422 / r47423;
double r47432 = r47430 - r47431;
double r47433 = r47429 * r47432;
return r47433;
}
double f(double a, double b) {
double r47434 = 1.0;
double r47435 = atan2(1.0, 0.0);
double r47436 = a;
double r47437 = r47435 / r47436;
double r47438 = b;
double r47439 = r47437 / r47438;
double r47440 = r47434 * r47439;
double r47441 = 2.0;
double r47442 = r47438 + r47436;
double r47443 = r47441 * r47442;
double r47444 = r47440 / r47443;
return r47444;
}



Bits error versus a



Bits error versus b
Results
Initial program 14.7
rmApplied difference-of-squares9.8
Applied add-cube-cbrt9.8
Applied times-frac9.3
Applied associate-*r*9.3
rmApplied frac-times9.2
Applied associate-*l/9.2
Applied associate-*l/0.3
Taylor expanded around 0 0.2
rmApplied associate-/r*0.3
Final simplification0.3
herbie shell --seed 2020060
(FPCore (a b)
:name "NMSE Section 6.1 mentioned, B"
:precision binary64
(* (* (/ PI 2) (/ 1 (- (* b b) (* a a)))) (- (/ 1 a) (/ 1 b))))