\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}}{b + a} \cdot \left(\frac{1}{b - a} \cdot \left(\frac{1}{a} - \frac{1}{b}\right)\right)double f(double a, double b) {
double r77243 = atan2(1.0, 0.0);
double r77244 = 2.0;
double r77245 = r77243 / r77244;
double r77246 = 1.0;
double r77247 = b;
double r77248 = r77247 * r77247;
double r77249 = a;
double r77250 = r77249 * r77249;
double r77251 = r77248 - r77250;
double r77252 = r77246 / r77251;
double r77253 = r77245 * r77252;
double r77254 = r77246 / r77249;
double r77255 = r77246 / r77247;
double r77256 = r77254 - r77255;
double r77257 = r77253 * r77256;
return r77257;
}
double f(double a, double b) {
double r77258 = atan2(1.0, 0.0);
double r77259 = 2.0;
double r77260 = r77258 / r77259;
double r77261 = b;
double r77262 = a;
double r77263 = r77261 + r77262;
double r77264 = r77260 / r77263;
double r77265 = 1.0;
double r77266 = r77261 - r77262;
double r77267 = r77265 / r77266;
double r77268 = r77265 / r77262;
double r77269 = r77265 / r77261;
double r77270 = r77268 - r77269;
double r77271 = r77267 * r77270;
double r77272 = r77264 * r77271;
return r77272;
}



Bits error versus a



Bits error versus b
Results
Initial program 14.7
rmApplied difference-of-squares9.6
Applied *-un-lft-identity9.6
Applied times-frac9.1
Applied associate-*r*9.1
Simplified9.1
rmApplied associate-*l*0.3
Final simplification0.3
herbie shell --seed 2020033 +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))))