\frac{\cos th}{\sqrt{2}} \cdot \left(a1 \cdot a1\right) + \frac{\cos th}{\sqrt{2}} \cdot \left(a2 \cdot a2\right)\frac{\sqrt{a1 \cdot a1 + {a2}^{2}}}{\sqrt{2}} \cdot \left(\cos th \cdot \sqrt{a1 \cdot a1 + {a2}^{2}}\right)double f(double a1, double a2, double th) {
double r67042 = th;
double r67043 = cos(r67042);
double r67044 = 2.0;
double r67045 = sqrt(r67044);
double r67046 = r67043 / r67045;
double r67047 = a1;
double r67048 = r67047 * r67047;
double r67049 = r67046 * r67048;
double r67050 = a2;
double r67051 = r67050 * r67050;
double r67052 = r67046 * r67051;
double r67053 = r67049 + r67052;
return r67053;
}
double f(double a1, double a2, double th) {
double r67054 = a1;
double r67055 = r67054 * r67054;
double r67056 = a2;
double r67057 = 2.0;
double r67058 = pow(r67056, r67057);
double r67059 = r67055 + r67058;
double r67060 = sqrt(r67059);
double r67061 = 2.0;
double r67062 = sqrt(r67061);
double r67063 = r67060 / r67062;
double r67064 = th;
double r67065 = cos(r67064);
double r67066 = r67065 * r67060;
double r67067 = r67063 * r67066;
return r67067;
}



Bits error versus a1



Bits error versus a2



Bits error versus th
Results
Initial program 0.5
Simplified0.5
rmApplied div-inv0.5
Applied add-sqr-sqrt0.5
Applied times-frac0.5
Simplified0.5
Simplified0.5
Final simplification0.5
herbie shell --seed 2019196
(FPCore (a1 a2 th)
:name "Migdal et al, Equation (64)"
(+ (* (/ (cos th) (sqrt 2.0)) (* a1 a1)) (* (/ (cos th) (sqrt 2.0)) (* a2 a2))))