\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{\pi}{2} \cdot 1}{b + a} \cdot \frac{\frac{1}{a} - \frac{1}{b}}{b - a}double f(double a, double b) {
double r51551 = atan2(1.0, 0.0);
double r51552 = 2.0;
double r51553 = r51551 / r51552;
double r51554 = 1.0;
double r51555 = b;
double r51556 = r51555 * r51555;
double r51557 = a;
double r51558 = r51557 * r51557;
double r51559 = r51556 - r51558;
double r51560 = r51554 / r51559;
double r51561 = r51553 * r51560;
double r51562 = r51554 / r51557;
double r51563 = r51554 / r51555;
double r51564 = r51562 - r51563;
double r51565 = r51561 * r51564;
return r51565;
}
double f(double a, double b) {
double r51566 = atan2(1.0, 0.0);
double r51567 = 2.0;
double r51568 = r51566 / r51567;
double r51569 = 1.0;
double r51570 = r51568 * r51569;
double r51571 = b;
double r51572 = a;
double r51573 = r51571 + r51572;
double r51574 = r51570 / r51573;
double r51575 = r51569 / r51572;
double r51576 = r51569 / r51571;
double r51577 = r51575 - r51576;
double r51578 = r51571 - r51572;
double r51579 = r51577 / r51578;
double r51580 = r51574 * r51579;
return r51580;
}



Bits error versus a



Bits error versus b
Results
Initial program 14.2
rmApplied difference-of-squares9.9
Applied associate-/r*9.3
rmApplied associate-*r/9.3
Applied associate-*l/0.3
rmApplied *-un-lft-identity0.3
Applied times-frac0.3
Simplified0.3
Final simplification0.3
herbie shell --seed 2019351 +o rules:numerics
(FPCore (a b)
:name "NMSE Section 6.1 mentioned, B"
:precision binary64
(* (* (/ PI 2) (/ 1 (- (* b b) (* a a)))) (- (/ 1 a) (/ 1 b))))