\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{\frac{\pi}{a} - \frac{\pi}{b}}{a + b}}{2 \cdot \left(b - a\right)}double f(double a, double b) {
double r1404323 = atan2(1.0, 0.0);
double r1404324 = 2.0;
double r1404325 = r1404323 / r1404324;
double r1404326 = 1.0;
double r1404327 = b;
double r1404328 = r1404327 * r1404327;
double r1404329 = a;
double r1404330 = r1404329 * r1404329;
double r1404331 = r1404328 - r1404330;
double r1404332 = r1404326 / r1404331;
double r1404333 = r1404325 * r1404332;
double r1404334 = r1404326 / r1404329;
double r1404335 = r1404326 / r1404327;
double r1404336 = r1404334 - r1404335;
double r1404337 = r1404333 * r1404336;
return r1404337;
}
double f(double a, double b) {
double r1404338 = atan2(1.0, 0.0);
double r1404339 = a;
double r1404340 = r1404338 / r1404339;
double r1404341 = b;
double r1404342 = r1404338 / r1404341;
double r1404343 = r1404340 - r1404342;
double r1404344 = r1404339 + r1404341;
double r1404345 = r1404343 / r1404344;
double r1404346 = 2.0;
double r1404347 = r1404341 - r1404339;
double r1404348 = r1404346 * r1404347;
double r1404349 = r1404345 / r1404348;
return r1404349;
}



Bits error versus a



Bits error versus b
Results
Initial program 14.0
Simplified0.3
rmApplied *-un-lft-identity0.3
Applied associate-/r*0.3
Simplified0.3
Final simplification0.3
herbie shell --seed 2019138
(FPCore (a b)
:name "NMSE Section 6.1 mentioned, B"
(* (* (/ PI 2) (/ 1 (- (* b b) (* a a)))) (- (/ 1 a) (/ 1 b))))