double f(double a, double b) {
double r53670390 = atan2(1.0, 0.0);
double r53670391 = 2.0;
double r53670392 = r53670390 / r53670391;
double r53670393 = 1.0;
double r53670394 = b;
double r53670395 = r53670394 * r53670394;
double r53670396 = a;
double r53670397 = r53670396 * r53670396;
double r53670398 = r53670395 - r53670397;
double r53670399 = r53670393 / r53670398;
double r53670400 = r53670392 * r53670399;
double r53670401 = r53670393 / r53670396;
double r53670402 = r53670393 / r53670394;
double r53670403 = r53670401 - r53670402;
double r53670404 = r53670400 * r53670403;
return r53670404;
}
double f(double a, double b) {
double r53670405 = 1.0;
double r53670406 = b;
double r53670407 = a;
double r53670408 = r53670406 - r53670407;
double r53670409 = r53670405 / r53670408;
double r53670410 = atan2(1.0, 0.0);
double r53670411 = r53670409 * r53670410;
double r53670412 = r53670406 * r53670407;
double r53670413 = r53670411 / r53670412;
double r53670414 = 0.5;
double r53670415 = r53670408 * r53670414;
double r53670416 = r53670407 + r53670406;
double r53670417 = r53670415 / r53670416;
double r53670418 = r53670413 * r53670417;
return r53670418;
}
\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{1}{b - a} \cdot \pi}{b \cdot a} \cdot \frac{\left(b - a\right) \cdot \frac{1}{2}}{a + b}


Bits error versus a



Bits error versus b
Initial program 14.0
Simplified14.0
rmApplied frac-sub14.0
Applied associate-/r/14.0
Applied difference-of-squares9.4
Applied *-un-lft-identity9.4
Applied times-frac8.9
Applied times-frac0.3
Simplified0.3
rmApplied div-inv0.3
Final simplification0.3
herbie shell --seed 2019101
(FPCore (a b)
:name "NMSE Section 6.1 mentioned, B"
(* (* (/ PI 2) (/ 1 (- (* b b) (* a a)))) (- (/ 1 a) (/ 1 b))))