\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(\frac{\frac{\pi}{2}}{b + a} \cdot \left(1 \cdot \left(b - a\right)\right)\right) \cdot 1}{a \cdot b}}{b - a}double f(double a, double b) {
double r45260 = atan2(1.0, 0.0);
double r45261 = 2.0;
double r45262 = r45260 / r45261;
double r45263 = 1.0;
double r45264 = b;
double r45265 = r45264 * r45264;
double r45266 = a;
double r45267 = r45266 * r45266;
double r45268 = r45265 - r45267;
double r45269 = r45263 / r45268;
double r45270 = r45262 * r45269;
double r45271 = r45263 / r45266;
double r45272 = r45263 / r45264;
double r45273 = r45271 - r45272;
double r45274 = r45270 * r45273;
return r45274;
}
double f(double a, double b) {
double r45275 = atan2(1.0, 0.0);
double r45276 = 2.0;
double r45277 = r45275 / r45276;
double r45278 = b;
double r45279 = a;
double r45280 = r45278 + r45279;
double r45281 = r45277 / r45280;
double r45282 = 1.0;
double r45283 = r45278 - r45279;
double r45284 = r45282 * r45283;
double r45285 = r45281 * r45284;
double r45286 = r45285 * r45282;
double r45287 = r45279 * r45278;
double r45288 = r45286 / r45287;
double r45289 = r45288 / r45283;
return r45289;
}



Bits error versus a



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