\left(\frac{\pi}{2} \cdot \frac{1}{b \cdot b - a \cdot a}\right) \cdot \left(\frac{1}{a} - \frac{1}{b}\right)\frac{\pi}{2} \cdot \frac{\frac{1}{a \cdot b} \cdot 1}{b + a}double f(double a, double b) {
double r46057 = atan2(1.0, 0.0);
double r46058 = 2.0;
double r46059 = r46057 / r46058;
double r46060 = 1.0;
double r46061 = b;
double r46062 = r46061 * r46061;
double r46063 = a;
double r46064 = r46063 * r46063;
double r46065 = r46062 - r46064;
double r46066 = r46060 / r46065;
double r46067 = r46059 * r46066;
double r46068 = r46060 / r46063;
double r46069 = r46060 / r46061;
double r46070 = r46068 - r46069;
double r46071 = r46067 * r46070;
return r46071;
}
double f(double a, double b) {
double r46072 = atan2(1.0, 0.0);
double r46073 = 2.0;
double r46074 = r46072 / r46073;
double r46075 = 1.0;
double r46076 = a;
double r46077 = b;
double r46078 = r46076 * r46077;
double r46079 = r46075 / r46078;
double r46080 = r46079 * r46075;
double r46081 = r46077 + r46076;
double r46082 = r46080 / r46081;
double r46083 = r46074 * r46082;
return r46083;
}



Bits error versus a



Bits error versus b
Results
Initial program 14.3
rmApplied associate-*l*14.3
Simplified0.3
Taylor expanded around 0 0.3
rmApplied associate-*r/0.3
Final simplification0.3
herbie shell --seed 2019323
(FPCore (a b)
:name "NMSE Section 6.1 mentioned, B"
:precision binary64
(* (* (/ PI 2) (/ 1 (- (* b b) (* a a)))) (- (/ 1 a) (/ 1 b))))