\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{0.5 \cdot \pi}{a \cdot b}}{a + b}double f(double a, double b) {
double r2757945 = atan2(1.0, 0.0);
double r2757946 = 2.0;
double r2757947 = r2757945 / r2757946;
double r2757948 = 1.0;
double r2757949 = b;
double r2757950 = r2757949 * r2757949;
double r2757951 = a;
double r2757952 = r2757951 * r2757951;
double r2757953 = r2757950 - r2757952;
double r2757954 = r2757948 / r2757953;
double r2757955 = r2757947 * r2757954;
double r2757956 = r2757948 / r2757951;
double r2757957 = r2757948 / r2757949;
double r2757958 = r2757956 - r2757957;
double r2757959 = r2757955 * r2757958;
return r2757959;
}
double f(double a, double b) {
double r2757960 = 0.5;
double r2757961 = atan2(1.0, 0.0);
double r2757962 = r2757960 * r2757961;
double r2757963 = a;
double r2757964 = b;
double r2757965 = r2757963 * r2757964;
double r2757966 = r2757962 / r2757965;
double r2757967 = r2757963 + r2757964;
double r2757968 = r2757966 / r2757967;
return r2757968;
}



Bits error versus a



Bits error versus b
Results
Initial program 14.1
rmApplied difference-of-squares9.3
Applied *-un-lft-identity9.3
Applied times-frac8.8
Applied associate-*r*8.8
Simplified8.7
rmApplied associate-*l/8.7
Applied associate-*l/0.3
Taylor expanded around 0 0.2
rmApplied associate-*r/0.2
Final simplification0.2
herbie shell --seed 2019170 +o rules:numerics
(FPCore (a b)
:name "NMSE Section 6.1 mentioned, B"
(* (* (/ PI 2.0) (/ 1.0 (- (* b b) (* a a)))) (- (/ 1.0 a) (/ 1.0 b))))